# Working with E-Learning Content

While e-learning content requires [additional setup](/en/lr/61957/) and configuration, you can add e-learning course ZIP files to Vault Document _Training Requirements_ just as you would any other document.



<div class="note-border alert-info">
  <div class="alert alert-info" role="alert">
    <div><i class="far fa-info-circle"></i></div>
    <div class="alert-text">
      <p><strong>Note</strong>: If you are experiencing issues with e-learning in your Vault, we recommend working with your organization’s IT department to ensure the <code class="language-plaintext highlighter-rouge">*.veevavaultlearning.com</code> domain is <a href="/en/lr/35005/">allowlisted</a>. You can also find solutions to known e-learning troubleshooting issues in <a href="/en/lr/61156/">E-Learning Content Troubleshooting &amp; FAQ</a>.</p>
    </div>
  </div>
</div>



## Resetting E-Learning Course Progress {#reset-course-progress}

Learners may experience situations in which they cannot complete an e-learning course and receive their completion checkmark. For example, the Learner may fail a quiz within the course and cannot retake it.

When [configured](/en/lr/61957/#configuring-object-lifecycles-for-e-learning), Training Admins can use the **Reset Learner’s Course Progress** user action to allow the Learner to start the course as if they were starting it for the first time.

To do this, Vault moves the current _Training Content Status_ object record to the _Retired_ state, then creates a new _Training Content Status_ record to unlock the Learner’s assignment.



<div class="note-border alert-info">
  <div class="alert alert-info" role="alert">
    <div><i class="far fa-info-circle"></i></div>
    <div class="alert-text">
      <p><strong>Note</strong>: The reset action only appears in the <em>In Progress</em> state, even if it is configured in other lifecycle states.</p>
    </div>
  </div>
</div>



## Session Timeout

The e-learning player's session timeout duration is the same as your Vault's timeout, with some limitations as [described below][1].
  * If the Learner is active in Vault or within the e-learning course, for example, navigating between pages, their session does not time out. If the session is close to timing out, the player displays a timeout banner.
  * If the session times out, both Vault and the e-learning player window redirects to the Vault login page.
  * If the user either logs out of Vault, or is logged out of Vault automatically while the e-learning course player browser window is still open, the e-learning browser window automatically closes.

However, there are limitations to session timeout based on whether the course is [hosted within Vault or within a third-party site][2].

### Session Timeout Limitations {#limitations}

Timeout behavior differs between e-learning standards and whether the course is [hosted or non-hosted][2]:

Hosted SCORM courses
: If the course sends data to Vault, the user's session timeout is updated in Vault, and the user is not be timed out of Vault or e-learning. In this context, "sends data" means the course is calling either LMSSetValue() or LMSFinish().
: If the course does not send data to Vault, the user's session timeout is not updated in Vault and the user may be logged out of Vault. To avoid a timeout in this case, the user can hover over the yellow timeout banner on the e-learning browser window.

Hosted AICC courses
: The user's session timeout is not updated even if data is sent. This is a known limitation of Training's e-learning support.

Non-Hosted SCORM or AICC courses
: As long as the user is active within the course and there is network activity, the user's session does not time out in Vault.

## About Hosted & Non-Hosted E-Learning Courses {#hosted}

E-learning courses are either _non-hosted_ and fully contained within Vault, or _hosted_ on third-party vendor servers. <a class="external-link " href="https://learngxp.com/" target="_blank" rel="noopener">LearnGxP<i class="fa fa-external-link" aria-hidden="true"></i></a> courses manually uploaded to a Vault are considered to be _non-hosted_ e-learning courses, whereas courses delivered to subscribers via [LearnGxP ContentDirect](/en/lr/626994/) are considered to be _hosted_.

As Vault behavior differs depending on whether the course is _hosted_ or _non-hosted_, you should be aware of this attribute for your e-learning courses:

* _Hosted_ SCORM or AICC courses are e-learning courses where the majority of the course content is hosted in another domain, often the domain of the vendor you purchased the course from. If you have purchased the course from a third party, check with the vendor whether the e-learning course contents are hosted on the vendor servers. If so, then the course is _hosted_.
* If the course is built within your organization using tools like Adobe Captivate or Articulate Storyline and uploaded into Vault, then the e-learning course is _non-hosted_, as the course assets, such as image, HTML, and other files, are in the course ZIP file.

To quickly determine if an e-learning course is _hosted_, unzip the e-learning ZIP file. If the ZIP contains only a handful of files, then most likely the course is _hosted_. If the ZIP contains files, folders, and subfolders, then the course is most likely _non-hosted_.

 [1]: #limitations
 [2]: #hosted
