Final save before Thanksgiving holiday! Blacklane has been completed. Some small scripts were updates. Downloaded new - but error prone - SPS templates.
This commit is contained in:
@ -1,35 +1,14 @@
|
||||
{% if current_person.signed_in? == false %}
|
||||
<script>
|
||||
if (localStorage.getItem('learnerCompletedAdditionalInfo') == null) {
|
||||
if(localStorage.getItem('registered') == null){
|
||||
window.location.href = '/learners/sign_in'
|
||||
} else {
|
||||
if(localStorage.getItem('learnerCompletedAdditionalInfo') == true){
|
||||
window.location.href = '/app/dashboard'
|
||||
} else {
|
||||
window.location.href = '/app/sign-up-follow-up'
|
||||
}
|
||||
}
|
||||
//setTimeout(() => {
|
||||
//}, 500)
|
||||
}
|
||||
</script>
|
||||
{% else %}
|
||||
{% if current_person.properties.learner_completed_additional_info == false %}
|
||||
{% unless current_person.email contains '+preview-' %}
|
||||
<script>
|
||||
if (localStorage.getItem('learnerCompletedAdditionalInfo') == null || localStorage.getItem('learnerCompletedAdditionalInfo') == false) {
|
||||
window.location.href = '/app/sign-up-follow-up'
|
||||
}
|
||||
</script>
|
||||
{% endunless %}
|
||||
{% else %}
|
||||
<script>
|
||||
localStorage.removeItem('registered');
|
||||
localStorage.removeItem('learnerCompletedAdditionalInfo')
|
||||
</script>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
<script>
|
||||
let jsDate = new Date();
|
||||
let jsFormattedDate = jsDate.getFullYear() + ("0" + (jsDate.getMonth() + 1)).slice(-2) + ("0" + jsDate.getDate()).slice(-2);
|
||||
let liquidFormattedDate = '{{ "now" | date: "%Y-%m-%d" }}';
|
||||
let personCreateDate = '{{ current_person.created_at }}'.split(" ")[0]
|
||||
if (personCreateDate == liquidFormattedDate) {
|
||||
if (localStorage.getItem('learnerCompletedAdditionalInfo') == null) {
|
||||
window.location.href = '/app/sign-up-follow-up'
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<header class="np-header np-header-color">
|
||||
<div class="np-header-content">
|
||||
|
||||
@ -1,4 +1,3 @@
|
||||
|
||||
<div class="sign-up-follow-up-container" onload="">
|
||||
<div class="sign-up-follow-up-content">
|
||||
<h1 class="sign-up-follow-up-prompt">Please select your region: </h1>
|
||||
@ -20,19 +19,30 @@
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.sign-up-follow-up-prompt {
|
||||
color: black;
|
||||
}
|
||||
.logo-img {
|
||||
width: 500px;
|
||||
padding: 0;
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
max-height: 100%;
|
||||
max-width: 100%;
|
||||
}
|
||||
.logo-container {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
max-width: 100%;
|
||||
width: 100%;
|
||||
height: 20%;
|
||||
}
|
||||
.logo-itself {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
padding: 35px;
|
||||
width: 40%;
|
||||
}
|
||||
.region-container {
|
||||
border: none;
|
||||
@ -43,7 +53,7 @@
|
||||
}
|
||||
.info-group-option {
|
||||
text-transform: none;
|
||||
font-size: 20px;
|
||||
font-size: 25px;
|
||||
border-radius: 10px;
|
||||
background-color: black;
|
||||
color: white;
|
||||
@ -79,40 +89,5 @@
|
||||
|
||||
</style>
|
||||
<script>
|
||||
|
||||
let submitData = async () => {
|
||||
//if(
|
||||
// ($(".sign-up-region")[0].value.length > 0)
|
||||
// ){
|
||||
|
||||
function webhookCaller(){
|
||||
return new Promise(function(res, rej) {
|
||||
let xhr = new XMLHttpRequest();
|
||||
url = "https://webhooks.workato.com/webhooks/rest/a36b1f7c-07c7-48ff-bc0f-cb3777d02c81/blacklane-new-driver-region-seg";
|
||||
|
||||
xhr.addEventListener("load", e => {
|
||||
window.location.replace('/app/');
|
||||
//window.location.replace('/app');
|
||||
});
|
||||
xhr.open("POST", url, true);
|
||||
xhr.send(JSON.stringify({
|
||||
email: '{{ current_person.email }}',
|
||||
name: "{{ current_person.first_name }} {{ current_person.last_name }}",
|
||||
user_id: '{{ current_person.id }}',
|
||||
user_region: $(".sign-up-region")[0].value,
|
||||
}))
|
||||
})
|
||||
}
|
||||
|
||||
try {
|
||||
await webhookCaller()
|
||||
.then((res) => {
|
||||
window.location.replace('/app/dashboard')
|
||||
})
|
||||
} catch(err) {
|
||||
console.log(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
localStorage.setItem("learnerCompletedAdditionalInfo", true);
|
||||
</script>
|
||||
|
||||
Binary file not shown.
@ -0,0 +1,57 @@
|
||||
{% assign categories = '' | split: '' %}
|
||||
{% for cat in course.categories %}
|
||||
{% assign cat_name = cat.name | split: '!@#$%^&*()' %}
|
||||
{% assign categories = categories | concat: cat_name %}
|
||||
{% endfor %}
|
||||
{% assign compressed_image_url = course.image_url | replace: "resize=width:820,height:500", "resize=width:500,height:305" %}
|
||||
<div class="np-card np-grid-spacing col-xs-12 col-sm-6 col-md-4" filter-type='co' category-name='{{categories | join: '+'}}'>
|
||||
<div class="np-card-container">
|
||||
{% if course.ribbon %}
|
||||
<div class="np-card-ribbon">
|
||||
{{ course.ribbon }}
|
||||
</div>
|
||||
{% endif %}
|
||||
<img
|
||||
class="np-card-image"
|
||||
alt="{{ course.name }}"
|
||||
src="{{ compressed_image_url }}"
|
||||
>
|
||||
<div class="np-card-content np-card-content-vertical np-card-padding">
|
||||
<p class='categories'>
|
||||
{% for category in course.categories %}
|
||||
{{category.name}}
|
||||
{% endfor %}
|
||||
</p>
|
||||
<h3 class="np-card-content-title">
|
||||
{{ course.name }}
|
||||
</h3>
|
||||
<div class="np-card-content-footer">
|
||||
<div class="np-card-content-progress np-button-color">
|
||||
{% t shared.progress, count: course.progress %}
|
||||
</div>
|
||||
{% capture course_path %}{% route course, id: course.id %}{% endcapture %}
|
||||
{% if course.has_to_restart? %}
|
||||
{% include "course_version_outdated_popup", path: course_path %}
|
||||
{% endif %}
|
||||
<a class="np-button np-button-wide" href="{{ course_path }}">
|
||||
{% t shared.view %}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.categories {
|
||||
margin: 0;
|
||||
}
|
||||
.np-card {
|
||||
min-height: 0;
|
||||
min-width: 0;
|
||||
}
|
||||
@media screen and (min-width: 768px) {
|
||||
.np-grid-spacing {
|
||||
padding-left: 3%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,23 @@
|
||||
<div class="np-card">
|
||||
<div class="np-card-container">
|
||||
<img
|
||||
class="np-card-image"
|
||||
alt="{{ learning_path.name }}"
|
||||
src="{{ learning_path.image_url }}"
|
||||
>
|
||||
<div class="np-card-content np-card-content-vertical np-card-padding">
|
||||
<h3 class="np-card-content-title">
|
||||
{{ learning_path.name }}
|
||||
</h3>
|
||||
<div class="np-card-content-footer">
|
||||
<div class="np-card-content-progress np-button-color">
|
||||
{% t shared.progress, count: learning_path.progress %}
|
||||
</div>
|
||||
{% capture learning_path_path %}{% route learning_path, id: learning_path.id %}{% endcapture %}
|
||||
<a class="np-button np-button-wide" href="{{ learning_path_path }}">
|
||||
{% t shared.view %}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,44 @@
|
||||
{% assign categories = '' | split: '' %}
|
||||
{% for cat in learning_path.categories %}
|
||||
{% assign cat_name = cat.name | split: '!@#$%^&*()' %}
|
||||
{% assign categories = categories | concat: cat_name %}
|
||||
{% endfor %}
|
||||
{% assign compressed_image_url = learning_path.image_url | replace: "resize=width:820,height:500", "resize=width:500,height:305" %}
|
||||
<div class="np-card np-grid-spacing col-xs-12 col-sm-6 col-md-4" filter-type='lp' category-name='{{categories | join: '+'}}'>
|
||||
<div class="np-card-container">
|
||||
<img
|
||||
class="np-card-image"
|
||||
alt="{{ learning_path.name }}"
|
||||
src="{{ compressed_image_url }}"
|
||||
>
|
||||
<div class="np-card-content np-card-content-vertical np-card-padding">
|
||||
<p class='categories'>
|
||||
{% for category in learning_path.categories %}
|
||||
{{category.name}}
|
||||
{% endfor %}
|
||||
</p>
|
||||
<h3 class="np-card-content-title">
|
||||
{{ learning_path.name }}
|
||||
</h3>
|
||||
<div class="np-card-content-footer">
|
||||
<div class="np-card-content-progress np-button-color">
|
||||
{% t shared.progress, count: learning_path.progress %}
|
||||
</div>
|
||||
{% capture learning_path_path %}{% route learning_path, id: learning_path.id %}{% endcapture %}
|
||||
<a class="np-button np-button-wide" href="{{ learning_path_path }}">
|
||||
{% t shared.view %}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.categories {
|
||||
margin: 0;
|
||||
}
|
||||
.np-card {
|
||||
min-height: 0;
|
||||
min-width: 0;
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,23 @@
|
||||
<div class='np-card'>
|
||||
<div class='event-header'>
|
||||
<div class='event-header-left'>
|
||||
<i class="far fa-thin fa-users"></i>
|
||||
</div>
|
||||
<div class='event-header-right'>
|
||||
<div class='event-header-right-type'>
|
||||
Other Event
|
||||
</div>
|
||||
<div class='event-header-right-title'>
|
||||
{{ title }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='other-event-sessions'>
|
||||
<div class='event-session'>
|
||||
<div class='event-session-number' style="padding-bottom: 25px">
|
||||
Click here for more information:
|
||||
</div>
|
||||
<a class='event-button' href="{{ link }}">Click here</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,36 @@
|
||||
<div class='np-card'>
|
||||
<div class='event-header'>
|
||||
<div class='event-header-left'>
|
||||
<i class="far fa-thin fa-users"></i>
|
||||
</div>
|
||||
<div class='event-header-right'>
|
||||
<div class='event-header-right-type'>
|
||||
ZoomWebinar
|
||||
</div>
|
||||
<div class='event-header-right-title'>
|
||||
{{ training_event.title }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class='event-sessions'>
|
||||
{% assign session_number = 0%}
|
||||
{% for session in training_event.sessions limit: 2 %}
|
||||
{% assign session_number = session_number | plus: 1 %}
|
||||
<div class='event-session'>
|
||||
<div class='event-session-number'>
|
||||
Session {{session_number}}
|
||||
</div>
|
||||
<a class='event-session-date' href="{% route training_session, id: session.id %}">
|
||||
{{ session.month }} {{ session.day }} at {{ session.starts }} {{ session.time_zone }}
|
||||
</a>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% if training_event.sessions.size > 2 %}
|
||||
{% assign third_session = training_event.sessions | slice: 2 | map: 'id' %}
|
||||
<a class='event-additional-sessions' href="{% route training_session, id: third_session %}">
|
||||
{{ training_event.sessions.size | minus: 2 }} additional sessions
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
<a class='event-button' href="{% route training_session, id: training_event.sessions.first.id %}">Select</a>
|
||||
</div>
|
||||
@ -0,0 +1,30 @@
|
||||
<div class="np-card-container">
|
||||
<div class="np-resource-header np-course-header np-card-padding-large">
|
||||
{% include "course_header" %}
|
||||
</div>
|
||||
<div class="row np-course-content np-card-padding-dynamic">
|
||||
<div class="col-xs-12 col-sm-6">
|
||||
<img
|
||||
src="{{ course.image_url }}"
|
||||
class="np-top-image np-top-image-spacing"
|
||||
alt="{{ course.name }}"
|
||||
/>
|
||||
{% include "course_description" %}
|
||||
{% if course.categories.any? %}
|
||||
{% include "course_categories" %}
|
||||
{% endif %}
|
||||
{% if course.instructors.any? %}
|
||||
{% include "course_instructors" %}
|
||||
{% endif %}
|
||||
{% if course.events.any? %}
|
||||
{% include "course_events" %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="np-grid-spacing col-xs-12 col-sm-6">
|
||||
<div class="np-top-cta">
|
||||
{% include "course_progress_and_cta" %}
|
||||
</div>
|
||||
{% include "course_outline" %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,29 @@
|
||||
<h3 class="np-card-heading">
|
||||
{% t .header %}
|
||||
</h3>
|
||||
<div class="np-flex-column">
|
||||
{% for event in course.events %}
|
||||
<div class="np-course-events-content-item">
|
||||
<div class="np-course-events-content-date np-button-background-color">
|
||||
<div class="np-course-events-content-month">
|
||||
{{ event.sessions.first.abbreviated_month }}
|
||||
</div>
|
||||
<div class="np-course-events-content-day">
|
||||
{{ event.sessions.first.day }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="np-course-events-content-details">
|
||||
<div class="np-course-events-content-name">
|
||||
{{ event.title }}
|
||||
</div>
|
||||
<div class="np-course-events-content-type np-text-light">
|
||||
{% t shared.event_types, key: event.event_type %}
|
||||
</div>
|
||||
<div class="np-course-events-content-time np-button-color">
|
||||
<a href="{{ event.sessions.first.session_url }}">
|
||||
Register: {{ event.sessions.first.time_period }} {{ event.sessions.first.time_zone }}</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
@ -0,0 +1,69 @@
|
||||
<div class="np-course-outline">
|
||||
<div class="np-text-title np-course-outline-title">
|
||||
{% t .header, key: current_school.course_vocabulary %}
|
||||
</div>
|
||||
<div class='np-text-subtitle' style='padding-bottom: 15px;'>
|
||||
(Click on section title to expand and view learning activities)
|
||||
</div>
|
||||
<div class="np-course-outline-content">
|
||||
<ol class="np-course-outline-content-section">
|
||||
{% for section in course.sections %}
|
||||
<li class="np-course-outline-content-section-list">
|
||||
<div class="np-course-outline-content-section-name np-text-title-bold np-text-title-bold">
|
||||
<i class="fa fa-caret-right section-arrow"></i>
|
||||
<i class="fa fa-caret-down section-arrow np-hidden"></i>
|
||||
{{ section.name }}
|
||||
</div>
|
||||
<ol class="np-course-outline-content-activity np-hidden">
|
||||
{% for activity in section.activities %}
|
||||
|
||||
<li class="np-course-outline-content-activity-list">
|
||||
{% if activity.completed? %}
|
||||
<i class="fas fa-circle np-course-outline-content-activity-icon np-button-color"></i>
|
||||
{% if activity.locked? %}
|
||||
{% include "course_activity_locked" %}
|
||||
{% else %}
|
||||
{% include "course_activity_unlocked", class: "np-course-outline-content-activity-link-completed" %}
|
||||
{% endif %}
|
||||
<div class="np-button-background-color np-course-outline-content-activity-list-bar"></div>
|
||||
{% else %}
|
||||
<i class="far fa-circle np-course-outline-content-activity-icon"></i>
|
||||
{% if activity.locked? %}
|
||||
{% include "course_activity_locked" %}
|
||||
{% else %}
|
||||
{% include "course_activity_unlocked", class: "np-course-outline-content-activity-link" %}
|
||||
{% endif %}
|
||||
<div class="np-course-outline-content-activity-list-bar"></div>
|
||||
{% endif %}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<style>
|
||||
.np-course-outline-content-section-name {
|
||||
cursor: pointer;
|
||||
border: none;
|
||||
}
|
||||
.np-course-outline-content > *, .np-course-outline-content-activity-list > *, .np-course-outline-title {
|
||||
color: #9b4b87;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
.np-course-outline-content-activity-icon {
|
||||
color: #d4d4d4;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
window.onload = function() {
|
||||
$('.np-course-outline-content-section-name').click(function() {
|
||||
$(this).children('.section-arrow').toggleClass('np-hidden');
|
||||
$(this).siblings('.np-course-outline-content-activity').toggleClass('np-hidden');
|
||||
});
|
||||
};
|
||||
</script>
|
||||
@ -0,0 +1,70 @@
|
||||
<footer class="np-footer">
|
||||
<div class="np-footer-top">
|
||||
{% if website_footer.show_navigation_links? %}
|
||||
<div class="np-footer-navigation">
|
||||
<ul class="np-footer-navigation-list">
|
||||
{% for website_navigation in navigations.footer_navigations %}
|
||||
<li class="np-footer-navigation-item">
|
||||
<a
|
||||
class="np-footer-navigation-link np-button-color"
|
||||
href="{{ website_navigation.path }}"
|
||||
{% if website_navigation.external? %} target="_blank" {% endif %}
|
||||
>
|
||||
{{ website_navigation.name }}
|
||||
</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if current_school.logo_url %}
|
||||
<h2 class="np-footer-logo">
|
||||
<a href="{% route home %}">
|
||||
<img
|
||||
alt="{{ current_school.name }}"
|
||||
class="np-footer-logo-image"
|
||||
src="{{ current_school.logo_url }}"
|
||||
/>
|
||||
</a>
|
||||
</h2>
|
||||
{% else %}
|
||||
<div class="np-school-name np-header-font-color">
|
||||
{{ current_school.name }}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<style>
|
||||
.np-footer-navigation-list {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.np-footer {
|
||||
padding: 0.5rem 4% 0;
|
||||
border-top: 1px solid #ededed !important;
|
||||
}
|
||||
.np-footer-navigation-link {
|
||||
padding: 0 1.25rem 1.25rem;
|
||||
}
|
||||
.np-footer-navigation-link:hover {
|
||||
color: #4b2346;
|
||||
}
|
||||
.np-powered-by {
|
||||
padding-bottom: 0.75rem;
|
||||
background: white;
|
||||
}
|
||||
@media screen and (min-width: 768px) {
|
||||
.np-footer-navigation {
|
||||
margin: 0 -1.25rem;
|
||||
}
|
||||
.np-footer-logo {
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
.np-footer-navigation-link {
|
||||
padding: 0 1.25rem;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,12 @@
|
||||
<div class="np-dashboard-resources">
|
||||
<div class="row row-with-thumbnails">
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_other_event" title: "Getting Started with Fulfillment", link:
|
||||
"https://trainingcenter.spscommerce.com/courses/ccc29da0-f636-4a96-bfca-52d37e1b1ec6/activities/b308e860-f2b5-418c-a29a-3a722af5b3bf" %}
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_other_event" title: "Fulfillment Product Training", link:
|
||||
"https://trainingcenter.spscommerce.com/learning_paths/507e6357-039e-480d-88d1-296bb1ad5afa/courses/d85478a2-34f6-49eb-b511-dfa28319e6b8/activities/d9b2ac9f-bcf0-4469-aa71-08d9a1fb2ccf" %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,8 @@
|
||||
{% styles default %}
|
||||
{% styles colors %}
|
||||
{% styles custom %}
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
|
||||
<link rel="stylesheet" media="all" href="https://s3.amazonaws.com/spscops/trainingcenter/styles/site-styles.css">
|
||||
<link href='https://s3.amazonaws.com/spscops/trainingcenter/styles/SourceSansPro-font-styles.css' rel='stylesheet' type='text/css'>
|
||||
<link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,200,900,600' rel='stylesheet' type='text/css'>
|
||||
<script src="https://kit.fontawesome.com/41a3aee3ad.js" crossorigin="anonymous"></script>
|
||||
@ -0,0 +1,429 @@
|
||||
<header class="np-header np-header-color" style='height: 50px;'>
|
||||
<div class="np-header-content">
|
||||
<div class='header-desktop-left'>
|
||||
{% if current_school.logo_url %}
|
||||
<h1 class="np-header-logo">
|
||||
<a href="{% route home %}">
|
||||
<img src="https://schoolkeep-production.s3.amazonaws.com/wysiwyg/c4231bd9-2caa-4eca-bdaa-92cd69c0a35f/20180105100241_logo_1.png" alt="{{ current_school.name }}" style='display: flex;' class='logo-image'>
|
||||
</a>
|
||||
</h1>
|
||||
{% else %}
|
||||
<a href="{% route home %}" class="np-school-name np-header-font-color">
|
||||
{{ current_school.name }}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class='header-desktop-right np-hidden-mobile-new'>
|
||||
<div class="np-header-desktop-nav">
|
||||
<ul class="np-header-desktop-nav-list">
|
||||
{% for website_navigation in navigations.header_navigations_external %}
|
||||
<li class= "np-header-desktop-nav-item">
|
||||
<a
|
||||
href="{{ website_navigation.path }}"
|
||||
class="np-header-desktop-nav-link np-header-font-color"
|
||||
style='font-weight: 700;'
|
||||
>
|
||||
{{ website_navigation.name }}
|
||||
</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% if current_person.signed_in? %}
|
||||
<form action="{% route search %}" method="get" data-test="desktop-search" style="background: white; border-radius: 4px;" class='header-search-form' id='header-search-form'>
|
||||
<input
|
||||
aria-label="{% t .search %}"
|
||||
class="header-search-input"
|
||||
type="text"
|
||||
name="q"
|
||||
placeholder="Search by keyword"
|
||||
/>
|
||||
<button class="far fa-search header-search-button" type="submit" form='header-search-form'></button>
|
||||
</form>
|
||||
<div class="np-hidden-mobile-new np-header-avatar">
|
||||
<button
|
||||
class="np-header-avatar-button"
|
||||
data-test="open-desktop-menu"
|
||||
data-toggle-class-on-target="np-hidden"
|
||||
data-toggle-target=".np-header-avatar-tooltip"
|
||||
data-toggle-outside
|
||||
style='color: white; font-weight: 700;'
|
||||
>
|
||||
{{ current_person.name }}
|
||||
</button>
|
||||
<div class="np-header-avatar-tooltip np-hidden" role="tooltip">
|
||||
<span class="np-header-avatar-tooltip-arrow-up"></span>
|
||||
<div class="np-header-avatar-tooltip-learner">
|
||||
<div class="np-header-avatar-tooltip-learner-name">
|
||||
{{ current_person.name }}
|
||||
</div>
|
||||
<div class="np-header-avatar-tooltip-learner-email">
|
||||
{{ current_person.email }}
|
||||
</div>
|
||||
</div>
|
||||
<nav class="np-header-avatar-tooltip-navigation">
|
||||
{% unless current_school.sso_active? %}
|
||||
<a
|
||||
class="np-header-avatar-tooltip-navigation-link"
|
||||
href="{% route account %}"
|
||||
>
|
||||
{% t .profile_settings %}
|
||||
</a>
|
||||
{% endunless %}
|
||||
<a
|
||||
class="np-header-avatar-tooltip-navigation-link np-danger"
|
||||
href="{% route logout %}"
|
||||
>
|
||||
{% t .sign_out %}
|
||||
</a>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<a
|
||||
class="np-header-sign-in np-header-desktop-nav-link np-header-font-color"
|
||||
aria-label="{% t shared.sign_in %}"
|
||||
href="{% route login %}"
|
||||
>
|
||||
{% t shared.sign_in %}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class='np-header-right-mobile np-hidden-desktop-new'>
|
||||
<i class="mobile-search-button far fa-search" id='mobile-search-button'></i>
|
||||
<i class="mobile-menu-button fas fa-bars" id='mobile-menu-button'></i>
|
||||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<div class='bottom-header-search np-hidden np-hidden-desktop-new' id='menu-mobile-search-menu'>
|
||||
<form action="{% route search %}" method="get" data-test="desktop-search" style="background: white; border-radius: 4px;" class='menu-mobile-search-form' id='menu-mobile-search-form'>
|
||||
<input
|
||||
aria-label="{% t .search %}"
|
||||
class="menu-mobile-search-input"
|
||||
type="text"
|
||||
name="q"
|
||||
placeholder="Search by keyword"
|
||||
/>
|
||||
<button class="far fa-search menu-mobile-search-button" type="submit" form='menu-mobile-search-form'></button>
|
||||
</form>
|
||||
<i class="menu-mobile-close fas fa-times"></i>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="np-hidden-desktop-new np-hidden" id='mobile-menu-menu'>
|
||||
<i class="mobile-menu-close fas fa-times" id='mobile-menu-close'></i>
|
||||
<ul class="mobile-menu-list">
|
||||
{% for website_navigation in navigations.header_navigations_external %}
|
||||
<li class='mobile-menu-list-li'>
|
||||
<a href="{{ website_navigation.path }}" class='mobile-menu-list-element'>
|
||||
{{ website_navigation.name }}
|
||||
</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
<li class='mobile-menu-list-li'><a href="/app/account" class='mobile-menu-list-element'>My Profile</a></li>
|
||||
<li style='border-bottom: 1px solid #1a1a1a;'></li>
|
||||
<li class='mobile-menu-list-li'><a href="{% route logout %}" data-method="delete" rel="nofollow" class='mobile-menu-list-element'>Log Out</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
{% include "messages" %}
|
||||
<div class="main_site">
|
||||
|
||||
<style>
|
||||
.np-header-content {
|
||||
justify-content: space-between;
|
||||
}
|
||||
.header-desktop-right {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
}
|
||||
.np-header-search {
|
||||
align-self: center;
|
||||
}
|
||||
.np-header-right-mobile {
|
||||
display: flex;
|
||||
}
|
||||
.np-header-search-icon:before {
|
||||
font-weight: 700;
|
||||
color: gray;
|
||||
}
|
||||
|
||||
.mobile-menu-button {
|
||||
font-size: 1.5rem;
|
||||
color: white;
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.mobile-search-button {
|
||||
padding: 10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.mobile-search-button:before {
|
||||
color: white;
|
||||
font-weight: 700;
|
||||
font-size: 1.25rem;
|
||||
align-self: center;
|
||||
}
|
||||
.bottom-header-search {
|
||||
background: #00aae5;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.header-search-form {
|
||||
height: 40px;
|
||||
display: flex;
|
||||
width: 20%;
|
||||
margin: auto;
|
||||
}
|
||||
.header-search-input {
|
||||
padding-left: 15px;
|
||||
border: none;
|
||||
width: 100%;
|
||||
background: none;
|
||||
}
|
||||
.header-search-input:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
.header-search-icon {
|
||||
right: .75rem;
|
||||
top: 0.6rem;
|
||||
|
||||
}
|
||||
.header-search-icon:before {
|
||||
color: darkgray;
|
||||
}
|
||||
.header-search-button {
|
||||
width: 60px;
|
||||
font-size: 20px;
|
||||
font-weight: 700;
|
||||
color: gray;
|
||||
background: none;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.menu-mobile-search-form {
|
||||
height: 40px;
|
||||
display: flex;
|
||||
width: 70%;
|
||||
margin: auto;
|
||||
}
|
||||
.menu-mobile-search-input {
|
||||
padding-left: 15px;
|
||||
border: none;
|
||||
width: 100%;
|
||||
background: none;
|
||||
}
|
||||
.menu-mobile-search-input:focus-visible {
|
||||
outline: none;
|
||||
}
|
||||
.menu-mobile-search-icon {
|
||||
right: .75rem;
|
||||
top: 0.6rem;
|
||||
}
|
||||
.menu-mobile-search-icon:before {
|
||||
color: darkgray;
|
||||
}
|
||||
.menu-mobile-search-button {
|
||||
width: 60px;
|
||||
font-size: 20px;
|
||||
font-weight: 700;
|
||||
color: gray;
|
||||
background: none;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
.menu-mobile-close {
|
||||
z-index: 100;
|
||||
position: absolute;
|
||||
padding: 15px;
|
||||
font-size: 20px;
|
||||
padding: auto;
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
right: 5px;
|
||||
cursor: pointer;
|
||||
}
|
||||
#mobile-menu-menu {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: -256px;
|
||||
width: 256px;
|
||||
background: #3b3f3d;
|
||||
z-index: 10000;
|
||||
height: 100%;
|
||||
pointer-events: all;
|
||||
}
|
||||
.mobile-menu-close {
|
||||
color: white;
|
||||
font-size: 1.5rem;
|
||||
top: 13px;
|
||||
position: absolute;
|
||||
left: 15px;
|
||||
}
|
||||
.mobile-menu-list {
|
||||
list-style-type: none;
|
||||
margin-top: 40px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
.mobile-menu-list-element {
|
||||
color: #ccc;
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
|
||||
}
|
||||
.mobile-menu-list-li:hover * {
|
||||
color: #ffffff;
|
||||
text-shadow: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
.mobile-menu-list-li:hover {
|
||||
background: #9b4b87;
|
||||
}
|
||||
.mobile-menu-list-li {
|
||||
padding: 8px 16px;
|
||||
}
|
||||
.np-header-desktop-nav-list {
|
||||
flex-wrap: nowrap;
|
||||
}
|
||||
@media screen and (min-width: 1056px) {
|
||||
.np-hidden-desktop-new {
|
||||
display: none !important;
|
||||
}
|
||||
.np-header-search-input {
|
||||
background:#fff;
|
||||
border:2px solid #bac4ca;
|
||||
border-radius:4px;
|
||||
color:#486776;
|
||||
font-size:15px;
|
||||
opacity:1;
|
||||
outline:none;
|
||||
padding:0 1.5rem 0 1rem;
|
||||
width:90%;
|
||||
height: 2.5rem;
|
||||
}
|
||||
.np-header-search-input::placeholder {
|
||||
color: black;
|
||||
}
|
||||
.np-header-search-input:focus {
|
||||
width: 90%;
|
||||
padding:0 1.5rem 0 1rem;
|
||||
}
|
||||
}
|
||||
@media (min-width:1643px) and (max-width:1738px) {
|
||||
.header-search-form {
|
||||
width: 14%;
|
||||
}
|
||||
}
|
||||
@media (min-width:1472px) and (max-width:1610px) {
|
||||
.header-search-form {
|
||||
width: 14%;
|
||||
}
|
||||
}
|
||||
@media (min-width:0px) and (max-width:1311px) {
|
||||
.header-search-form {
|
||||
width: 14%;
|
||||
}
|
||||
.header-search-input::placeholder {
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
||||
@media (min-width:1472px) and (max-width:1643px) {
|
||||
.np-header-desktop-nav-item {
|
||||
padding: 1rem 0.5rem;
|
||||
}
|
||||
.np-header-avatar-button {
|
||||
margin: 0 0 0 0.5rem;
|
||||
}
|
||||
}
|
||||
@media (min-width:1472px) and (max-width:1550px) {
|
||||
.np-header-desktop-nav-link {
|
||||
font-size: 14px;
|
||||
}
|
||||
.np-header-avatar-button {
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
@media (min-width:1056px) and (max-width:1472px) {
|
||||
.np-header-content {
|
||||
flex-direction: column;
|
||||
align-items: unset;
|
||||
}
|
||||
.np-header {
|
||||
height: 100px !important;
|
||||
}
|
||||
.np-header-logo {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.header-desktop-left {
|
||||
margin-top: 1.5rem;
|
||||
}
|
||||
.header-desktop-right {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.np-header-desktop-nav-list {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
@media (min-width:1056px) and (max-width:1220px) {
|
||||
.np-header-desktop-nav-item {
|
||||
padding: 1rem 0.5rem;
|
||||
}
|
||||
.np-header-avatar-button {
|
||||
margin: 0 0 0 0.5rem;
|
||||
}
|
||||
}
|
||||
@media (min-width:1056px) and (max-width:1118px) {
|
||||
.np-header-desktop-nav-link {
|
||||
font-size: 14px;
|
||||
}
|
||||
.np-header-avatar-button {
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1055px) {
|
||||
.np-hidden-mobile-new {
|
||||
display: none !important;
|
||||
}
|
||||
.np-header-content {
|
||||
flex-direction: row;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 445px) {
|
||||
.logo-image {
|
||||
width: 250px;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 400px) {
|
||||
.menu-mobile-search-form {
|
||||
width: 85%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
var a = $("#mobile-menu-menu").children()
|
||||
var a = a.add($("#mobile-menu-menu"))
|
||||
$("#mobile-search-button").click(function() {
|
||||
$("#menu-mobile-search-menu").toggleClass('np-hidden');
|
||||
});
|
||||
$(".menu-mobile-close").click(function() {
|
||||
$("#menu-mobile-search-menu").toggleClass('np-hidden');
|
||||
});
|
||||
$("#mobile-menu-button").click(function() {
|
||||
$("#mobile-menu-menu").toggleClass('np-hidden');
|
||||
window.onscroll = function () { window.scrollTo(0, 0); };
|
||||
$('body').css({position: 'relative', left: '-256px'});
|
||||
$("#mobile-menu-menu")
|
||||
$('body:not(a)').css({pointerEvents: 'none', filter: 'grayscale(40%)'});
|
||||
})
|
||||
$('#mobile-menu-close').click(function(){
|
||||
$('body').css({position: '', left: '', filter: ''});
|
||||
$('body:not(a)').css({pointerEvents: ''});
|
||||
window.onscroll = function() {}
|
||||
$("#mobile-menu-menu").toggleClass('np-hidden');
|
||||
})
|
||||
</script>
|
||||
@ -0,0 +1,55 @@
|
||||
{% if learning_path.enrolled? and course.unlocked? %}
|
||||
<a
|
||||
class="np-learning-path-outline-item np-card-container"
|
||||
href="{% route learning_path_course, learning_path_id: learning_path.id, id: course.id %}"
|
||||
>
|
||||
<div class="np-card-content np-card-padding">
|
||||
<img
|
||||
src="{{ item.image }}"
|
||||
alt="{{ course.name }}"
|
||||
class="np-learning-path-outline-course-image"
|
||||
>
|
||||
<div class="np-learning-path-outline-content">
|
||||
<div class="np-learning-path-outline-name np-top-title">
|
||||
{{ course.name }}
|
||||
</div>
|
||||
{% if course.instructors %}
|
||||
<div class="np-learning-path-outline-caption">
|
||||
{{ course.instructors }}
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="np-learning-path-outline-progress
|
||||
{% if course.completed? %} np-color-success {% else %} np-button-color {% endif %}
|
||||
">
|
||||
{% t shared.progress, count: course.progress %}
|
||||
</div>
|
||||
</div>
|
||||
<i class="fas fa-chevron-right np-learning-path-outline-icon"></i>
|
||||
{% if course.optional? %}
|
||||
<div class="np-optional-ribbon">
|
||||
{% t shared.optional %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</a>
|
||||
{% else %}
|
||||
<div class="np-learning-path-outline-item np-learning-path-outline-inactive-item np-card-container">
|
||||
<div class="np-card-content np-card-padding">
|
||||
<img
|
||||
src="{{ item.image }}"
|
||||
alt="{{ course.name }}"
|
||||
class="np-learning-path-outline-course-image"
|
||||
>
|
||||
<div class="np-learning-path-outline-content">
|
||||
<div class="np-learning-path-outline-name np-top-title">
|
||||
{{ course.name }}
|
||||
</div>
|
||||
</div>
|
||||
{% if course.optional? %}
|
||||
<div class="np-optional-ribbon">
|
||||
{% t shared.optional %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
@ -0,0 +1,52 @@
|
||||
{% if learning_path.enrolled? and training_session.unlocked? %}
|
||||
<a
|
||||
class="np-learning-path-outline-item np-card-container"
|
||||
href="{% route training_session, id: training_session.id %}"
|
||||
>
|
||||
<div class="np-card-content np-card-padding">
|
||||
<div class="np-events-content-date np-button-background-color">
|
||||
<div class="np-events-content-month">
|
||||
{{ training_session.month }}
|
||||
</div>
|
||||
<div class="np-events-content-day">
|
||||
{{ training_session.day }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="np-learning-path-outline-content">
|
||||
<div class="np-learning-path-outline-name np-top-title">{{ training_session.name }}</div>
|
||||
<div class="np-learning-path-outline-caption">{{ training_session.instructors }}</div>
|
||||
<div class="np-events-content-time np-learning-path-outline-time np-button-color">
|
||||
{{ training_session.time }} {{ training_session.time_zone }}
|
||||
</div>
|
||||
</div>
|
||||
<i class="fas fa-chevron-right np-learning-path-outline-icon"></i>
|
||||
{% if training_session.optional? %}
|
||||
<div class="np-optional-ribbon">
|
||||
{% t shared.optional %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</a>
|
||||
{% else %}
|
||||
<div class="np-learning-path-outline-item np-card-container np-learning-path-outline-inactive-item">
|
||||
<div class="np-card-content np-card-padding">
|
||||
<div class="np-events-content-date np-button-background-color">
|
||||
<div class="np-events-content-month">
|
||||
{{ training_session.month }}
|
||||
</div>
|
||||
<div class="np-events-content-day">
|
||||
{{ training_session.day }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="np-learning-path-outline-content">
|
||||
<div class="np-learning-path-outline-name np-top-title">{{ training_session.name }}</div>
|
||||
<div class="np-learning-path-outline-caption">{{ training_session.caption }}</div>
|
||||
</div>
|
||||
{% if training_session.optional? %}
|
||||
<div class="np-optional-ribbon">
|
||||
{% t shared.optional %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
@ -0,0 +1,16 @@
|
||||
{% if learning_paths.available.any? %}
|
||||
<div class="np-catalog-courses row row-with-thumbnails">
|
||||
{% for learning_path in learning_paths.available %}
|
||||
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
|
||||
{% include "cards_learning_path" with learning_path %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% capture message %}
|
||||
{% t shared.zero_state.courses.catalog,
|
||||
key: current_school.course_vocabulary
|
||||
%}
|
||||
{% endcapture %}
|
||||
{% include "courses_zero_state", message: message %}
|
||||
{% endif %}
|
||||
@ -0,0 +1,13 @@
|
||||
<div class="np-dashboard-resources">
|
||||
<div class="row row-with-thumbnails">
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_other_event" title: "SPS Commerce presents MAPADOC Training for Sage 100", link: "https://www.spscommerce.com/lp/mapadoc-training-sage-100/" %}
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_other_event" title: "SPS Commerce presents MAPADOC Training for Sage X3", link: "https://www.spscommerce.com/lp/mapadoc-training-sage-x3/" %}
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_other_event" title: "SPS Commerce presents MAPADOC Training for Sage 500", link: "https://www.spscommerce.com/lp/mapadoc-training-sage-500/" %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,41 @@
|
||||
<div class="np-dashboard-resources">
|
||||
{% if training_events.available.any? %}
|
||||
<div class="row row-with-thumbnails">
|
||||
{% for training_event in training_events.available %}
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_training_event" with training_event %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% include "training_events_zero_state" %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<style>
|
||||
.event-card {
|
||||
padding: 1rem 3rem;
|
||||
}
|
||||
@media screen and (max-width: 1450px) {
|
||||
.event-card {
|
||||
padding: 1rem 2rem;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 768px) {
|
||||
.event-card {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 0.5rem 0;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 500px) {
|
||||
.event-card {
|
||||
padding: 0.5rem 1rem;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 350px) {
|
||||
.event-card {
|
||||
padding: 0.5rem 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
@ -0,0 +1,41 @@
|
||||
<div class="np-dashboard-resources">
|
||||
{% if training_events.available.any? %}
|
||||
<div class="row row-with-thumbnails">
|
||||
{% for training_event in training_events.available %}
|
||||
<div class="col-xs-12 col-sm-6 col-lg-4 event-card">
|
||||
{% include "cards_training_event" with training_event %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
{% include "training_events_zero_state" %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<style>
|
||||
.event-card {
|
||||
padding: 1rem 3rem;
|
||||
}
|
||||
@media screen and (max-width: 1450px) {
|
||||
.event-card {
|
||||
padding: 1rem 2rem;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 768px) {
|
||||
.event-card {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 0.5rem 0;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 500px) {
|
||||
.event-card {
|
||||
padding: 0.5rem 1rem;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 350px) {
|
||||
.event-card {
|
||||
padding: 0.5rem 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
@ -0,0 +1,34 @@
|
||||
{% include "header" %}
|
||||
{% include "course_version_outdated_alert", courses: courses.in_catalog %}
|
||||
{% include "sub_navigation" %}
|
||||
<main class="np-main np-dashboard np-subpage-container np-max-width">
|
||||
<div class="np-catalog-header-wrapper">
|
||||
<div class="np-catalog-header">
|
||||
<div class="np-resource-title">{{ catalog.headline }}</div>
|
||||
<div class="np-resource-subtitle">{{ catalog.subheadline }}</div>
|
||||
</div>
|
||||
{% capture label %}{% t shared.filters.by_category %}{% endcapture %}
|
||||
|
||||
{% if courses.in_catalog.any? %}
|
||||
{%
|
||||
include "filter_dropdown",
|
||||
filters: courses.filters,
|
||||
key: "category_uuid",
|
||||
label: label
|
||||
%}
|
||||
{% endif %}
|
||||
</div>
|
||||
{% include "courses_catalog" %}
|
||||
</main>
|
||||
{% include "footer" %}
|
||||
|
||||
<style>
|
||||
.np-dashboard {
|
||||
background: white;
|
||||
}
|
||||
@media screen and (min-width: 768px) {
|
||||
.np-grid-spacing {
|
||||
padding-left: 3%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,60 @@
|
||||
{% include "header_minimal" %}
|
||||
<main class="np-main np-max-width np-page-container">
|
||||
<div class="np-hidden-mobile" id="course-desktop">
|
||||
{% include "course_desktop_view" %}
|
||||
</div>
|
||||
<div class="np-hidden-desktop" id="course-mobile">
|
||||
{% include "course_mobile_view" %}
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<style>
|
||||
body {
|
||||
background-image: url(https://s3.amazonaws.com/static.northpass.com/SPS/sps-background.gif);
|
||||
}
|
||||
.np-card-padding-large {
|
||||
box-shadow: none;
|
||||
}
|
||||
.np-card-container,
|
||||
.np-card-container-training-session {
|
||||
border-radius: 4px;
|
||||
box-shadow: none;
|
||||
position: relative;
|
||||
}
|
||||
.np-learning-path-outline-icon {
|
||||
align-self: center;
|
||||
font-size: 40px;
|
||||
color: #9b4b87;
|
||||
}
|
||||
.np-box-header {
|
||||
height: 80px;
|
||||
}
|
||||
.np-powered-by {
|
||||
background: none;
|
||||
}
|
||||
.np-card-container, .np-card-container-training-session {
|
||||
background: none;
|
||||
}
|
||||
.np-top-cta {
|
||||
background: rgba(229, 233, 235, 0.5);
|
||||
}
|
||||
.np-card-text {
|
||||
background: rgba(255, 255, 255, 0.5);
|
||||
}
|
||||
.np-course-outline {
|
||||
background: rgba(255, 255, 255, 0.5);
|
||||
}
|
||||
@media screen and (max-width: 835px) {
|
||||
.col-sm-6 {
|
||||
max-width: 45%;
|
||||
}
|
||||
.np-card-padding, .np-card-padding-dynamic {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 765px) {
|
||||
.np-box-header {
|
||||
height: 60px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,291 @@
|
||||
{% include "header" %}
|
||||
{% include "course_version_outdated_alert", courses: courses.enrolled %}
|
||||
{% include "sub_navigation" %}
|
||||
<main class="np-main np-dashboard np-subpage-container np-max-width">
|
||||
<div class="row np-flex-center">
|
||||
<div class='my-webinars'>
|
||||
<div class='section-title'>
|
||||
My Webinars
|
||||
</div>
|
||||
{% if training_events.enrolled and training_events.enrolled.size > 0 %}
|
||||
{% for training_event in training_events.enrolled %}
|
||||
{% for session in training_event.sessions %}
|
||||
{% if session.registered? %}
|
||||
<div class='dashboard-event'>
|
||||
On {{ session.month }} {{ session.day }} at {{ session.starts }} {{ session.time_zone }} is your {{ session.title }} event that is being held online
|
||||
<a href='{{ session.session_url }}' class='dashboard-event-link'>Join</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<div class='section-none-text'>
|
||||
You haven't registered for any webinars yet.
|
||||
</div>
|
||||
<button class='section-none-button'>
|
||||
<a class="section-none-link" href="/app/training_events">
|
||||
Discover Webinars
|
||||
</a>
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class='my-paths'>
|
||||
<div class='section-title'>
|
||||
My Paths
|
||||
</div>
|
||||
<div class='section-subtitle'>
|
||||
Learning Paths in which you're currently enrolled
|
||||
</div>
|
||||
{% if learning_paths.enrolled and learning_paths.enrolled.size > 0 %}
|
||||
<div class='section-content'>
|
||||
<div class='filter-section'>
|
||||
<div class='filter-title'>Filter by:</div>
|
||||
{% assign lp_categories = '' | split: '' %}
|
||||
{% for lp in learning_paths.enrolled %}
|
||||
{% for cat in lp.categories %}
|
||||
{% assign cat_name = cat.name | split: '!@#$%^&*()' %}
|
||||
{% assign lp_categories = lp_categories | concat: cat_name %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% assign lp_categories = lp_categories | uniq %}
|
||||
<div class='filter-element filter-element-selected' filter-type='lp' category-name='none'>
|
||||
All
|
||||
</div>
|
||||
{% for cat in lp_categories %}
|
||||
<div class='filter-element' filter-type='lp' category-name='{{cat}}'>
|
||||
{{cat}}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class='tiles-section'>
|
||||
{% for learning_path in learning_paths.enrolled %}
|
||||
{% include 'cards_learning_path_new' with learning_path %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class='section-none-text'>
|
||||
You haven't enrolled into any learning_paths yet.
|
||||
</div>
|
||||
<button class='section-none-button'>
|
||||
<a class="section-none-link" href="/app/learning_paths">
|
||||
Discover Paths
|
||||
</a>
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class='my-courses'>
|
||||
<div class='section-title'>
|
||||
My Courses
|
||||
</div>
|
||||
<div class='section-subtitle'>
|
||||
Courses in which you're currently enrolled
|
||||
</div>
|
||||
{% if courses.enrolled and courses.enrolled.size > 0 %}
|
||||
<div class='section-content'>
|
||||
<div class='filter-section'>
|
||||
<div class='filter-title'>Filter by:</div>
|
||||
{% assign lp_categories = '' | split: '' %}
|
||||
{% for lp in courses.enrolled %}
|
||||
{% for cat in lp.categories %}
|
||||
{% assign cat_name = cat.name | split: '!@#$%^&*()' %}
|
||||
{% assign lp_categories = lp_categories | concat: cat_name %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% assign lp_categories = lp_categories | uniq %}
|
||||
<div class='filter-element filter-element-selected' filter-type='co' category-name='none'>
|
||||
All
|
||||
</div>
|
||||
{% for cat in lp_categories %}
|
||||
<div class='filter-element' filter-type='co' category-name='{{cat}}'>
|
||||
{{cat}}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class='tiles-section'>
|
||||
{% for course in courses.enrolled %}
|
||||
{% include 'cards_course_new' with course %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class='section-none-text'>
|
||||
You haven't enrolled into any courses yet.
|
||||
</div>
|
||||
<button class='section-none-button'>
|
||||
<a class="section-none-link" href="/app/catalog">
|
||||
Discover Courses
|
||||
</a>
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
{% include "footer" %}
|
||||
|
||||
<style>
|
||||
.np-dashboard {
|
||||
background: white;
|
||||
}
|
||||
.row {
|
||||
flex-direction: column;
|
||||
margin-right: -1rem;
|
||||
margin-left: -1rem;
|
||||
display: inline-block;
|
||||
}
|
||||
.tiles-section {
|
||||
display: flex;
|
||||
width: 100%;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.section-content {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
border-top: 1px solid #ededed !important;
|
||||
padding: 1rem 0;
|
||||
}
|
||||
.section-title {
|
||||
margin-top: 30px;
|
||||
font-size: 24px;
|
||||
font-weight: 600;
|
||||
line-height: 30px;
|
||||
margin-bottom: 15px;
|
||||
color: #444;
|
||||
}
|
||||
.section-subtitle {
|
||||
font-size: 20px;
|
||||
font-weight: 600;
|
||||
line-height: 24px;
|
||||
margin-bottom: 45px;
|
||||
color: #444;
|
||||
}
|
||||
.section-none-text {
|
||||
margin-bottom: 15px;
|
||||
color: #606060;
|
||||
font-size: 16px;
|
||||
}
|
||||
.section-none-button {
|
||||
background: #9b4b87;
|
||||
color: white;
|
||||
padding: 0 20px;
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
font-size: 16px;
|
||||
border: none;
|
||||
border-radius: 2px;
|
||||
cursor: pointer;
|
||||
min-height: 30px;
|
||||
line-height: 39px;
|
||||
margin: 10px 0
|
||||
}
|
||||
.section-none-button:hover {
|
||||
background: #4b2346 !important;
|
||||
}
|
||||
.section-none-link {
|
||||
color: white;
|
||||
text-decoration: none;
|
||||
}
|
||||
.section-none-link:hover {
|
||||
color: white;
|
||||
}
|
||||
.dashboard-event {
|
||||
padding: 10px 0;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.dashboard-event-link {
|
||||
color: #9b4b87;
|
||||
margin-left: 15px;
|
||||
text-decoration: none;
|
||||
}
|
||||
.dashboard-event-link:hover {
|
||||
color: #4b2346;
|
||||
}
|
||||
.filter-section {
|
||||
width: 25%;
|
||||
}
|
||||
.filter-element {
|
||||
color: #9b4b87;
|
||||
font-size: 18px;
|
||||
margin-top: 8px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.filter-element:hover {
|
||||
color: #4b2346;
|
||||
}
|
||||
.filter-element-selected {
|
||||
font-weight: 700;
|
||||
}
|
||||
.filter-title {
|
||||
font-size: 20px;
|
||||
font-weight: 600;
|
||||
}
|
||||
@media (min-width:1200px) and (max-width:1640px) {
|
||||
.row .np-card {
|
||||
padding: 0 1rem 2rem;
|
||||
}
|
||||
}
|
||||
@media (min-width:768px) and (max-width:1200px) {
|
||||
.row .np-card {
|
||||
padding: 0 0.7rem 1.4rem;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 1400px) {
|
||||
.filter-section {
|
||||
width: 20%;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 768px) {
|
||||
.section-content {
|
||||
flex-direction: column;
|
||||
}
|
||||
.filter-section {
|
||||
width: 100%;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
}
|
||||
.np-subpage-container {
|
||||
padding:20px 4% 40px;
|
||||
}
|
||||
.my-webinars {
|
||||
padding: 1rem;
|
||||
border-top: 1px solid #ededed !important;
|
||||
}
|
||||
.my-paths {
|
||||
padding: 1rem;
|
||||
border-top: 1px solid #ededed !important;
|
||||
}
|
||||
.my-courses {
|
||||
padding: 1rem;
|
||||
border-top: 1px solid #ededed !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
<script>
|
||||
$('[filter-type]').each(function(x){
|
||||
$(this).attr('category-name', $(this).attr('category-name').replaceAll(' ', '').replaceAll('+', ' '))
|
||||
})
|
||||
$('.filter-element[filter-type="co"]').click(function(){
|
||||
$('.filter-element[filter-type="co"]').removeClass('filter-element-selected');
|
||||
$(this).toggleClass('filter-element-selected');
|
||||
if($(this).attr('category-name')=='none') {
|
||||
$('.np-card[filter-type="co"]').show()
|
||||
}
|
||||
else {
|
||||
$('.np-card[filter-type="co"]').hide();
|
||||
$('.np-card[category-name~='+$(this).attr('category-name')+'][filter-type="co"]').show()
|
||||
}
|
||||
})
|
||||
$('.filter-element[filter-type="lp"]').click(function(){
|
||||
$('.filter-element[filter-type="lp"]').removeClass('filter-element-selected');
|
||||
$(this).toggleClass('filter-element-selected');
|
||||
if($(this).attr('category-name')=='none') {
|
||||
$('.np-card[filter-type="lp"]').show()
|
||||
}
|
||||
else {
|
||||
$('.np-card[filter-type="lp"]').hide();
|
||||
$('.np-card[category-name~='+$(this).attr('category-name')+'][filter-type="lp"]').show()
|
||||
}
|
||||
})
|
||||
</script>
|
||||
@ -0,0 +1,3 @@
|
||||
<script>
|
||||
window.location.replace("/app/dashboard")
|
||||
</script>
|
||||
@ -0,0 +1,50 @@
|
||||
{% include "header_minimal" %}
|
||||
<main class="np-main np-max-width np-page-container">
|
||||
<div class="np-hidden-mobile" id="learning-path-desktop">
|
||||
{% include "learning_path_desktop_view" %}
|
||||
</div>
|
||||
<div class="np-hidden-desktop" id="learning-path-mobile">
|
||||
{% include "learning_path_mobile_view" %}
|
||||
</div>
|
||||
</main>
|
||||
|
||||
<style>
|
||||
body {
|
||||
background-image: url(https://s3.amazonaws.com/static.northpass.com/SPS/sps-background.gif);
|
||||
}
|
||||
.np-card-padding-large {
|
||||
background: rgba(255, 255, 255, 0.5);
|
||||
box-shadow: none;
|
||||
}
|
||||
.np-card-container,
|
||||
.np-card-container-training-session {
|
||||
background: rgba(255, 255, 255, 0.5);
|
||||
border-radius: 4px;
|
||||
box-shadow: none;
|
||||
position: relative;
|
||||
}
|
||||
.np-learning-path-outline-icon {
|
||||
align-self: center;
|
||||
font-size: 40px;
|
||||
color: #9b4b87;
|
||||
}
|
||||
.np-box-header {
|
||||
height: 80px;
|
||||
}
|
||||
.np-powered-by {
|
||||
background: none;
|
||||
}
|
||||
@media screen and (max-width: 835px) {
|
||||
.col-sm-6 {
|
||||
max-width: 45%;
|
||||
}
|
||||
.np-card-padding, .np-card-padding-dynamic {
|
||||
padding-left: 0;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 765px) {
|
||||
.np-box-header {
|
||||
height: 60px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,23 @@
|
||||
{% include "header" %}
|
||||
{% include "sub_navigation" %}
|
||||
<main class="np-main np-dashboard np-subpage-container np-max-width">
|
||||
<div class="np-catalog-header-wrapper">
|
||||
<div class="np-catalog-header">
|
||||
<div class="np-resource-title">{% t shared.learning_paths %}</div>
|
||||
<div class="np-resource-subtitle">{% t .subtitle %}</div>
|
||||
</div>
|
||||
</div>
|
||||
{% include "learning_paths_index" %}
|
||||
</main>
|
||||
{% include "footer" %}
|
||||
|
||||
<style>
|
||||
.np-dashboard {
|
||||
background: white;
|
||||
}
|
||||
@media screen and (min-width: 768px) {
|
||||
.np-grid-spacing {
|
||||
padding-left: 3%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -0,0 +1,21 @@
|
||||
/*
|
||||
Put your custom overlay styles in here
|
||||
You can use your northpass color palette in this file
|
||||
|
||||
{{ color_palette.button_font_color }}
|
||||
{{ color_palette.button_color }}
|
||||
{{ color_palette.button_hover_color }}
|
||||
{{ color_palette.header_font_color }}
|
||||
{{ color_palette.header_font_hover_color }}
|
||||
{{ color_palette.header_color }}
|
||||
*/
|
||||
|
||||
.np-subpage-container {
|
||||
padding:80px 4% 184px;
|
||||
}
|
||||
.np-max-width {
|
||||
justify-content:space-between;
|
||||
margin:auto;
|
||||
max-width: none;
|
||||
}
|
||||
|
||||
@ -0,0 +1,130 @@
|
||||
{% include "header" %}
|
||||
{% include "sub_navigation" %}
|
||||
<main class="np-main np-training-events np-subpage-container np-max-width">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-10">
|
||||
<div class="np-resource-title" style='font-size: 2rem;'>
|
||||
{% t .title %}
|
||||
</div>
|
||||
<div class="np-resource-subtitle">
|
||||
{% t .subtitle %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-2">
|
||||
{% include "training_events_filter" %}
|
||||
</div>
|
||||
</div>
|
||||
{% include "training_events_index" %}
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-12">
|
||||
<div class="np-resource-title" style='font-size: 2rem;'>
|
||||
Fulfillment Webinars
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% include "fullfilment_events_index" %}
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-12">
|
||||
<div class="np-resource-title" style='font-size: 2rem;'>
|
||||
Other Training Events
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% include "other_events_index" %}
|
||||
</main>
|
||||
{% include "footer" %}
|
||||
|
||||
<style>
|
||||
.other-event-sessions {
|
||||
height: 65px;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.np-training-events {
|
||||
background: white;
|
||||
}
|
||||
|
||||
.row .np-card {
|
||||
border: 1px solid #ccc;
|
||||
padding: 35px;
|
||||
}
|
||||
.event-header {
|
||||
display: flex;
|
||||
padding-bottom: 25px;
|
||||
height: 115px;
|
||||
}
|
||||
.event-header-left {
|
||||
margin-right: 20px;
|
||||
}
|
||||
.fa-users {
|
||||
font-size: 44px;
|
||||
font-weight: 300;
|
||||
}
|
||||
.event-header-right-type {
|
||||
color: #3b3f3d;
|
||||
font-size: 18px;
|
||||
}
|
||||
.event-header-right-title {
|
||||
color: #3b3f3d;
|
||||
font-size: 26px;
|
||||
font-weight: 600;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
.event-sessions {
|
||||
height: 160px;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
.event-session {
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
.event-session-number {
|
||||
color: #606060;
|
||||
font-weight: bold;
|
||||
font-size: 18px;
|
||||
}
|
||||
.event-session-date {
|
||||
color: #9b4b87;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
font-size: 18px;
|
||||
}
|
||||
.event-session-date:hover {
|
||||
color: #4b2346;
|
||||
}
|
||||
.event-additional-sessions {
|
||||
color: #9b4b87;
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
}
|
||||
.event-additional-sessions:hover {
|
||||
color: #4b2346;
|
||||
}
|
||||
.event-button {
|
||||
background: #9b4b87;
|
||||
color: white;
|
||||
border-radius: 4px;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
padding: 10px 20px;
|
||||
line-height: 39px;
|
||||
min-height: 30px;
|
||||
text-align: center;
|
||||
margin-bottom: -10px;
|
||||
text-decoration: none;
|
||||
}
|
||||
.event-button:hover {
|
||||
background: #4b2346
|
||||
}
|
||||
@media screen and (max-width: 768px) {
|
||||
.row .np-card {
|
||||
width: 80%;
|
||||
}
|
||||
}
|
||||
@media screen and (max-width: 450px) {
|
||||
.row .np-card {
|
||||
width: 90%;
|
||||
padding: 25px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Binary file not shown.
10
Scripts/API_Tests/get-groups-filtering.py
Normal file
10
Scripts/API_Tests/get-groups-filtering.py
Normal file
@ -0,0 +1,10 @@
|
||||
import Apikeys
|
||||
import requests
|
||||
|
||||
company = "EJP"
|
||||
url = f"https://api.northpass.com/v2/groups?filter[name][eq]={company}"
|
||||
apikey = Apikeys.DATASNIPPER
|
||||
headers = {"X-Api-Key":apikey}
|
||||
|
||||
response = requests.get(url, headers=headers)
|
||||
print(response.text)
|
||||
10
Scripts/js-date.js
Normal file
10
Scripts/js-date.js
Normal file
@ -0,0 +1,10 @@
|
||||
//let jsDate = new Date();
|
||||
//let jsFormattedDate = jsDate.getFullYear() + ("0" + (jsDate.getMonth() + 1)).slice(-2) + ("0" + jsDate.getDate()).slice(-2);
|
||||
//let liquidFormattedDate = '{{ "now" | date: "%Y%m%d" }}';
|
||||
//let personCreateDate = moment.unix('{{ current_person.created_at }}').formate("%Y%m%d");
|
||||
//console.log(jsFormattedDate);
|
||||
//console.log(liquidFormattedDate);
|
||||
//console.log(personCreateDate)
|
||||
//
|
||||
let dateTest = "2022-04-13 15:00:03 +0000".split(" ")[0]
|
||||
console.log(dateTest)
|
||||
Reference in New Issue
Block a user