Opens in a new windowOpens an external websiteOpens an external website in a new window
This website utilizes technologies such as cookies to enable essential site functionality, as well as for analytics, personalization, and targeted advertising. To learn more, view the following link: Privacy Notice
On the Articulate user days in Utrecht (2015), we held a session about exporting Articulate Storyline variables to Google Drive (Spreadsheet). This export is achieved via JavaScript (jQuery).
Use the button Source to download the Storyline project. If you want the same lay-out as the example above, please install the following fonts (see source file):
flaticons-stroke.ttf
fontawesome-webfont.ttf
Why do you want to make an export to Google Drive?
No LMS (or database) available;
Store more information than just the test results. You can export all Storyline variables to Google Drive.
Why using Javascript?
Besides using Javascript it's also possible to embed a Google form as WEB object. This is a lot easier than using Javascript.
We have chosen for Javascript because we would like the ability to change the appearance of the form. In addition, we want to collect data across multiple slides and then store them in Google Drive.
UPDATE 2017-06-06:
There is also an article available for importing records of a Google Spreadsheet into Storyline:
UPDATE 18-10-2018: PROBLEMS WITH NEW SPREADSHEET, TRY TO USE A TEMPLATE
Google changed somthing within the mechanism of storing variables into a Google Spreadsheet. Creating a new spreadsheet can give you problems for storing variables. Before you try the steps below, please use a template:
The export consists of several steps. Some steps take place on the side of Google. For these steps you will need a Google account. The remaining steps take place in Articulate Storyline.
Below you'll find the steps to create the export to Google Drive:
Click on the Plus-sign (+) to create a new spreadsheet.
3. Rename the sheet to DATA
Give the spreadsheet a title and change the name of the sheet to DATA.
4. Add extra columns
Add extra columns you would like to use. Probably these columns will have the same name as the variables in Articulate Storyline. As example: the column names name, email and message like in the source project.
You can add the column date in the spreadsheet, if you would like to save the date when the form is sent to Google.
The column names needs to be identical to the variable names in Articulate Storyline. The column names are case sensitive.
5. Copy the ID of your form
Find out your spreadsheet ‘key’ by looking in the address bar, the key is the long series of letters and numbers after /d/ and before /edit: Like:
The KEY will be = 1AzBuim89ma_ght1-O14cksVzXrQL5Vh4XnRqY9OM_gc
Save this KEY in a Notepad file to keep safe, or other application, you will need this ID in step 8.
6. Open the Script Editor
Open the script editor Tools, Script Editor.
7. Paste custom script
If you are using the template, then you can skip this step. The code is already in the template available. If not, paste the script below, which is needed for importing the Storyline variables into this spreadsheet:
// 1. Enter sheet name where data is to be written below var SHEET_NAME = "DATA";
// 2. Enter the KEY of your form var KEY = "KEY"
// 3. Run > setup
// 4. Publish > Deploy as web app // - enter Project Version name and click 'Save New Version' // - set security level and enable service (most likely execute as 'me' and access 'anyone, even anonymously)
// 5. Copy the 'Current web app URL' and post this in your form/script action
// 6. Insert column names on your destination sheet matching the parameter names of the data you are passing in (exactly matching case)
var SCRIPT_PROP = PropertiesService.getScriptProperties(); // new property service
// If you don't want to expose either GET or POST methods you can comment out the appropriate function
function doGet(e){ return handleResponse(e); } function doPost(e){ return handleResponse(e); }
function handleResponse(e) { // shortly after my original solution Google announced the LockService[1] // this prevents concurrent access overwritting data // [1] http://googleappsdeveloper.blogspot.co.uk/2011/10/concurrency-and-google-apps-script.html // we want a public lock, one that locks for all invocations var lock = LockService.getPublicLock(); lock.waitLock(30000); // wait 30 seconds before conceding defeat.
try { // next set where we write the data - you could write to multiple/alternate destinations var doc = SpreadsheetApp.openById(SCRIPT_PROP.getProperty(KEY)); var sheet = doc.getSheetByName(SHEET_NAME);
// we'll assume header is in row 1 but you can override with header_row in GET/POST data var headRow = e.parameter.header_row || 1; var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]; var nextRow = sheet.getLastRow()+1; // get next row var row = []; // loop through the header columns for (i in headers){ if (headers[i] == "Timestamp"){ // special case if you include a 'Timestamp' column row.push(new Date()); } else { // else use header name to get data row.push(e.parameter[headers[i]]); } } // more efficient to set values as [][] array than individually sheet.getRange(nextRow, 1, 1, row.length).setValues([row]); // return json success results return ContentService .createTextOutput(JSON.stringify({"result":"success", "row": nextRow})) .setMimeType(ContentService.MimeType.JSON); } catch(e){ // if error return this return ContentService .createTextOutput(JSON.stringify({"result":"error", "error": e})) .setMimeType(ContentService.MimeType.JSON); } finally { //release lock lock.releaseLock(); } }
function setup() { var doc = SpreadsheetApp.getActiveSpreadsheet(); SCRIPT_PROP.setProperty(KEY, doc.getId()); }
8. Paste your key
There is one place in the script where it says var KEY = "KEY". Copy and paste your key between the "".
9. Run the script
Run the script via Run, Run function, setup. The first time you run the script it will ask for permission to run. You will need to grant it. If you run the script for a second time you won't get any popup. This is an indication it has run successfully.
10. Deploy a web app
Go to Publish, Deployaswebapp. Enter a project name (optional) and set security level. Choose for Me and access Anyone, even anonymously. Click on the button Deploy to create the web app.
11. Copy the Current web app URL
Copy the 'Current web app URL' and paste it in a Notepad file to keep safe.
In Articulate, add a trigger to run javascript (Execute Javascript) and use the code below.
This code will add the jQuery library to this project, so you won't have to change the HTML files after publishing the project. The jQuery library is needed for exporting the information to Google Drive.
var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.src = '//code.jquery.com/jquery-1.11.0.min.js'; script.type = 'text/javascript'; head.appendChild(script)
13. Store information
Add another trigger to run Javascript (Execute Javascript). You can use the code below.
Replace the value Current web app URL for the webapp url you've saved in step 11.
Below the webapp URL, you can place the column names of the spreadsheet and the Storyline variables. Please be aware of the comma if you add multiple variables.
var player = GetPlayer();
//PLACE YOUR WEB APP URL WEB_APP_URL = "Current web app URL";
// STORE ARTICULATE STORYLINE VARIABLES // "Columnname_Google_Spreadsheet" : player.GetVar("Name_Storyline_Variable") // ATTENTION: Use a comma if you use multiple Storyline variables storyline = { "date" : new Date().toJSON().slice(0,10), //STORE DATE "name" : player.GetVar("name"), "email" : player.GetVar("email"), "message" : player.GetVar("message") }
Don't delete the row below, if you would like to save the date when the form is sent:
"date" : new Date().toJSON().slice(0,10), //STORE DATE
14. Export code to Google Drive
Latest Javascript code. Add another trigger to run Javascript (Execute Javascript). You can use the code below. This trigger will send the information from step 13 to Google Drive.
//DELAY SO JQUERY LIBRARY IS LOADED setTimeout(function (){
//Export to Google $.ajax({ url: WEB_APP_URL, type: "POST", data : storyline, success: function(data) { console.log(data); }, error: function(err) { console.log('Error:', err); } }); return false; }, 1000);
15. Publish to SCORM or WEB format
Publish your articulate project to WEB or SCORM format. You need to host it on a WEB server or somewhere like SCORM cloud (or a LMS).
This export will work in Flash and HTML5 output. You can't use the Articulate Mobile Player, because it won't support Javascript code.
Out of all the tutorials on this, this is the only one I've actually managed to make work. Thank you so much for the templates. I flubbed it the first few times by adding the triggers myself on the first slide of the Articulate template provided rather than changing the Web App URL on the last slide where you already had everything there. Now that I see what's going on, I can add it to any of my projects. Thanks again!
Glad that this was able to assist you here Lynn. I've flubbed on courses/techniques as well and it's all a part of the learning I think. I do appreciate the feedback and glad to hear that you are well on your way.
"}},"componentScriptGroups({\"componentId\":\"custom.widget.GoogleTag\"})":{"__typename":"ComponentScriptGroups","scriptGroups":{"__typename":"ComponentScriptGroupsDefinition","afterInteractive":{"__typename":"PageScriptGroupDefinition","group":"AFTER_INTERACTIVE","scriptIds":[]},"lazyOnLoad":{"__typename":"PageScriptGroupDefinition","group":"LAZY_ON_LOAD","scriptIds":[]}},"componentScripts":[]},"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/community/NavbarDropdownToggle\"]})":[{"__ref":"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/EscalatedMessageBanner\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/EscalatedMessageBanner-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/users/UserLink\"]})":[{"__ref":"CachedAsset:text:en_US-components/users/UserLink-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserRank\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserRank-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageTime\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageTime-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSolvedBadge\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSolvedBadge-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageSubject\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageSubject-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageBody\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageBody-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageCustomFields\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageCustomFields-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageReplyButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageReplyButton-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/AcceptedSolutionButton\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/AcceptedSolutionButton-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/Pager/PagerLoadMorePreviousNextLinkable\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMorePreviousNextLinkable-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/messages/MessageView/MessageViewInline\"]})":[{"__ref":"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/common/Pager/PagerLoadMore\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1744215893872"}],"message({\"id\":\"message:899271\"})":{"__ref":"ForumReplyMessage:message:899271"},"message({\"id\":\"message:899266\"})":{"__ref":"ForumReplyMessage:message:899266"},"message({\"id\":\"message:899267\"})":{"__ref":"ForumReplyMessage:message:899267"},"message({\"id\":\"message:899268\"})":{"__ref":"ForumReplyMessage:message:899268"},"message({\"id\":\"message:899269\"})":{"__ref":"ForumReplyMessage:message:899269"},"message({\"id\":\"message:899270\"})":{"__ref":"ForumReplyMessage:message:899270"},"message({\"id\":\"message:899262\"})":{"__ref":"ForumReplyMessage:message:899262"},"message({\"id\":\"message:899263\"})":{"__ref":"ForumReplyMessage:message:899263"},"message({\"id\":\"message:899264\"})":{"__ref":"ForumReplyMessage:message:899264"},"message({\"id\":\"message:899265\"})":{"__ref":"ForumReplyMessage:message:899265"},"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/users/UserAvatar\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/ranks/UserRankLabel\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"shared/client/components/nodes/NodeIcon\"]})":[{"__ref":"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1744215893872"}],"cachedText({\"lastModified\":\"1744215893872\",\"locale\":\"en-US\",\"namespaces\":[\"components/tags/TagView/TagViewChip\"]})":[{"__ref":"CachedAsset:text:en_US-components/tags/TagView/TagViewChip-1744215893872"}]},"CachedAsset:pages-1742809458542":{"__typename":"CachedAsset","id":"pages-1742809458542","value":[{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"BlogViewAllPostsPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId/all-posts/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CasePortalPage","type":"CASE_PORTAL","urlPath":"/caseportal","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CreateGroupHubPage","type":"GROUP_HUB","urlPath":"/groups/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CaseViewPage","type":"CASE_DETAILS","urlPath":"/case/:caseId/:caseNumber","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"InboxPage","type":"COMMUNITY","urlPath":"/inbox","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"HelpFAQPage","type":"COMMUNITY","urlPath":"/help","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"IdeaMessagePage","type":"IDEA_POST","urlPath":"/idea/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"IdeaViewAllIdeasPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/all-ideas/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"LoginPage","type":"USER","urlPath":"/signin","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"BlogPostPage","type":"BLOG","urlPath":"/category/:categoryId/blogs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ThemeEditorPage","type":"COMMUNITY","urlPath":"/designer/themes","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TkbViewAllArticlesPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId/all-articles/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"OccasionEditPage","type":"EVENT","urlPath":"/event/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"OAuthAuthorizationAllowPage","type":"USER","urlPath":"/auth/authorize/allow","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"PageEditorPage","type":"COMMUNITY","urlPath":"/designer/pages","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"PostPage","type":"COMMUNITY","urlPath":"/category/:categoryId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForumBoardPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TkbBoardPage","type":"TKB","urlPath":"/category/:categoryId/kb/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"EventPostPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"UserBadgesPage","type":"COMMUNITY","urlPath":"/users/:login/:userId/badges","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"GroupHubMembershipAction","type":"GROUP_HUB","urlPath":"/membership/join/:nodeId/:membershipType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"MaintenancePage","type":"COMMUNITY","urlPath":"/maintenance","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"IdeaReplyPage","type":"IDEA_REPLY","urlPath":"/idea/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"UserSettingsPage","type":"USER","urlPath":"/mysettings/:userSettingsTab","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"GroupHubsPage","type":"GROUP_HUB","urlPath":"/groups","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForumPostPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"OccasionRsvpActionPage","type":"OCCASION","urlPath":"/event/:boardId/:messageSubject/:messageId/rsvp/:responseType","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"VerifyUserEmailPage","type":"USER","urlPath":"/verifyemail/:userId/:verifyEmailToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"AllOccasionsPage","type":"OCCASION","urlPath":"/category/:categoryId/events/:boardId/all-events/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"EventBoardPage","type":"EVENT","urlPath":"/category/:categoryId/events/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TkbReplyPage","type":"TKB_REPLY","urlPath":"/kb/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"IdeaBoardPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CommunityGuideLinesPage","type":"COMMUNITY","urlPath":"/communityguidelines","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CaseCreatePage","type":"SALESFORCE_CASE_CREATION","urlPath":"/caseportal/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TkbEditPage","type":"TKB","urlPath":"/kb/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForgotPasswordPage","type":"USER","urlPath":"/forgotpassword","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"IdeaEditPage","type":"IDEA","urlPath":"/idea/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TagPage","type":"COMMUNITY","urlPath":"/tag/:tagName","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"BlogBoardPage","type":"BLOG","urlPath":"/category/:categoryId/blog/:boardId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"OccasionMessagePage","type":"OCCASION_TOPIC","urlPath":"/event/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ManageContentPage","type":"COMMUNITY","urlPath":"/managecontent","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ClosedMembershipNodeNonMembersPage","type":"GROUP_HUB","urlPath":"/closedgroup/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CommunityPage","type":"COMMUNITY","urlPath":"/","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForumMessagePage","type":"FORUM_TOPIC","urlPath":"/discussions/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"IdeaPostPage","type":"IDEA","urlPath":"/category/:categoryId/ideas/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"BlogMessagePage","type":"BLOG_ARTICLE","urlPath":"/blog/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"RegistrationPage","type":"USER","urlPath":"/register","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"EditGroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForumEditPage","type":"FORUM","urlPath":"/discussions/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ResetPasswordPage","type":"USER","urlPath":"/resetpassword/:userId/:resetPasswordToken","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TkbMessagePage","type":"TKB_ARTICLE","urlPath":"/kb/:boardId/:messageSubject/:messageId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"BlogEditPage","type":"BLOG","urlPath":"/blog/:boardId/:messageSubject/:messageId/edit","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ManageUsersPage","type":"USER","urlPath":"/users/manage/:tab?/:manageUsersTab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForumReplyPage","type":"FORUM_REPLY","urlPath":"/discussions/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"PrivacyPolicyPage","type":"COMMUNITY","urlPath":"/privacypolicy","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"NotificationPage","type":"COMMUNITY","urlPath":"/notifications","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"UserPage","type":"USER","urlPath":"/users/:login/:userId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"HealthCheckPage","type":"COMMUNITY","urlPath":"/health","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"OccasionReplyPage","type":"OCCASION_REPLY","urlPath":"/event/:boardId/:messageSubject/:messageId/comments/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ManageMembersPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/manage/:tab?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"SearchResultsPage","type":"COMMUNITY","urlPath":"/search","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"BlogReplyPage","type":"BLOG_REPLY","urlPath":"/blog/:boardId/:messageSubject/:messageId/replies/:replyId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"GroupHubPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TermsOfServicePage","type":"COMMUNITY","urlPath":"/termsofservice","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"CategoryPage","type":"CATEGORY","urlPath":"/category/:categoryId","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"ForumViewAllTopicsPage","type":"FORUM","urlPath":"/category/:categoryId/discussions/:boardId/all-topics/(/:after|/:before)?","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"TkbPostPage","type":"TKB","urlPath":"/category/:categoryId/kbs/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"},{"lastUpdatedTime":1742809458542,"localOverride":null,"page":{"id":"GroupHubPostPage","type":"GROUP_HUB","urlPath":"/group/:groupHubId/:boardId/create","__typename":"PageDescriptor"},"__typename":"PageResource"}],"localOverride":false},"CachedAsset:text:en_US-components/context/AppContext/AppContextProvider-0":{"__typename":"CachedAsset","id":"text:en_US-components/context/AppContext/AppContextProvider-0","value":{"noCommunity":"Cannot find community","noUser":"Cannot find current user","noNode":"Cannot find node with id {nodeId}","noMessage":"Cannot find message with id {messageId}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Loading/LoadingDot-0":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Loading/LoadingDot-0","value":{"title":"Loading..."},"localOverride":false},"User:user:-1":{"__typename":"User","id":"user:-1","uid":-1,"login":"Deleted user","email":"","avatar":null,"rank":null,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":"ANONYMOUS","registrationTime":null,"confirmEmailStatus":false,"registrationAccessLevel":"VIEW","ssoRegistrationFields":[]},"ssoId":null,"profileSettings":{"__typename":"ProfileSettings","dateDisplayStyle":{"__typename":"InheritableStringSettingWithPossibleValues","key":"layout.friendly_dates_enabled","value":"true","localValue":"true","possibleValues":["true","false"]},"dateDisplayFormat":{"__typename":"InheritableStringSetting","key":"layout.format_pattern_date","value":"MM-dd-yyyy","localValue":"MM-dd-yyyy"},"language":{"__typename":"InheritableStringSettingWithPossibleValues","key":"profile.language","value":"en-US","localValue":null,"possibleValues":["en-US"]}},"deleted":false},"Theme:customTheme1":{"__typename":"Theme","id":"customTheme1"},"AssociatedImage:{\"url\":\"https://community.articulate.com/t5/s/rwgqn69235/images/bi0yNi0wc1g3ZFg?image-coordinates=0%2C0%2C400%2C400\"}":{"__typename":"AssociatedImage","url":"https://community.articulate.com/t5/s/rwgqn69235/images/bi0yNi0wc1g3ZFg?image-coordinates=0%2C0%2C400%2C400","mimeType":"image/png"},"Category:category:connect":{"__typename":"Category","id":"category:connect","entityType":"CATEGORY","displayId":"connect","nodeType":"category","depth":1,"title":"Connect","shortTitle":"Connect","parent":{"__ref":"Category:category:top"},"categoryPolicies":{"__typename":"CategoryPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}}},"Category:category:top":{"__typename":"Category","id":"category:top","displayId":"top","nodeType":"category","depth":0,"title":"Top","entityType":"CATEGORY","shortTitle":"Top"},"Forum:board:discuss":{"__typename":"Forum","id":"board:discuss","entityType":"FORUM","displayId":"discuss","nodeType":"board","depth":2,"conversationStyle":"FORUM","title":"Discuss Articulate Products","description":"Join conversations and ask questions about Articulate products.","avatar":{"__ref":"AssociatedImage:{\"url\":\"https://community.articulate.com/t5/s/rwgqn69235/images/bi0yNi0wc1g3ZFg?image-coordinates=0%2C0%2C400%2C400\"}"},"profileSettings":{"__typename":"ProfileSettings","language":null},"parent":{"__ref":"Category:category:connect"},"ancestors":{"__typename":"CoreNodeConnection","edges":[{"__typename":"CoreNodeEdge","node":{"__ref":"Community:community:rwgqn69235"}},{"__typename":"CoreNodeEdge","node":{"__ref":"Category:category:connect"}}]},"userContext":{"__typename":"NodeUserContext","canAddAttachments":true,"canUpdateNode":false,"canPostMessages":false,"isSubscribed":false},"boardPolicies":{"__typename":"BoardPolicies","canPublishArticleOnCreate":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","key":"error.lithium.policies.forums.policy_can_publish_on_create_workflow_action.accessDenied","args":[]}},"canReadNode":{"__typename":"PolicyResult","failureReason":null}},"shortTitle":"Discuss Articulate Products","repliesProperties":{"__typename":"RepliesProperties","sortOrder":"PUBLISH_TIME","repliesFormat":"threaded"},"forumPolicies":{"__typename":"ForumPolicies","canReadNode":{"__typename":"PolicyResult","failureReason":null}},"eventPath":"category:connect/community:rwgqn69235board:discuss/","tagProperties":{"__typename":"TagNodeProperties","tagsEnabled":{"__typename":"PolicyResult","failureReason":null}},"requireTags":true,"tagType":"PRESET_ONLY"},"Rank:rank:3":{"__typename":"Rank","id":"rank:3","position":2,"name":"Partner","color":"00AEEF","icon":null,"rankStyle":"FILLED"},"User:user:788409":{"__typename":"User","id":"user:788409","uid":788409,"login":"BastiaanTimmer","deleted":false,"avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0%7C15804a40-b37e-0131-2ee8-22000b2f96a1"},"rank":{"__ref":"Rank:rank:3"},"email":"","messagesCount":0,"biography":null,"topicsCount":0,"kudosReceivedCount":25,"kudosGivenCount":4,"kudosWeight":1,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2011-08-24T22:09:50.000-07:00","confirmEmailStatus":null},"followersCount":null,"solutionsCount":0,"entityType":"USER","eventPath":"community:rwgqn69235/user:788409"},"ForumTopicMessage:message:899261":{"__typename":"ForumTopicMessage","uid":899261,"subject":"Articulate Storyline: Export to Google Drive","id":"message:899261","revisionNum":1,"repliesCount":278,"author":{"__ref":"User:user:788409"},"depth":0,"hasGivenKudo":false,"board":{"__ref":"Forum:board:discuss"},"conversation":{"__ref":"Conversation:conversation:899261"},"readOnly":false,"editFrozen":false,"moderationData":{"__ref":"ModerationData:moderation_data:899261"},"body":"
On the Articulate user days in Utrecht (2015), we held a session about exporting Articulate Storyline variables to Google Drive (Spreadsheet). This export is achieved via JavaScript (jQuery).
\n
Use the button Source to download the Storyline project. If you want the same lay-out as the example above, please install the following fonts (see source file):
\n
\n
flaticons-stroke.ttf
\n
fontawesome-webfont.ttf
\n
\n
Why do you want to make an export to Google Drive?
\n
\n
No LMS (or database) available;
\n
Store more information than just the test results. You can export all Storyline variables to Google Drive.
\n
\n
Why using Javascript?
\n
Besides using Javascript it's also possible to embed a Google form as WEB object. This is a lot easier than using Javascript.
\n
We have chosen for Javascript because we would like the ability to change the appearance of the form. In addition, we want to collect data across multiple slides and then store them in Google Drive.
\n
UPDATE 2017-06-06:
\n
There is also an article available for importing records of a Google Spreadsheet into Storyline:
UPDATE 18-10-2018: PROBLEMS WITH NEW SPREADSHEET, TRY TO USE A TEMPLATE
\n
Google changed somthing within the mechanism of storing variables into a Google Spreadsheet. Creating a new spreadsheet can give you problems for storing variables. Before you try the steps below, please use a template:
The export consists of several steps. Some steps take place on the side of Google. For these steps you will need a Google account. The remaining steps take place in Articulate Storyline.
\n
Below you'll find the steps to create the export to Google Drive:
Click on the Plus-sign (+) to create a new spreadsheet.
\n
\n
3. Rename the sheet to DATA
\n
Give the spreadsheet a title and change the name of the sheet to DATA.
\n
\n
4. Add extra columns
\n
Add extra columns you would like to use. Probably these columns will have the same name as the variables in Articulate Storyline. As example: the column names name, email and message like in the source project.
\n
You can add the column date in the spreadsheet, if you would like to save the date when the form is sent to Google.
\n
The column names needs to be identical to the variable names in Articulate Storyline. The column names are case sensitive.
\n
\n
5. Copy the ID of your form
\n
Find out your spreadsheet ‘key’ by looking in the address bar, the key is the long series of letters and numbers after /d/ and before /edit: Like:
The KEY will be = 1AzBuim89ma_ght1-O14cksVzXrQL5Vh4XnRqY9OM_gc
\n
Save this KEY in a Notepad file to keep safe, or other application, you will need this ID in step 8.
\n
\n
6. Open the Script Editor
\n
Open the script editor Tools, Script Editor.
\n
\n
7. Paste custom script
\n
If you are using the template, then you can skip this step. The code is already in the template available. If not, paste the script below, which is needed for importing the Storyline variables into this spreadsheet:
\n
// 1. Enter sheet name where data is to be written below var SHEET_NAME = \"DATA\";
// 2. Enter the KEY of your form var KEY = \"KEY\"
// 3. Run > setup
// 4. Publish > Deploy as web app // - enter Project Version name and click 'Save New Version' // - set security level and enable service (most likely execute as 'me' and access 'anyone, even anonymously)
// 5. Copy the 'Current web app URL' and post this in your form/script action
// 6. Insert column names on your destination sheet matching the parameter names of the data you are passing in (exactly matching case)
var SCRIPT_PROP = PropertiesService.getScriptProperties(); // new property service
// If you don't want to expose either GET or POST methods you can comment out the appropriate function
function doGet(e){ return handleResponse(e); } function doPost(e){ return handleResponse(e); }
function handleResponse(e) { // shortly after my original solution Google announced the LockService[1] // this prevents concurrent access overwritting data // [1] http://googleappsdeveloper.blogspot.co.uk/2011/10/concurrency-and-google-apps-script.html // we want a public lock, one that locks for all invocations var lock = LockService.getPublicLock(); lock.waitLock(30000); // wait 30 seconds before conceding defeat.
try { // next set where we write the data - you could write to multiple/alternate destinations var doc = SpreadsheetApp.openById(SCRIPT_PROP.getProperty(KEY)); var sheet = doc.getSheetByName(SHEET_NAME);
// we'll assume header is in row 1 but you can override with header_row in GET/POST data var headRow = e.parameter.header_row || 1; var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]; var nextRow = sheet.getLastRow()+1; // get next row var row = []; // loop through the header columns for (i in headers){ if (headers[i] == \"Timestamp\"){ // special case if you include a 'Timestamp' column row.push(new Date()); } else { // else use header name to get data row.push(e.parameter[headers[i]]); } } // more efficient to set values as [][] array than individually sheet.getRange(nextRow, 1, 1, row.length).setValues([row]); // return json success results return ContentService .createTextOutput(JSON.stringify({\"result\":\"success\", \"row\": nextRow})) .setMimeType(ContentService.MimeType.JSON); } catch(e){ // if error return this return ContentService .createTextOutput(JSON.stringify({\"result\":\"error\", \"error\": e})) .setMimeType(ContentService.MimeType.JSON); } finally { //release lock lock.releaseLock(); } }
function setup() { var doc = SpreadsheetApp.getActiveSpreadsheet(); SCRIPT_PROP.setProperty(KEY, doc.getId()); }
\n
8. Paste your key
\n
There is one place in the script where it says var KEY = \"KEY\". Copy and paste your key between the \"\".
\n
\n
9. Run the script
\n
Run the script via Run, Run function, setup. The first time you run the script it will ask for permission to run. You will need to grant it. If you run the script for a second time you won't get any popup. This is an indication it has run successfully.
\n
\n
10. Deploy a web app
\n
Go to Publish, Deployaswebapp. Enter a project name (optional) and set security level. Choose for Me and access Anyone, even anonymously. Click on the button Deploy to create the web app.
\n
\n
11. Copy the Current web app URL
\n
Copy the 'Current web app URL' and paste it in a Notepad file to keep safe.
In Articulate, add a trigger to run javascript (Execute Javascript) and use the code below.
\n
This code will add the jQuery library to this project, so you won't have to change the HTML files after publishing the project. The jQuery library is needed for exporting the information to Google Drive.
\n
var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.src = '//code.jquery.com/jquery-1.11.0.min.js'; script.type = 'text/javascript'; head.appendChild(script)
\n
13. Store information
\n
Add another trigger to run Javascript (Execute Javascript). You can use the code below.
\n
Replace the value Current web app URL for the webapp url you've saved in step 11.
\n
Below the webapp URL, you can place the column names of the spreadsheet and the Storyline variables. Please be aware of the comma if you add multiple variables.
\n
var player = GetPlayer();
//PLACE YOUR WEB APP URL WEB_APP_URL = \"Current web app URL\";
// STORE ARTICULATE STORYLINE VARIABLES // \"Columnname_Google_Spreadsheet\" : player.GetVar(\"Name_Storyline_Variable\") // ATTENTION: Use a comma if you use multiple Storyline variables storyline = { \"date\" : new Date().toJSON().slice(0,10), //STORE DATE \"name\" : player.GetVar(\"name\"), \"email\" : player.GetVar(\"email\"), \"message\" : player.GetVar(\"message\") }
\n
Don't delete the row below, if you would like to save the date when the form is sent:
\n
\"date\" : new Date().toJSON().slice(0,10), //STORE DATE
\n
14. Export code to Google Drive
\n
Latest Javascript code. Add another trigger to run Javascript (Execute Javascript). You can use the code below. This trigger will send the information from step 13 to Google Drive.
\n
//DELAY SO JQUERY LIBRARY IS LOADED setTimeout(function (){
//Export to Google $.ajax({ url: WEB_APP_URL, type: \"POST\", data : storyline, success: function(data) { console.log(data); }, error: function(err) { console.log('Error:', err); } }); return false; }, 1000);
\n
15. Publish to SCORM or WEB format
\n
Publish your articulate project to WEB or SCORM format. You need to host it on a WEB server or somewhere like SCORM cloud (or a LMS).
\n
This export will work in Flash and HTML5 output. You can't use the Articulate Mobile Player, because it won't support Javascript code.
On the Articulate user days in Utrecht (2015), we held a session about exporting Articulate Storyline variables to Google Drive (Spreadsheet). This export is achieved via JavaScript (jQuery).
\n
Use the button Source to download the Storyline project. If you want the same lay-out as the example above, please install the following fonts (see source file):
\n
\n
flaticons-stroke.ttf
\n
fontawesome-webfont.ttf
\n
\n
Why do you want to make an export to Google Drive?
\n
\n
No LMS (or database) available;
\n
Store more information than just the test results. You can export all Storyline variables to Google Drive.
\n
\n
Why using Javascript?
\n
Besides using Javascript it's also possible to embed a Google form as WEB object. This is a lot easier than using Javascript.
\n
We have chosen for Javascript because we would like the ability to change the appearance of the form. In addition, we want to collect data across multiple slides and then store them in Google Drive.
\n
UPDATE 2017-06-06:
\n
There is also an article available for importing records of a Google Spreadsheet into Storyline:
UPDATE 18-10-2018: PROBLEMS WITH NEW SPREADSHEET, TRY TO USE A TEMPLATE
\n
Google changed somthing within the mechanism of storing variables into a Google Spreadsheet. Creating a new spreadsheet can give you problems for storing variables. Before you try the steps below, please use a template:
The export consists of several steps. Some steps take place on the side of Google. For these steps you will need a Google account. The remaining steps take place in Articulate Storyline.
\n
Below you'll find the steps to create the export to Google Drive:
Click on the Plus-sign (+) to create a new spreadsheet.
\n
\n
3. Rename the sheet to DATA
\n
Give the spreadsheet a title and change the name of the sheet to DATA.
\n
\n
4. Add extra columns
\n
Add extra columns you would like to use. Probably these columns will have the same name as the variables in Articulate Storyline. As example: the column names name, email and message like in the source project.
\n
You can add the column date in the spreadsheet, if you would like to save the date when the form is sent to Google.
\n
The column names needs to be identical to the variable names in Articulate Storyline. The column names are case sensitive.
\n
\n
5. Copy the ID of your form
\n
Find out your spreadsheet ‘key’ by looking in the address bar, the key is the long series of letters and numbers after /d/ and before /edit: Like:
The KEY will be = 1AzBuim89ma_ght1-O14cksVzXrQL5Vh4XnRqY9OM_gc
\n
Save this KEY in a Notepad file to keep safe, or other application, you will need this ID in step 8.
\n
\n
6. Open the Script Editor
\n
Open the script editor Tools, Script Editor.
\n
\n
7. Paste custom script
\n
If you are using the template, then you can skip this step. The code is already in the template available. If not, paste the script below, which is needed for importing the Storyline variables into this spreadsheet:
\n
// 1. Enter sheet name where data is to be written below var SHEET_NAME = \"DATA\";
// 2. Enter the KEY of your form var KEY = \"KEY\"
// 3. Run > setup
// 4. Publish > Deploy as web app // - enter Project Version name and click 'Save New Version' // - set security level and enable service (most likely execute as 'me' and access 'anyone, even anonymously)
// 5. Copy the 'Current web app URL' and post this in your form/script action
// 6. Insert column names on your destination sheet matching the parameter names of the data you are passing in (exactly matching case)
var SCRIPT_PROP = PropertiesService.getScriptProperties(); // new property service
// If you don't want to expose either GET or POST methods you can comment out the appropriate function
function doGet(e){ return handleResponse(e); } function doPost(e){ return handleResponse(e); }
function handleResponse(e) { // shortly after my original solution Google announced the LockService[1] // this prevents concurrent access overwritting data // [1] http://googleappsdeveloper.blogspot.co.uk/2011/10/concurrency-and-google-apps-script.html // we want a public lock, one that locks for all invocations var lock = LockService.getPublicLock(); lock.waitLock(30000); // wait 30 seconds before conceding defeat.
try { // next set where we write the data - you could write to multiple/alternate destinations var doc = SpreadsheetApp.openById(SCRIPT_PROP.getProperty(KEY)); var sheet = doc.getSheetByName(SHEET_NAME);
// we'll assume header is in row 1 but you can override with header_row in GET/POST data var headRow = e.parameter.header_row || 1; var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0]; var nextRow = sheet.getLastRow()+1; // get next row var row = []; // loop through the header columns for (i in headers){ if (headers[i] == \"Timestamp\"){ // special case if you include a 'Timestamp' column row.push(new Date()); } else { // else use header name to get data row.push(e.parameter[headers[i]]); } } // more efficient to set values as [][] array than individually sheet.getRange(nextRow, 1, 1, row.length).setValues([row]); // return json success results return ContentService .createTextOutput(JSON.stringify({\"result\":\"success\", \"row\": nextRow})) .setMimeType(ContentService.MimeType.JSON); } catch(e){ // if error return this return ContentService .createTextOutput(JSON.stringify({\"result\":\"error\", \"error\": e})) .setMimeType(ContentService.MimeType.JSON); } finally { //release lock lock.releaseLock(); } }
function setup() { var doc = SpreadsheetApp.getActiveSpreadsheet(); SCRIPT_PROP.setProperty(KEY, doc.getId()); }
\n
8. Paste your key
\n
There is one place in the script where it says var KEY = \"KEY\". Copy and paste your key between the \"\".
\n
\n
9. Run the script
\n
Run the script via Run, Run function, setup. The first time you run the script it will ask for permission to run. You will need to grant it. If you run the script for a second time you won't get any popup. This is an indication it has run successfully.
\n
\n
10. Deploy a web app
\n
Go to Publish, Deployaswebapp. Enter a project name (optional) and set security level. Choose for Me and access Anyone, even anonymously. Click on the button Deploy to create the web app.
\n
\n
11. Copy the Current web app URL
\n
Copy the 'Current web app URL' and paste it in a Notepad file to keep safe.
In Articulate, add a trigger to run javascript (Execute Javascript) and use the code below.
\n
This code will add the jQuery library to this project, so you won't have to change the HTML files after publishing the project. The jQuery library is needed for exporting the information to Google Drive.
\n
var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.src = '//code.jquery.com/jquery-1.11.0.min.js'; script.type = 'text/javascript'; head.appendChild(script)
\n
13. Store information
\n
Add another trigger to run Javascript (Execute Javascript). You can use the code below.
\n
Replace the value Current web app URL for the webapp url you've saved in step 11.
\n
Below the webapp URL, you can place the column names of the spreadsheet and the Storyline variables. Please be aware of the comma if you add multiple variables.
\n
var player = GetPlayer();
//PLACE YOUR WEB APP URL WEB_APP_URL = \"Current web app URL\";
// STORE ARTICULATE STORYLINE VARIABLES // \"Columnname_Google_Spreadsheet\" : player.GetVar(\"Name_Storyline_Variable\") // ATTENTION: Use a comma if you use multiple Storyline variables storyline = { \"date\" : new Date().toJSON().slice(0,10), //STORE DATE \"name\" : player.GetVar(\"name\"), \"email\" : player.GetVar(\"email\"), \"message\" : player.GetVar(\"message\") }
\n
Don't delete the row below, if you would like to save the date when the form is sent:
\n
\"date\" : new Date().toJSON().slice(0,10), //STORE DATE
\n
14. Export code to Google Drive
\n
Latest Javascript code. Add another trigger to run Javascript (Execute Javascript). You can use the code below. This trigger will send the information from step 13 to Google Drive.
\n
//DELAY SO JQUERY LIBRARY IS LOADED setTimeout(function (){
//Export to Google $.ajax({ url: WEB_APP_URL, type: \"POST\", data : storyline, success: function(data) { console.log(data); }, error: function(err) { console.log('Error:', err); } }); return false; }, 1000);
\n
15. Publish to SCORM or WEB format
\n
Publish your articulate project to WEB or SCORM format. You need to host it on a WEB server or somewhere like SCORM cloud (or a LMS).
\n
This export will work in Flash and HTML5 output. You can't use the Articulate Mobile Player, because it won't support Javascript code.
Thanks for sharing this here - Google Drive and exporting variables is always a topic of discussion here in the forums.
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899262_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"User:user:1140727":{"__typename":"User","id":"user:1140727","uid":1140727,"login":"ronniemckenna1","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2013-06-26T02:57:08.000-07:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0|db8fac70-b37e-0131-2ee8-22000b2f96a1"},"rank":{"__ref":"Rank:rank:6"},"entityType":"USER","eventPath":"community:rwgqn69235/user:1140727"},"ModerationData:moderation_data:899263":{"__typename":"ModerationData","id":"moderation_data:899263","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899263":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:1140727"},"id":"message:899263","revisionNum":1,"uid":899263,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899263"},"body":"
Thank you for this, I've finally managed to get this to work! :)
Thank you for this, I've finally managed to get this to work! :)
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899263_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"ModerationData:moderation_data:899264":{"__typename":"ModerationData","id":"moderation_data:899264","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899264":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:788409"},"id":"message:899264","revisionNum":1,"uid":899264,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899264"},"body":"
You're welcome! Great to help other community members!
You're welcome! Great to help other community members!
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899264_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"User:user:308548":{"__typename":"User","id":"user:308548","uid":308548,"login":"jeff","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2011-01-30T16:30:44.000-08:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0%7C5e3da630-b37d-0131-2ee8-22000b2f96a1"},"rank":{"__ref":"Rank:rank:6"},"entityType":"USER","eventPath":"community:rwgqn69235/user:308548"},"ModerationData:moderation_data:899265":{"__typename":"ModerationData","id":"moderation_data:899265","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899265":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:308548"},"id":"message:899265","revisionNum":1,"uid":899265,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899265"},"body":"
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899265_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"User:user:70499":{"__typename":"User","id":"user:70499","uid":70499,"login":"MirandaLee","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2014-12-09T11:22:15.000-08:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0|9af78400-6206-0132-71a7-22000b3585e2"},"rank":{"__ref":"Rank:rank:6"},"entityType":"USER","eventPath":"community:rwgqn69235/user:70499"},"ModerationData:moderation_data:899266":{"__typename":"ModerationData","id":"moderation_data:899266","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899266":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:70499"},"id":"message:899266","revisionNum":1,"uid":899266,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899266"},"body":"
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899266_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"User:user:694264":{"__typename":"User","id":"user:694264","uid":694264,"login":"NicoleDuclos","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2012-03-14T09:53:28.000-07:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0|11530850-b37e-0131-2ee8-22000b2f96a1"},"rank":{"__ref":"Rank:rank:6"},"entityType":"USER","eventPath":"community:rwgqn69235/user:694264"},"ModerationData:moderation_data:899267":{"__typename":"ModerationData","id":"moderation_data:899267","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899267":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:694264"},"id":"message:899267","revisionNum":1,"uid":899267,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899267"},"body":"
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899267_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"Rank:rank:5":{"__typename":"Rank","id":"rank:5","position":4,"name":"Super Hero","color":"4E3AD5","icon":null,"rankStyle":"FILLED"},"User:user:629008":{"__typename":"User","id":"user:629008","uid":629008,"login":"KevinThorn","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2011-01-30T22:22:22.000-08:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0%7C0e870740-b380-0131-2ee8-22000b2f96a1"},"rank":{"__ref":"Rank:rank:5"},"entityType":"USER","eventPath":"community:rwgqn69235/user:629008"},"ModerationData:moderation_data:899268":{"__typename":"ModerationData","id":"moderation_data:899268","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899268":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:629008"},"id":"message:899268","revisionNum":1,"uid":899268,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899268"},"body":"
Great example and explanation using jQuery. Thanks Bastiaan!
Great example and explanation using jQuery. Thanks Bastiaan!
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899268_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"ModerationData:moderation_data:899269":{"__typename":"ModerationData","id":"moderation_data:899269","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899269":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:788409"},"id":"message:899269","revisionNum":1,"uid":899269,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899269"},"body":"
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899269_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"User:user:1187679":{"__typename":"User","id":"user:1187679","uid":1187679,"login":"LynnWahl","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2015-03-06T10:38:37.000-08:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0|e4ea5160-a5c2-0132-294c-22000b188b5e"},"rank":{"__ref":"Rank:rank:6"},"entityType":"USER","eventPath":"community:rwgqn69235/user:1187679"},"ModerationData:moderation_data:899270":{"__typename":"ModerationData","id":"moderation_data:899270","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899270":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:1187679"},"id":"message:899270","revisionNum":1,"uid":899270,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899270"},"body":"
Out of all the tutorials on this, this is the only one I've actually managed to make work. Thank you so much for the templates. I flubbed it the first few times by adding the triggers myself on the first slide of the Articulate template provided rather than changing the Web App URL on the last slide where you already had everything there. Now that I see what's going on, I can add it to any of my projects. Thanks again!
Out of all the tutorials on this, this is the only one I've actually managed to make work. Thank you so much for the templates. I flubbed it the first few times by adding the triggers myself on the first slide of the Articulate template provided rather than changing the Web App URL on the last slide where you already had everything there. Now that I see what's going on, I can add it to any of my projects. Thanks again!
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899270_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"User:user:1121626":{"__typename":"User","id":"user:1121626","uid":1121626,"login":"LeslieMcKerchie","biography":null,"registrationData":{"__typename":"RegistrationData","status":null,"registrationTime":"2012-10-12T22:43:50.000-07:00"},"deleted":false,"email":"","avatar":{"__typename":"UserAvatar","url":"https://api.articulate.com/id/v1/avatars/auth0%7C77779710-b37e-0131-2ee8-22000b2f96a1"},"rank":{"__ref":"Rank:rank:2"},"entityType":"USER","eventPath":"community:rwgqn69235/user:1121626"},"ModerationData:moderation_data:899271":{"__typename":"ModerationData","id":"moderation_data:899271","status":"APPROVED","rejectReason":null,"isReportedAbuse":false,"rejectUser":null,"rejectTime":null,"rejectActorType":null},"ForumReplyMessage:message:899271":{"__typename":"ForumReplyMessage","author":{"__ref":"User:user:1121626"},"id":"message:899271","revisionNum":1,"uid":899271,"depth":1,"hasGivenKudo":false,"subscribed":false,"board":{"__ref":"Forum:board:discuss"},"parent":{"__ref":"ForumTopicMessage:message:899261"},"conversation":{"__ref":"Conversation:conversation:899261"},"subject":"Re: Articulate Storyline: Export to Google Drive","moderationData":{"__ref":"ModerationData:moderation_data:899271"},"body":"
Glad that this was able to assist you here Lynn. I've flubbed on courses/techniques as well and it's all a part of the learning I think. I do appreciate the feedback and glad to hear that you are well on your way.
Glad that this was able to assist you here Lynn. I've flubbed on courses/techniques as well and it's all a part of the learning I think. I do appreciate the feedback and glad to hear that you are well on your way.
","images":{"__typename":"AssociatedImageConnection","edges":[],"totalCount":0,"pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null}},"attachments":{"__typename":"AttachmentConnection","pageInfo":{"__typename":"PageInfo","hasNextPage":false,"endCursor":null,"hasPreviousPage":false,"startCursor":null},"edges":[]},"timeToRead":1,"currentRevision":{"__ref":"Revision:revision:899271_1"},"latestVersion":null,"messagePolicies":{"__typename":"MessagePolicies","canModerateSpamMessage":{"__typename":"PolicyResult","failureReason":{"__typename":"FailureReason","message":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","key":"error.lithium.policies.feature.moderation_spam.action.moderate_entity.allowed.accessDenied","args":[]}}}},"CachedAsset:text:en_US-components/community/NavbarDropdownToggle-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/community/NavbarDropdownToggle-1744215893872","value":{"ariaLabelClosed":"Press the down arrow to open the menu"},"localOverride":false},"CachedAsset:text:en_US-components/messages/EscalatedMessageBanner-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/EscalatedMessageBanner-1744215893872","value":{"escalationMessage":"Escalated to Salesforce by {username} on {date}","viewDetails":"View Details","modalTitle":"Case Details","escalatedBy":"Escalated by: ","escalatedOn":"Escalated on: ","caseNumber":"Case Number: ","status":"Status: ","lastUpdateDate":"Last Update: ","automaticEscalation":"automatic escalation","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-components/users/UserLink-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/users/UserLink-1744215893872","value":{"authorName":"View Profile: {author}","anonymous":"Anonymous"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/users/UserRank-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserRank-1744215893872","value":{"rankName":"{rankName}","userRank":"Author rank {rankName}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageTime-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageTime-1744215893872","value":{"postTime":"Published: {time}","lastPublishTime":"Last Update: {time}","conversation.lastPostingActivityTime":"Last posting activity time: {time}","conversation.lastPostTime":"Last post time: {time}","moderationData.rejectTime":"Rejected time: {time}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSolvedBadge-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSolvedBadge-1744215893872","value":{"solved":"Solved"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageSubject-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageSubject-1744215893872","value":{"noSubject":"(no subject)"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageBody-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageBody-1744215893872","value":{"showMessageBody":"Show More","mentionsErrorTitle":"{mentionsType, select, board {Board} user {User} message {Message} other {}} No Longer Available","mentionsErrorMessage":"The {mentionsType} you are trying to view has been removed from the community.","videoProcessing":"Video is being processed. Please try again in a few minutes.","bannerTitle":"Video provider requires cookies to play the video. Accept to continue or {url} it directly on the provider's site.","buttonTitle":"Accept","urlText":"watch"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageCustomFields-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageCustomFields-1744215893872","value":{"CustomField.default.label":"Value of {name}"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageReplyButton-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageReplyButton-1744215893872","value":{"repliesCount":"{count}","title":"Reply","title@board:BLOG@message:root":"Comment","title@board:TKB@message:root":"Comment","title@board:IDEA@message:root":"Comment","title@board:OCCASION@message:root":"Comment"},"localOverride":false},"CachedAsset:text:en_US-components/messages/AcceptedSolutionButton-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/AcceptedSolutionButton-1744215893872","value":{"accept":"Mark as Solution","accepted":"Marked as Solution","errorHeader":"Error!","errorAdd":"There was an error marking as solution.","errorRemove":"There was an error unmarking as solution.","solved":"Solved","topicAlreadySolvedErrorTitle":"Solution Already Exists","topicAlreadySolvedErrorDesc":"Refresh the browser to view the existing solution"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMorePreviousNextLinkable-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Pager/PagerLoadMorePreviousNextLinkable-1744215893872","value":{"loadMore":"Show More"},"localOverride":false},"CachedAsset:text:en_US-components/messages/MessageView/MessageViewInline-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/messages/MessageView/MessageViewInline-1744215893872","value":{"bylineAuthor":"{bylineAuthor}","bylineBoard":"{bylineBoard}","anonymous":"Anonymous","place":"Place {bylineBoard}","gotoParent":"Go to parent {name}"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/common/Pager/PagerLoadMore-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/common/Pager/PagerLoadMore-1744215893872","value":{"loadMore":"Show More"},"localOverride":false},"Revision:revision:899263_1":{"__typename":"Revision","id":"revision:899263_1","lastEditTime":"2015-11-25T14:00:32.000-08:00"},"Revision:revision:899269_1":{"__typename":"Revision","id":"revision:899269_1","lastEditTime":"2015-12-04T00:14:41.000-08:00"},"Revision:revision:899265_1":{"__typename":"Revision","id":"revision:899265_1","lastEditTime":"2015-11-27T12:13:18.000-08:00"},"Revision:revision:899271_1":{"__typename":"Revision","id":"revision:899271_1","lastEditTime":"2016-01-27T10:07:12.000-08:00"},"Revision:revision:899270_1":{"__typename":"Revision","id":"revision:899270_1","lastEditTime":"2016-01-27T09:57:57.000-08:00"},"Revision:revision:899262_1":{"__typename":"Revision","id":"revision:899262_1","lastEditTime":"2015-11-18T09:36:51.000-08:00"},"Revision:revision:899266_1":{"__typename":"Revision","id":"revision:899266_1","lastEditTime":"2015-11-30T13:52:55.000-08:00"},"Revision:revision:899267_1":{"__typename":"Revision","id":"revision:899267_1","lastEditTime":"2015-12-01T08:46:18.000-08:00"},"Revision:revision:899268_1":{"__typename":"Revision","id":"revision:899268_1","lastEditTime":"2015-12-03T14:58:19.000-08:00"},"Revision:revision:899264_1":{"__typename":"Revision","id":"revision:899264_1","lastEditTime":"2015-11-26T03:49:57.000-08:00"},"CachedAsset:text:en_US-shared/client/components/users/UserAvatar-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/users/UserAvatar-1744215893872","value":{"altText":"{login}'s avatar","altTextGeneric":"User's avatar"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/ranks/UserRankLabel-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/ranks/UserRankLabel-1744215893872","value":{"altTitle":"Icon for {rankName} rank"},"localOverride":false},"CachedAsset:text:en_US-shared/client/components/nodes/NodeIcon-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-shared/client/components/nodes/NodeIcon-1744215893872","value":{"contentType":"Content Type {style, select, FORUM {Forum} BLOG {Blog} TKB {Knowledge Base} IDEA {Ideas} OCCASION {Events} other {}} icon"},"localOverride":false},"CachedAsset:text:en_US-components/tags/TagView/TagViewChip-1744215893872":{"__typename":"CachedAsset","id":"text:en_US-components/tags/TagView/TagViewChip-1744215893872","value":{"tagLabelName":"Tag name {tagName}"},"localOverride":false}}}},"page":"/forums/ForumMessagePage/ForumMessagePage","query":{"boardId":"discuss","messageSubject":"articulate-storyline-export-to-google-drive","messageId":"899261"},"buildId":"Btkyb7T6TeYM9D2gUmiOv","runtimeConfig":{"buildInformationVisible":false,"logLevelApp":"info","logLevelMetrics":"info","openTelemetryClientEnabled":false,"openTelemetryConfigName":"articulate","openTelemetryServiceVersion":"25.2.0","openTelemetryUniverse":"prod","openTelemetryCollector":"http://localhost:4318","openTelemetryRouteChangeAllowedTime":"5000","apolloDevToolsEnabled":false,"inboxMuteWipFeatureEnabled":false},"isFallback":false,"isExperimentalCompile":false,"dynamicIds":["./components/seo/QAPageSchema/QAPageSchema.tsx","./components/customComponent/CustomComponent/CustomComponent.tsx","./components/community/Navbar/NavbarWidget.tsx","./components/community/Breadcrumb/BreadcrumbWidget.tsx","./components/messages/TopicWithThreadedReplyListWidget/TopicWithThreadedReplyListWidget.tsx","./components/messages/RelatedContentWidget/RelatedContentWidget.tsx","./components/messages/MessageListForNodeByRecentActivityWidget/MessageListForNodeByRecentActivityWidget.tsx","./components/messages/MessageView/MessageViewStandard/MessageViewStandard.tsx","./components/messages/ThreadedReplyList/ThreadedReplyList.tsx","./components/customComponent/CustomComponentContent/TemplateContent.tsx","../shared/client/components/common/List/UnstyledList/UnstyledList.tsx","./components/messages/MessageView/MessageView.tsx","../shared/client/components/common/Pager/PagerLoadMorePreviousNextLinkable/PagerLoadMorePreviousNextLinkable.tsx","./components/messages/MessageView/MessageViewInline/MessageViewInline.tsx","../shared/client/components/common/List/ListGroup/ListGroup.tsx","../shared/client/components/common/Pager/PagerLoadMore/PagerLoadMore.tsx","../shared/client/components/common/List/UnwrappedList/UnwrappedList.tsx","./components/tags/TagView/TagView.tsx","./components/tags/TagView/TagViewChip/TagViewChip.tsx"],"appGip":true,"scriptLoader":[]}