Downloaded Harri Mcdonalds templates for the language picker. Slowly updating Luminates templates for the lang picker.

This commit is contained in:
Norm Rasmussen
2024-04-02 19:47:10 -04:00
parent 9286f52fb2
commit d27d791236
97 changed files with 2571 additions and 269 deletions

View File

@ -0,0 +1,19 @@
<form class="np-form" action="{{ form.options.action }}" method="post" id="desktop_edit_learner" novalidate>
<input type="hidden" name="_method" value="{{ form.options.http_method }}">
{% form_authenticity_token %}
<div class="np-card">
<div class="np-card-container np-card-padding">
<div class="row">
<div class="col-sm-7 np-account-form">
{% render "account_form", form: form, version: "desktop" %}
<button type="submit" class="np-button np-button-big np-button-large-font np-form-action">
{% t shared.account.save %}
</button>
</div>
<div class="col-sm-5 np-account-avatar">
{% include "account_avatar", version: "desktop" %}
</div>
</div>
</div>
</div>
</form>

View File

@ -0,0 +1,17 @@
<form class="np-form" action="{{ form.options.action }}" method="post" id="mobile_edit_learner" novalidate>
<input type="hidden" name="_method" value="{{ form.options.http_method }}">
{% form_authenticity_token %}
<div class="np-card np-account-form">
<div class="np-card-container np-card-padding">
{% render "account_form", form: form, version: "mobile" %}
</div>
</div>
<div class="np-card np-account-avatar">
<div class="np-card-container np-card-padding">
{% include "account_avatar", version: "mobile" %}
</div>
</div>
<button type="submit" class="np-button np-button-big np-button-large-font np-form-action">
{% t shared.account.save %}
</button>
</form>

View File

@ -33,6 +33,11 @@
{{course.properties.course_time}} Min
{% endif %}
</div>
<div class="np-card-content-progress np-button-color">
{% unless course.properties.course_points == 0 or course.properties.course_points =='missing property: course_points'%}
Points: {{course.properties.course_points}}
{% endunless %}
</div>
</div>
{% capture course_path %}{% route course, id: course.id %}{% endcapture %}
{% if course.has_to_restart? %}

View File

@ -94,6 +94,9 @@
<a class="np-button lp" href="{% route learning_path, id: learning_path.id %}">
{% t shared.view %}
</a>
<div class="points np-learning-path-items-count">
{% comment %} Points: 2500 {% endcomment %}
</div>
<span class="np-hidden-mobile np-learning-path-items">
<i class="np-button-color np-learning-path-items-icon far fa-graduation-cap"></i>
<span class="np-learning-path-items-count">

View File

@ -0,0 +1,45 @@
<div class="np-card">
<div class="np-card-container">
<div class="np-card-content-training-event">
<h3 class="np-card-content-title">
{{ training_event.title }}
</h3>
<div class="np-card-content-subtitle">
{% t shared.event_types, key: training_event.event_type %}
</div>
<div class="np-card-training-session">
<span class="np-card-content-label">
{% t .next_session %}
</span>
<div class="np-card-training-session-date">
<div class="np-button-background-color np-card-training-session-date-bar"></div>
<div class="np-card-training-session-date-day">
{{ training_event.sessions.first.day }}
</div>
<div>
<div class="np-card-training-session-date-month">
{{ training_event.sessions.first.month }}
</div>
<div class="np-card-training-session-date-year">
{{ training_event.sessions.first.year }}
</div>
</div>
</div>
</div>
</div>
<div class="np-card-content np-card-content-vertical np-card-padding">
<div class="np-card-training-sessions">
<i class="np-card-training-sessions-icon far fa-calendar-star"></i>
<span class="np-card-training-sessions-label">
{% t .sessions, count: training_event.sessions.size %}
</span>
<a
class="np-button np-button-wide"
href="{% route training_session, id: training_event.sessions.first.id %}"
>
{% t shared.view %}
</a>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,4 @@
<div class="col-xs-12 col-md-4 spacing-clear">
{% include "certificates_verification" %}
{% include "certificates_metadata" %}
</div>

View File

@ -0,0 +1,59 @@
<div class="np-card spacing-clear">
<div class="np-card-container padding-spacing-8">
<div class="row np-certificate-metadata-row">
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-title" >
{% t .learner %}
</p>
</div>
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-value">
{{certificate.learner_name}}
</p>
</div>
</div>
<div class="line"></div>
{% if certificate.issuer_name_enabled? %}
<div class="row np-certificate-metadata-row">
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-title">
{% t .issued_by %}
</p>
</div>
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-value">
{{ certificate.issuer_name }}
</p>
</div>
</div>
<div class="line"></div>
{% endif %}
<div class="row np-certificate-metadata-row">
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-title" >
{% t .issued_on %}
</p>
</div>
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-value">
{{ certificate.issue_date }}
</p>
</div>
</div>
<div class="line"></div>
<div class="row np-certificate-metadata-row">
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-title" >
{% t .expires_on %}
</p>
</div>
<div class="col-xs-6 col-md-6">
<p class="np-certificate-metadata-value">
{{ certificate.expiration_date_translation }}
</p>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,35 @@
<script type="text/javascript">
const resizeIframe = () => {
const combinedPadding = 16;
const previewIframe = document.getElementById("previewIframe");
const previewIFrameCard = document.getElementById("previewIFrameCard");
const templateInPreviewContainer = previewIframe.contentWindow.document.querySelector('.np-certificate-container');
const previewIframeContentHeight = templateInPreviewContainer.offsetHeight;
const previewIframeContentWidth = templateInPreviewContainer.offsetWidth;
const certificateRatio = previewIframeContentHeight / previewIframeContentWidth;
templateInPreviewContainer.style.margin = 0;
previewIFrameCard.style.height = `${previewIFrameCard.offsetWidth * certificateRatio}px`;
const scaledIframeWidth = previewIFrameCard.offsetWidth - combinedPadding;
const scaledIframeHeight = scaledIframeWidth * certificateRatio;
const scale = scaledIframeHeight / previewIframeContentHeight;
previewIframe.style.transform = `scale(${scale})`;
}
window.onresize = resizeIframe;
</script>
<div class="col-xs-12 col-md-8 np-certificate-iframe-container">
<div class="np-card spacing-clear">
<div id="previewIFrameCard" class="np-card-container np-certificate-card">
<iframe
id="previewIframe"
onload="resizeIframe()"
class="np-certificate-iframe-preview"
srcdoc="{{ certificate.certificate_template_html }}"
></iframe>
</div>
</div>
</div>

View File

@ -0,0 +1,44 @@
<div class="top-bar np-certificate-top-bar-spacing">
<div class="top-bar__container uk-container uk-container-center uk-padding-horizontal np-max-width">
<div class="top-bar__col">
<h2 class="np-certificate-title" >
{{certificate.certificate_name}}
</h2>
</div>
<div class="button-container np-certificate-button-container">
{% if certificate.linkedin_sharing_enabled and current_person.signed_in? and certificate.learner_uuid == current_person.id %}
<a
class="np-button np-certificate-button np-certificate-button-secondary"
href="{{certificate.linkedin_share_url}}"
target="_blank"
>
<i class="fab fa-linkedin np-certificate-share-icon"></i>
{% t .share %}
</a>
{% endif %}
<button
id="print"
type="button"
class="np-button np-certificate-button np-certificate-button-secondary np-certificate-button-print"
>
{% t .print %}
</button>
{% if certificate.generating_pdf %}
<div class="np-button np-certificate-button np-certificate-button-primary np-certificate-spinner-container">
<i class="loader fad fa-spinner-third fa-spin np-certificate-spinner-icon np-button-font-color"></i>
</div>
{% else %}
<a
href="{{ certificate.download_url }}"
aria-label="{% t .download %}"
target="_blank"
rel="noopener noreferrer"
download
class="np-button np-certificate-button np-certificate-button-primary np-button-font-color"
>
{% t .download %}
</a>
{% endif %}
</div>
</div>
</div>

View File

@ -0,0 +1,15 @@
<div class="np-card spacing-clear np-certificate-verification-card">
<div class="np-card-container np-certificate-verification-container">
<div class="np-certificate-verification-icon-container np-certificate-verification-icon-container-{{certificate.verification_status}}">
<i class="far fa-{{certificate.verification_icon}} np-certificate-verification-icon"></i>
</div>
<div class="np-certificate-verification-info-container">
<h2 class="np-certificate-verification-info-status spacing-clear">
{{certificate.verification_title}}
</h2>
<p class="np-certificate-verification-info-description spacing-clear">
{{certificate.verification_description}}
</p>
</div>
</div>
</div>

View File

@ -0,0 +1,10 @@
<h3 class="np-card-heading">
{% t .header %}
</h3>
<div class="np-flex">
{% for category in course.categories %}
<div class="np-content-categories-content-item">
{{ category.name }}
</div>
{% endfor %}
</div>

View File

@ -0,0 +1,6 @@
<h3 class="np-card-heading">
{% t .header, key: current_school.course_vocabulary %}
</h3>
<div class="np-card-text">
{{ course.full_description }}
</div>

View File

@ -0,0 +1,40 @@
<div class="np-card-container">
<div class="np-resource-header np-course-header np-card-padding-large">
{% include "course_header" %}
</div>
<div class="np-divider"></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? %}
<div class="np-card-content-divider">
{% include "course_categories" %}
</div>
{% endif %}
{% if course.instructors.any? %}
<div class="np-card-content-divider">
{% include "course_instructors" %}
</div>
{% endif %}
{% if course.events.any? %}
<div class="np-card-content-divider">
{% include "course_events" %}
</div>
{% 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>

View File

@ -0,0 +1,28 @@
<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">
{{ event.sessions.first.time_period }} {{ event.sessions.first.time_zone }}
</div>
</div>
</div>
{% endfor %}
</div>

View File

@ -0,0 +1,16 @@
<div class="np-top-vocabulary np-text-title np-text-muted">
{{ current_school.course_vocabulary }}
<i class="far fa-graduation-cap np-button-color np-learning-path-icon np-hidden-mobile">
</i>
</div>
<div class="np-top-title">
<a href="{% route home %}" class="np-back-button" aria-label="{% t shared.go_back %}">
<i class="far fa-arrow-left np-hidden-mobile np-icon-back"></i>
</a>
{{ course.name }}
</div>
<img
src="{{ course.image_url }}"
class="np-top-image np-hidden-desktop"
alt="{{ course.name }}"
/>

View File

@ -0,0 +1,22 @@
<h3 class="np-card-heading">
{% t .header %}
</h3>
<div class="np-flex">
{% for instructor in course.instructors %}
<div class="np-content-instructors-content-item">
<img
src="{{ instructor.avatar_url }}"
class="np-content-instructors-content-image"
alt="{{ instructor.name }}"
/>
<div class="np-content-instructors-content-description">
<div class="np-content-instructors-content-name">
{{ instructor.name }}
</div>
<div class="np-content-instructors-content-info np-text-light">
{{ instructor.title }}
</div>
</div>
</div>
{% endfor %}
</div>

View File

@ -0,0 +1,40 @@
<div class="np-card-container np-card-padding-large">
{% include "course_header" %}
<div class="np-top-cta">
{% include "course_progress_and_cta" %}
</div>
</div>
{% if course.progress == 0 %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_description" %}
</div>
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_outline" %}
</div>
{% else %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_outline" %}
</div>
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_description" %}
</div>
{% endif %}
{% if course.categories.any? %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_categories" %}
</div>
{% endif %}
{% if course.instructors.any? %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_instructors" %}
</div>
{% endif %}
{% if course.events.any? %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "course_events" %}
</div>
{% endif %}

View File

@ -0,0 +1,7 @@
{% if courses.include_courses_to_restart? %}
<div role="alert" class="np-alert np-alert-global np-alert-info">
<div class="np-alert-container uk-container uk-container-center">
{% t .content %}
</div>
</div>
{% endif %}

View File

@ -0,0 +1,33 @@
<div class="np-course-version-outdated-popup np-popup">
<div class="np-popup-positioner">
<i
class="np-course-version-outdated-popup-trigger fas fa-exclamation-circle"
data-toggle-class-on-target="np-popup-tooltip--visible"
data-toggle-target-parent=".np-popup-tooltip"
data-toggle-outside
></i>
<div
class="np-popup-tooltip"
role="tooltip"
aria-hidden="true"
>
<header class="np-popup-header">
<i class="np-popup-header-icon fas fa-exclamation-circle"></i>
<h3 class="np-popup-header-title">
{% t .title %}
</h3>
</header>
<div class="np-popup-body">
<h4>{% t .body.header %}</h4>
<p>{% t .body.content %}</p>
<a
class="np-popup-body-button"
href="{{ path }}"
>
{% t .body.button %}
</a>
</div>
<div class="np-popup-tail"></div>
</div>
</div>
</div>

View File

@ -0,0 +1,16 @@
{% if courses.in_catalog.any? %}
<div class="np-catalog-courses row row-with-thumbnails">
{% for course in courses.in_catalog %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</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 %}

View File

@ -0,0 +1,16 @@
{% if courses.enrolled.any? %}
<div class="row row-with-thumbnails">
{% for course in courses.enrolled %}
<div class="{{ class }}">
{% include "cards_course" with course %}
</div>
{% endfor %}
</div>
{% else %}
{% capture message %}
{% t shared.zero_state.courses.index,
key: current_school.course_vocabulary
%}
{% endcapture %}
{% include "courses_zero_state", message: message %}
{% endif %}

View File

@ -0,0 +1,6 @@
<div class="np-dashboard-resources-container">
<div class="np-zero-state-text">
{{ message }}
</div>
<img class="np-zero-state-courses" alt="{{ message }}" />
</div>

View File

@ -0,0 +1,10 @@
<input
id={{value}}
name={{ name }}
value={{ value }}
type="checkbox"
{% if selected %} checked="checked" {% endif %}
/>
<label for={{value}}>
{{label}}
</label>

View File

@ -0,0 +1,33 @@
<div class="np-filter">
<div class="dropdown">
<button
class="np-button dropdown-button"
data-toggle-class="is-open"
data-toggle-escape
data-toggle-outside
data-toggle-target-next
type="button"
>
{% t shared.filters.filter %}
</button>
<div class="dropdown-menu" data-test="modal">
<form method="get">
{%
include "filter_select",
filters: filters,
key: key,
label: label
%}
<button
class="np-button dropdown-button-apply"
data-toggle-trigger-off
type="submit"
>
{% t shared.filters.apply %}
</button>
</form>
</div>
</div>
</div>

View File

@ -0,0 +1,22 @@
{% if params.q %}
<input type="hidden" name="q" value="{{ params.q }}">
{% endif %}
<label class="dropdown-label" for="filter[category_uuid][in][]">
{{ label }}
</label>
<select
class="np-filter-select"
multiple
name="filter[{{ key }}][in][]"
>
{% for filter in filters %}
<option
value="{{ filter.value }}"
{% if filter.selected? %} selected="selected" {% endif %}
>
{{ filter.name }}
</option>
{% endfor %}
</select>

View File

@ -2,51 +2,50 @@
{% styles colors %}
{% styles custom %}
{% unless current_person.email contains "preview" %}
{% assign group_count = 0 %}
{% assign is_in_all_group = false %}
{% if current_person.signed_in? %}
{% assign groups = current_person.groups %}
{% for item in groups %}
{% assign group_count = group_count | plus: 1 %}
{% if group_count <= 1 and item.id contains 'd8b83557-aad1-4a4e-85ee-ddbde5d1e507' %}
{% assign is_in_all_group = true %}
<script>
document.addEventListener('DOMContentLoaded', function() {
setTimeout(function() {
if (window.location.pathname !== '/app/second-login') {
window.location.replace('/app/second-login');
}
}, 1000);
});
</script>
{% comment %} {% unless current_person.email contains "preview" %}
{% assign group_count = 0 %}
{% assign is_in_all_group = false %}
{% if current_person.signed_in? %}
{% assign groups = current_person.groups %}
{% for item in groups %}
{% assign group_count = group_count | plus: 1 %}
{% if group_count <= 1 and item.id contains 'd8b83557-aad1-4a4e-85ee-ddbde5d1e507' %}
{% assign is_in_all_group = true %}
<script>
document.addEventListener('DOMContentLoaded', function() {
console.log("{{group_count}}")
setTimeout(function() {
if (window.location.pathname !== '/app/second-login') {
window.location.replace('/app/second-login');
}
}, 1000);
} </script>
{% endif %}
{% endfor %}
{% endif %}
{% endfor %}
{% endif %}
{% if current_person.signed_in? %}
{% for item in current_person.groups %}
{% endfor %}
{% if current_person.groups.any? %}
{%else%}
<script>
document.addEventListener('DOMContentLoaded', function() {
setTimeout(function() {
if (window.location.pathname !== '/app/second-login') {
window.location.replace('/app/second-login');
}
}, 1000);
});
</script>
{% endif %}
{%endif%}
{% endunless %}
<script
src="https://code.jquery.com/jquery-3.5.1.min.js"
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin="anonymous"></script>
{% if current_person.signed_in? %}
{% for item in current_person.groups %}
{% endfor %}
{% if current_person.groups.any? %}
{% else %}
<script>
document.addEventListener('DOMContentLoaded', function() {
setTimeout(function() {
if (window.location.pathname !== '/app/second-login') {
window.location.replace('/app/second-login');
}
}, 1000);
});
</script>
{% endif %}
{% endif %}
{% endunless %} {% endcomment %}
<script
src="https://code.jquery.com/jquery-3.5.1.min.js"
integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0="
crossorigin="anonymous"></script>

View File

@ -231,7 +231,7 @@ function setLang(lang) {
data: JSON.stringify(data),
success:function (data) {
console.log(data);
setTimeout(location.reload.bind(location), 700);
setTimeout(location.reload.bind(location), 1500);
},
error: function(xhr, status, error) {
console.log(error)

View File

@ -0,0 +1,17 @@
<header class="np-box-header np-header-color">
<a class="np-box-header-link" href="{% route home %}">
{% if current_school.logo_url %}
<img
alt="{{ current_school.name }}"
src="{{ current_school.logo_url }}"
class="np-box-header-logo"
/>
{% else %}
<span class="np-school-name np-header-font-color">
{{ current_school.name }}
</span>
{% endif %}
</a>
</header>
{% include "messages" %}

View File

@ -0,0 +1,5 @@
{% if learning_path.new_content_available? %}
{% include "learning_path_new_content_banner" %}
{% else %}
{% include "learning_path_completed_banner" %}
{% endif %}

View File

@ -0,0 +1,17 @@
{% if learning_path.has_certificate? %}
{% if learning_path.certificate_completed? %}
<div class="np-learning-path-outline-bar np-hidden-mobile"></div>
<a
class="np-learning-path-certificate-link"
href="{{ learning_path.certificate_link }}"
>
<div class="np-learning-path-certificate">
{% include "learning_path_certificate_content" %}
</div>
</a>
{% else %}
<div class="np-learning-path-certificate np-learning-path-certificate--inactive">
{% include "learning_path_certificate_content" %}
</div>
{% endif %}
{% endif %}

View File

@ -0,0 +1,19 @@
<div class="np-learning-path-certificate-content">
<div class="np-learning-path-certificate-avatar" role="img">
<i class="np-learning-path-certificate-avatar-icon fal fa-award"></i>
<h5 class="np-learning-path-certificate-avatar-title">
{% t .avatar_title %}
</h5>
</div>
<h4 class="np-learning-path-certificate-name">
{{ learning_path.certificate_name }}
</h4>
{% if learning_path.certificate_completed? %}
<time
class="np-learning-path-certificate-issue-date"
datetime="{{ learning_path.certificate_issue_date }}"
>
{{ learning_path.certificate_issue_date | date: "%B %d, %Y" }}
</time>
{% endif %}
</div>

View File

@ -0,0 +1,13 @@
<div class="np-learning-path-completed-banner np-learning-path-banner">
<img class="np-learning-path-banner-image" src="https://s3.amazonaws.com/static.northpass.com/images/stars-completed.svg"/>
<div class="np-learning-path-banner-content">
<h3 class="np-learning-path-banner-headline">{% t .headline %}</h3>
<p class="np-learning-path-banner-description">{% t .description %}</p>
<div class="np-learning-path-banner-actions">
{% if learning_path.certificate_link %}
<a href="{{ learning_path.certificate_link }}" class="np-learning-path-banner-action np-learning-path-banner-action--primary">{% t .actions.certificate %}</a>
{% endif %}
<a href="/app/courses" class="np-learning-path-banner-action np-learning-path-banner-action--secondary">{% t .actions.more_courses %}</a>
</div>
</div>
</div>

View File

@ -0,0 +1,21 @@
<div class="row">
<div class="col-xs-12 col-sm-6">
<div class="np-card-container">
<img
src="{{ learning_path.image_url }}"
class="np-top-image"
alt="{{ learning_path.name }}"
/>
<div class="np-card-padding-dynamic">
{% include "learning_path_description" %}
{% include "learning_path_instructors" %}
</div>
</div>
</div>
<div class="col-xs-12 col-sm-6 np-grid-spacing">
<div class="np-top-cta">
{% include "learning_path_progress_and_cta" %}
</div>
{% include "learning_path_outline" %}
</div>
</div>

View File

@ -0,0 +1,12 @@
<div class="np-resource-header np-resource-header-card np-card-padding-large">
<div class="np-top-vocabulary np-text-title">
{% t shared.learning_path.title %}
<i class="far fa-road np-button-color np-learning-path-icon"></i>
</div>
<div class="np-top-title">
<a href="{% route home %}" class="np-back-button" aria-label="{% t shared.go_back %}">
<i class="far fa-arrow-left np-icon-back"></i>
</a>
{{ learning_path.name }}
</div>
</div>

View File

@ -0,0 +1,2 @@
{% include "learning_path_desktop_header" %}
{% include "learning_path_desktop_content" %}

View File

@ -0,0 +1,26 @@
{% if learning_path.instructors.any? %}
<div class="np-card-content-divider">
<h3 class="np-card-heading">
{% t shared.instructors %}
</h3>
<div class="np-content-instructors-content row">
{% for instructor in learning_path.instructors %}
<div class="np-content-instructors-content-item col-xs-12 col-lg">
<img
src="{{ instructor.avatar_url }}"
class="np-content-instructors-content-image"
alt="{{ instructor.name }}"
>
<div class="np-content-instructors-content-description">
<div class="np-content-instructors-content-name">
{{ instructor.name }}
</div>
<div class="np-content-instructors-content-info np-text-light">
{{ instructor.title }}
</div>
</div>
</div>
{% endfor %}
</div>
</div>
{% endif %}

View File

@ -0,0 +1,19 @@
{% if learning_path.in_progress? %}
{% include "learning_path_outline" %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "learning_path_description" %}
</div>
{% else %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "learning_path_description" %}
</div>
<div class="np-card-spacing">
{% include "learning_path_outline" %}
</div>
{% endif %}
{% if learning_path.instructors.any? %}
<div class="np-card-container np-card-padding np-card-spacing">
{% include "learning_path_instructors" %}
</div>
{% endif %}

View File

@ -0,0 +1,17 @@
<div class="np-resource-header np-card-padding-vertical">
<div class="np-top-vocabulary np-text-title">
{% t shared.learning_path.title %}
<i class="far fa-road np-button-color np-learning-path-icon"></i>
</div>
<div class="np-top-title">
{{ learning_path.name }}
</div>
<img
src="{{ learning_path.image_url }}"
class="np-top-image"
alt="{{ learning_path.name }}"
/>
<div class="np-top-cta">
{% include "learning_path_progress_and_cta" %}
</div>
</div>

View File

@ -0,0 +1,2 @@
{% include "learning_path_mobile_header" %}
{% include "learning_path_mobile_content" %}

View File

@ -0,0 +1,12 @@
<div class="np-learning-path-new-content-banner np-learning-path-banner">
<div class="np-learning-path-banner-content">
<h3 class="np-learning-path-banner-headline">{% t .headline %}</h3>
<p class="np-learning-path-banner-description">{% t .description %}</p>
<div class="np-learning-path-banner-actions">
{% learning_path_next_step_button learning_path, class: "np-learning-path-banner-action np-learning-path-banner-action--primary" %}
{% if learning_path.certificate_link %}
<a href="{{ learning_path.certificate_link }}" class="np-learning-path-banner-action np-learning-path-banner-action--secondary">{% t .actions.view_certificate %}</a>
{% endif %}
</div>
</div>
</div>

View File

@ -0,0 +1,10 @@
<div class="np-learning-path-outline">
{% for item in learning_path.items %}
{% if item.course? %}
{% include "learning_path_course", course: item %}
{% elsif item.training_event? %}
{% include "learning_path_training_session", training_session: item %}
{% endif %}
{% endfor %}
{% include "learning_path_certificate" %}
</div>

View File

@ -0,0 +1,3 @@
{% include "learning_path_desktop_header" %}
{% include "learning_path_banners" %}
{% include "learning_path_desktop_content" %}

View File

@ -0,0 +1,5 @@
<div class="np-card-padding">
{% include "learning_path_banners" %}
</div>
{% include "learning_path_mobile_header" %}
{% include "learning_path_mobile_content" %}

View File

@ -0,0 +1,53 @@
{% if learning_path.enrolled? and training_session.unlocked? %}
<div class="np-learning-path-outline-bar np-hidden-mobile"></div>
<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 %}

View File

@ -0,0 +1,19 @@
{% if messages.alert.size > 0 %}
<div class="np-alert np-alert-error">
<div class="np-alert-wrapper">
{% for message in messages.alert %}
<div>{{ message }}</div>
{% endfor %}
</div>
</div>
{% endif %}
{% if messages.notice.size > 0 %}
<div class="np-alert np-alert-success">
<div class="np-alert-wrapper">
{% for message in messages.notice %}
<div>{{ message }}</div>
{% endfor %}
</div>
</div>
{% endif %}

View File

@ -0,0 +1,19 @@
<div class="np-card np-search-result">
<div class="np-card-container">
<div class="np-card-content">
<img
class="np-search-result-image"
alt="{{ result.name }}"
src="{{ result.image_url }}"
/>
<div class="np-search-result-content">
<div>
<a class="np-search-result-title" href="{{ result.path }}">
{{ result.name }}
</a>
</div>
<div class="np-search-result-snippet">{{ result.description }}</div>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,13 @@
<div class="np-card np-search-zero-state">
<div class="np-card-container">
<div class="np-card-content np-card-content-vertical np-search-zero-state-card">
<h3 class="np-search-zero-state-title">
{% t .nothing_found %}
</h3>
<div class="np-search-zero-state-subtitle">
{% t .empty %}
</div>
<div class="np-search-zero-state-image"></div>
</div>
</div>
</div>

View File

@ -465,4 +465,4 @@
display: block;
content: "Sobre el modulo";
}
</style>
</style>

View File

@ -0,0 +1,9 @@
<div class="np-dashboard-resources">
{% if training_events.enrolled.any? %}
{% for training_event in training_events.enrolled %}
{% include "cards_training_event" with training_event %}
{% endfor %}
{% else %}
{% include "training_events_zero_state" %}
{% endif %}
</div>

View File

@ -0,0 +1,53 @@
<div class="np-filter">
<div class="dropdown">
<button
class="np-button dropdown-button"
data-toggle-class="is-open"
data-toggle-escape
data-toggle-outside
data-toggle-target-next
type="button"
>
{% t shared.filters.filter %}
</button>
<div class="dropdown-menu" data-test="modal">
<form method="get">
<span class="dropdown-label">
{% t shared.filters.by_event_type %}
</span>
<ul class="dropdown-checkboxes">
{% for event_type in training_events.filters.event_types %}
{% capture label %}
{% t shared.event_types, key: event_type.value %}
{% endcapture %}
<li>
{% include "filter_checkbox",
label: label,
name: event_type.name,
value: event_type.value
selected: event_type.selected?
%}
</li>
{% endfor %}
</ul>
{% capture label %}{% t shared.filters.by_course %}{% endcapture %}
{%
include "filter_select",
filters: training_events.filters.courses,
key: "courses_uuid",
label: label
%}
<button
class="np-button dropdown-button-apply"
data-toggle-trigger-off
type="submit"
>
{% t shared.filters.apply %}
</button>
</form>
</div>
</div>
</div>

View File

@ -0,0 +1,13 @@
<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 np-stretch-content">
{% include "cards_training_event" with training_event %}
</div>
{% endfor %}
</div>
{% else %}
{% include "training_events_zero_state" %}
{% endif %}
</div>

View File

@ -0,0 +1,52 @@
<div class="dropdown dropdown-calendar">
<button
class="np-top-button np-button-font-color np-button np-button-big dropdown-calendar-button"
data-toggle-class="is-open"
data-toggle-escape
data-toggle-outside
data-toggle-target-next
type="button"
>
{% t .add_to_calendar %}
<i class="fas fa-chevron-down dropdown-calendar-button-chevron"></i>
</button>
<ul class="dropdown-calendar-menu">
<li class="dropdown-calendar-item">
<a
class="dropdown-calendar-item-element np-button-background-color-on-hover np-button-font-color-on-hover"
href="{{ training_session.google_calendar_url }}"
target="_blank"
>
{% t .google_calendar %}
</a>
</li>
<li class="dropdown-calendar-item">
<a
class="dropdown-calendar-item-element np-button-background-color-on-hover np-button-font-color-on-hover"
href="{{ training_session.outlook_calendar_url }}"
target="_blank"
>
{% t .outlook_calendar %}
</a>
</li>
<li class="dropdown-calendar-item">
<a
class="dropdown-calendar-item-element np-button-background-color-on-hover np-button-font-color-on-hover"
href="{{ training_session.outlook_office_calendar_url }}"
target="_blank"
>
{% t .office_calendar %}
</a>
</li>
<li class="dropdown-calendar-item">
<a
class="dropdown-calendar-item-element np-button-background-color-on-hover np-button-font-color-on-hover"
href="{{ training_session.ical_calendar_url }}"
target="_blank"
>
{% t .ical_calendar %}
</a>
</li>
</ul>
</div>

View File

@ -0,0 +1,53 @@
{% if training_session.approved? %}
<div class="np-training-session-cta-note">
<i class="far fa-check np-training-session-icon"></i>
{% t .registered %}
</div>
{% elsif training_session.pending? %}
<div class="np-training-session-cta-note np-training-session-cta-note-error">
{% t .pending %}
</div>
{% elsif training_session.denied? %}
<div class="np-training-session-cta-note np-training-session-cta-note-error">
{% t .denied %}
</div>
{% elsif training_session.too_late? %}
<div class="np-training-session-cta-note np-training-session-cta-note-error">
{% t .too_late %}
</div>
{% elsif training_session.no_seats? %}
<div class="np-training-session-cta-note np-training-session-cta-note-error">
{% t .no_seats %}
</div>
{% endif %}
<div class="np-training-session-cta">
<div class="np-training-session-cta-buttons">
<form
action="{% route training_session_registration, id: training_session.id %}"
method="post"
>
{% form_authenticity_token %}
{% if training_session.internal? and training_session.approved? %}
{% if features.training_events_google_calendar? %}
{% include "training_session_calendars" %}
<button type="submit" class="np-top-button np-button np-button-big np-button-secondary">
{% t .unregister %}
</button>
{% else %}
<button type="submit" class="np-top-button np-button-font-color np-button np-button-big">
{% t .unregister %}
</button>
{% endif %}
<input type="hidden" name="_method" value="delete" />
{% endif %}
{% if training_session.not_registered? %}
<button type="submit" class="np-top-button np-button np-button-big">
{% t .register %}
</button>
{% endif %}
</form>
</div>
</div>

View File

@ -0,0 +1,14 @@
<div class="np-card-training-session-date">
<div class="np-button-background-color np-card-training-session-date-bar"></div>
<div class="np-card-training-session-date-day">
{{ training_session.day }}
</div>
<div>
<div class="np-card-training-session-date-month">
{{ training_session.month }}
</div>
<div class="np-card-training-session-date-year">
{{ training_session.year }}
</div>
</div>
</div>

View File

@ -0,0 +1,6 @@
<h3 class="np-card-heading">
{% t .header %}
</h3>
<div class="np-card-text">
{{ training_event.description }}
</div>

View File

@ -0,0 +1,40 @@
<div class="np-resource-header np-resource-header-card np-card-padding-large">
{% include "training_session_header" %}
</div>
<div class="row">
<div class="col-xs-12 col-sm-7">
<div class="np-card-container">
<div class="row">
<div class="col-xs-12 col-sm-5">
{% include "training_session_details" %}
</div>
<div class="col-xs-12 col-sm-7">
{% include "training_session_cta" %}
</div>
</div>
<div class="np-card-padding-large">
<div class="np-card-content-divider">
{% include "training_session_description" %}
</div>
</div>
</div>
</div>
<div class="col-xs-12 col-sm-5 np-grid-spacing">
<div class="np-training-session-sessions-title">
{% t shared.more_sessions %}
</div>
{% if training_event.sessions.size > 1 %}
{% include "training_session_more_sessions" %}
{% else %}
<div class="np-training-session-zero-state">
<img
alt="{% t .empty %}"
class="np-zero-state-training-sessions"
/>
<div class="np-training-session-zero-state-text">
{% t .empty %}
</div>
</div>
{% endif %}
</div>
</div>

View File

@ -0,0 +1,24 @@
<div class="np-card-spacing-large">
{% include "training_session_date" %}
<div class="np-training-session-time">
<i class="fal fa-clock np-button-color np-training-session-icon"></i>
{{ training_session.time_period }} {{ training_session.time_zone }}
</div>
{% if training_session.location %}
<div class="np-training-session-location">
<i class="fal fa-map-marker-alt np-button-color np-training-session-icon"></i>
{{ training_session.location }}
</div>
{% endif %}
{% if training_session.session_url %}
<div class="np-training-session-location">
<i class="fal fa-map-marker-alt np-button-color np-training-session-icon"></i>
<a href="{{ training_session.session_url }}" class="np-button-color" target="_blank" >
{{ training_session.session_url }}
</a>
</div>
{% endif %}
</div>

View File

@ -0,0 +1,10 @@
<div class="np-top-vocabulary np-text-title">
{% t shared.event_types, key: training_event.event_type %}
<i class="fal fa-users-class np-button-color np-training-session-icon"></i>
</div>
<div class="np-top-title">
<a href="{% route home %}" class="np-back-button" aria-label="{% t shared.go_back %}">
<i class="far fa-arrow-left np-hidden-mobile np-icon-back"></i>
</a>
{{ training_event.title }}
</div>

View File

@ -0,0 +1,22 @@
<div class="np-card-container-training-session">
<div class="np-card-spacing-large">
{% include "training_session_header" %}
</div>
{% include "training_session_details" %}
<div class="np-card-padding-large">
{% include "training_session_cta" %}
</div>
</div>
<div class="np-card-container np-card-padding np-card-spacing">
{% include "training_session_description" %}
</div>
{% if training_event.sessions.size > 1 %}
<div class="np-card-spacing">
<div class="np-training-session-sessions-title">
{% t shared.more_sessions %}
</div>
{% include "training_session_more_sessions" %}
</div>
{% endif %}

View File

@ -0,0 +1,3 @@
{% for session in training_event.sessions %}
{% include "training_session_tile", current_session: training_session %}
{% endfor %}

View File

@ -0,0 +1,17 @@
{% if current_session.id != session.id %}
<a
class="np-training-session-tile"
href="{% route training_session, id: session.id %}"
>
<i class="far fa-calendar-star np-training-session-tile-icon"></i>
<div>
<div class="np-training-session-tile-date">
{{ session.month }} {{ session.day }}, {{ session.year }}
</div>
<div class="np-training-session-tile-time">
{{ session.time_period }} {{ session.time_zone }}
</div>
</div>
<i class="fas fa-chevron-right np-training-session-tile-chevron"></i>
</a>
{% endif %}

View File

@ -0,0 +1,14 @@
{% include "header" %}
<main class="np-main np-subpage-container np-account">
<div class="np-hidden-desktop">
{% include "account_mobile_view", form: form %}
</div>
<div class="np-hidden-mobile np-flex np-flex-center">
{% include "account_desktop_view", form: form %}
</div>
</main>
{% include "footer" %}

View File

@ -0,0 +1,59 @@
<main class="np-box-container np-open-access">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" action="{{ form.url }}" method="get" novalidate>
{% form_authenticity_token %}
<div class="np-form-headline">
{% t shared.welcome_to_school, school_name: current_school.name %}
</div>
<div class="np-form-subheadline">
{% t .headline, key: current_school.course_vocabulary %}
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_employee_id">
{% t shared.employee_id %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="text"
name="employee_id"
id="learner_employee_id"
value="{{ form.employee_id }}"
/>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_first_name">
{% t shared.first_name %}
</label>
<input
class="np-input"
type="text"
name="first_name"
id="learner_first_name"
value="{{ form.first_name }}"
/>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_last_name">
{% t shared.last_name %}
</label>
<input
class="np-input"
type="text"
name="last_name"
id="learner_last_name"
value="{{ form.last_name }}"
/>
</div>
<input
type="submit"
name="commit"
value="{% t shared.enter %}"
class="np-button np-button-big np-form-action"
/>
</form>
</div>
</div>
</main>

View File

@ -0,0 +1,40 @@
<main class="np-box-container np-open-access">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" action="{{ form.url }}" method="get" novalidate>
<div class="np-form-headline"> {% t shared.welcome_to_school, school_name: current_school.name %} </div>
<div class="np-form-subheadline"> {% t .headline, key: current_school.course_vocabulary %} </div>
{% form_authenticity_token %}
<div class="np-form-field">
<label class="np-input-label" for="learner_last_name">
{% t shared.last_name %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="text"
name="last_name"
id="learner_last_name"
value="{{ form.last_name }}"
/>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_phone_number">
{% t shared.phone_number %}
</label>
<input
class="np-input"
type="text"
name="phone_number"
id="learner_phone_number"
value="{{ form.phone_number }}"
/>
</div>
<button type="submit" class="np-button np-button-big np-form-action">
{% t shared.enter %}
</button>
</form>
</div>
</div>
</main>

View File

@ -0,0 +1,74 @@
<main class="np-box-container np-open-access">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" action="{{ form.url }}" method="get" novalidate>
<div class="np-form-headline"> {% t shared.welcome_to_school, school_name: current_school.name %} </div>
<div class="np-form-subheadline"> {% t .headline, key: current_school.course_vocabulary %} </div>
{% form_authenticity_token %}
<div class="np-form-field">
<label class="np-input-label" for="learner_email">
{% t shared.email_address %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="email"
name="email"
id="learner_email"
value="{{ form.email }}"
/>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_first_name">
{% t shared.first_name %}
</label>
<input
class="np-input"
type="text"
name="first_name"
id="learner_first_name"
value="{{ form.first_name }}"
/>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_last_name">
{% t shared.last_name %}
</label>
<input
class="np-input"
type="text"
name="last_name"
id="learner_last_name"
value="{{ form.last_name }}"
/>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_phone_number">
{% t shared.phone_number_optional %}
</label>
<input
class="np-input"
type="text"
name="phone_number"
id="learner_phone_number"
value="{{ form.phone_number }}"
/>
</div>
<div class="np-form-field np-open-access-terms">
<input type="hidden" name="terms" value="0" />
<input id="terms" type="checkbox" name="terms" value="1" />
<label for="terms" class="np-open-access-terms-checkbox">
{{ current_school.custom_terms }}
</label>
</div>
<input
type="submit"
name="commit"
value="{% t shared.enter %}"
class="np-button np-button-big np-form-action"
/>
</form>
</div>
</div>
</main>

View File

@ -0,0 +1,23 @@
{% include "header" %}
{% include "course_version_outdated_alert", courses: courses.in_catalog %}
{% include "sub_navigation" %}
<main class="np-main np-catalog 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" %}

View File

@ -0,0 +1,10 @@
{% include "header" %}
<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>
{% include "footer" %}

View File

@ -21,6 +21,9 @@
{% t .upcoming_events %}
</div>
{% include "training_events_dashboard" %}
<div class="points-container">
Total Points: <br> <span class="total-points">{{current_person.properties.points}}</span>
</div>
</div>
{% endif %}
</div>

View File

@ -0,0 +1,25 @@
<main class="np-box-container">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" action="{% route forgot_password_create %}" method="post" novalidate>
{% form_authenticity_token %}
<div class="np-form-field">
<label class="np-input-label" for="learner_email">
{% t shared.email_address %}
</label>
<input
autofocus="autofocus"
class="np-input"
id="learner_email"
name="learner[email]"
type="email"
>
</div>
<button type="submit" class="np-button np-button-big np-button-large-font np-form-action">
{% t .button_label %}
</button>
</form>
</div>
</div>
</main>

View File

@ -0,0 +1,52 @@
{% include "header" %}
{% include "course_version_outdated_alert", courses: courses.featured %}
<main class="np-main np-homepage">
<div class="np-homepage-hero">
<img class="np-homepage-hero-image"
src="{{ homepage.artwork_url }}"
alt="{{ homepage.headline }}"
/>
<div class="np-homepage-hero-content">
<div class="np-homepage-headline np-header-font-color">
{{ homepage.headline }}
</div>
<div class="np-homepage-subheadline np-header-font-color">
{{ homepage.subheadline }}
</div>
<a class="np-homepage-hero-cta np-button" href="{% route catalog %}">
{% t .discover %}
</a>
</div>
</div>
{% include "sub_navigation" %}
<div class="np-homepage-featured np-max-width">
<div class="np-homepage-featured-text">
<div class="np-homepage-headline">
{{ homepage.featured_courses_headline }}
</div>
<div class="np-homepage-subheadline">
{{ homepage.featured_courses_subheadline }}
</div>
</div>
{% if courses.featured.any? %}
<div class="np-homepage-featured-courses row">
{% for course in courses.featured %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% endfor %}
</div>
{% else %}
<div class="np-homepage-featured-empty">
<div class="np-zero-state-text">
{% t .empty, key: current_school.course_vocabulary %}
</div>
<img
class="np-zero-state-courses"
alt="{% t .empty, key: current_school.course_vocabulary %}"
/>
</div>
{% endif %}
</div>
</main>
{% include "footer" %}

View File

@ -0,0 +1,10 @@
{% include "header" %}
<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>
{% include "footer" %}

View File

@ -0,0 +1,10 @@
{% include "header" %}
<main class="np-main np-max-width np-page-container">
<div class="np-hidden-mobile" id="learning-path-desktop">
{% include "learning_path_summary_desktop_view" %}
</div>
<div class="np-hidden-desktop" id="learning-path-mobile">
{% include "learning_path_summary_mobile_view" %}
</div>
</main>
{% include "footer" %}

View File

@ -0,0 +1,53 @@
<main class="np-main np-box-container">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" action="{% route login %}" method="post" novalidate>
{% form_authenticity_token %}
<div class="np-form-field">
<label class="np-input-label" for="learner_email">
{% t shared.email_address %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="email"
name="learner[email]"
id="learner_email"
>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_password">
{% t shared.password %}
</label>
<input
class="np-input"
type="password"
name="learner[password]"
id="learner_password"
>
</div>
<button type="submit" class="np-button np-button-big np-button-large-font np-form-action">
{% t shared.sign_in %}
</button>
<a class="np-form-link np-button-color" href="{% route forgot_password_new %}">
{% t .forgot_password %}
</a>
{% if features.account_creation? %}
<a class="np-form-link np-button-color" href="{% route sign_up %}">
{% t shared.sign_up %}
</a>
{% endif %}
{% if features.request_access? %}
<a
class="np-form-link np-button-color"
target="_blank"
href="{{ current_school.request_access_link }}"
>
{{ current_school.request_access_label }}
</a>
{% endif %}
</form>
</div>
</div>
</main>

View File

@ -0,0 +1,10 @@
<main class="np-main np-max-width np-subpage-container">
<div class="np-homepage-featured-text">
<div class="np-homepage-headline">
{% t .header %}
</div>
</div>
<div class="np-homepage-featured-empty">
<img src="/images/404.svg">
</div>
</main>

View File

@ -0,0 +1,10 @@
{% include "header" %}
{% include "certificates_top_bar" %}
<main class="np-main np-certificate np-max-width np-page-container clear-main-spacings">
<section class="np-certificate-content-spacing">
<div class="row">
{% include "certificates_preview" %}
{% include "certificates_info_column" %}
</div>
</section>
</main>

View File

@ -0,0 +1,10 @@
{% include "header" %}
{% include "certificates_top_bar" %}
<main class="np-main np-certificate np-max-width np-page-container clear-main-spacings">
<section class="np-certificate-content-spacing">
<div class="row">
{% include "certificates_preview" %}
{% include "certificates_info_column" %}
</div>
</section>
</main>

View File

@ -0,0 +1,43 @@
<main class="np-box-container">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" method="post" action="{% route forgot_password_create %}">
<input type="hidden" name="_method" value="put">
<input
type="hidden"
value="{{ reset_password_token }}"
name="learner[reset_password_token]"
id="learner_reset_password_token"
>
{% form_authenticity_token %}
<div class="np-form-field">
<label class="np-input-label" for="learner_password">
{% t .new_password %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="password"
name="learner[password]"
id="learner_password"
>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_password_confirmation">
{% t .confirm_new_password %}
</label>
<input
class="np-input"
type="password"
name="learner[password_confirmation]"
id="learner_password_confirmation"
>
</div>
<button type="submit" class="np-button np-button-big np-form-action">
{% t .change_password %}
</button>
</form>
</div>
</div>
</main>

View File

@ -0,0 +1,27 @@
{% include "header" %}
<main class="np-main np-search np-subpage-container np-max-width">
<div class="np-resource-title">
{% t .title %}
</div>
<div class="np-search-header">
<div class="np-resource-subtitle">
{% t .showing %}
<span class="np-resource-subtitle-number">{{ results.count }}</span>
{% t .results_for %}
<span class="np-button-color">"{{ results.term }}"</span>
</div>
{% capture label %}{% t shared.filters.by_type %}{% endcapture %}
{%
include "filter_dropdown",
filters: results.filters,
key: "type",
label: label
%}
</div>
{% if results.items.any? %}
{% render "search_result" for results.items as result %}
{% else %}
{% include "search_zero_state" %}
{% endif %}
</main>
{% include "footer" %}

View File

@ -0,0 +1,72 @@
<main class="np-main np-box-container">
<div class="np-box">
{% include "header_minimal" %}
<div class="np-box-content-container">
<form class="np-form np-box-content" action="{% route sign_up %}" method="post" novalidate>
<div class="np-form-title"> {% t .create_account %} </div>
{% form_authenticity_token %}
<div class="np-form-flex-desktop">
<div class="np-form-field">
<label class="np-input-label" for="learner_first_name">
{% t shared.first_name %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="text"
name="learner[first_name]"
id="learner_first_name"
>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_last_name">
{% t shared.last_name %}
</label>
<input
class="np-input"
type="text"
name="learner[last_name]"
id="learner_last_name"
>
</div>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_email">
{% t shared.email_address %}
</label>
<input
class="np-input"
autofocus="autofocus"
type="email"
name="learner[email]"
id="learner_email"
>
</div>
<div class="np-form-field">
<label class="np-input-label" for="learner_password">
{% t shared.password %}
</label>
<input
class="np-input"
type="password"
name="learner[password]"
id="learner_password"
>
</div>
<button type="submit" class="np-button np-button-big np-button-large-font np-form-action">
{% t shared.sign_up %}
</button>
<span class="np-form-terms">
{% t .terms %}
<a
class="np-form-link np-button-color"
target="_blank"
href="{{ current_school.terms_of_service_url }}"
>
{% t .terms_link %}
</a>
</span>
</form>
</div>
</div>
</main>

View File

@ -47,4 +47,13 @@
.text-center {
text-align: center;
}
}
.points-container {
border: 2px solid #bac4ca;
border-radius: 4px;
padding: 60px 32px;
text-align: center;
}
.total-points {
font-size: 2rem;
}

View File

@ -0,0 +1,10 @@
{% include "header" %}
<main class="np-main np-training-session np-max-width np-page-container">
<div class="np-hidden-mobile" id="training-session-desktop">
{% include "training_session_desktop_view" %}
</div>
<div class="np-hidden-desktop" id="training-session-mobile">
{% include "training_session_mobile_view" %}
</div>
</main>
{% include "footer" %}

View File

@ -0,0 +1,43 @@
{% include "header" %}
<main class="np-main np-cta-page np-max-width np-subpage-container">
<div class="np-card-container np-card-padding-xlarge">
{% if token %}
<i class="np-cta-page-icon fal fa-users-class"></i>
<div class="np-form-headline">
{{ training_session.title }}
</div>
<div class="np-form-subheadline">
{% t .info,
event_name: training_session.title,
session_date: training_session.date,
session_time: training_session.time
%}
</div>
<div class="np-form-subheadline">
{% t .question %}
</div>
<form action="{% route training_session_attendance %}" method="post" class="np-cta-page-buttons">
{% form_authenticity_token %}
<input type="hidden" name="token" value="{{ token }}">
<input type="submit" name="not_attended" value="{% t .not_attended %}" class="np-button np-button-secondary">
<input type="submit" name="commit" value="{% t .attended %}" class="np-button">
</form>
<div class="np-form-subheadline">
{% t .salutation %}
</div>
<div class="np-form-subheadline">
{{ current_school.name }}
</div>
{% else %}
<i class="np-cta-page-icon fal fa-check-circle"></i>
<div class="np-form-headline">
{% t .success.response_text %}
</div>
<div class="np-cta-page-buttons">
<a href="{% route training_events %}" class="np-button">
{% t .success.button_text %}
</a>
{% endif %}
</div>
</main>
{% include "footer" %}

View File

@ -0,0 +1,30 @@
{% include "header" %}
<main class="np-main np-cta-page np-max-width np-subpage-container">
<div class="np-card-container np-card-padding-xlarge">
{% if token %}
<i class="np-cta-page-icon fal fa-bell-slash"></i>
<div class="np-form-subheadline np-margin-top">
{% t .unsubscribe_text %}
</div>
<div class="np-form-subheadline np-margin-top">
{% t .resubscribe_text %}
</div>
<form
id="unsubscribe_form"
action="{% route email_unsubscribe, unsubscribe_token: token %}"
method="post"
class="np-cta-page-buttons"
>
{% form_authenticity_token %}
<input type="hidden" name="_method" value="delete">
<input type="submit" name="commit" value="{% t .resubscribe_button %}" class="np-button np-button-wide">
</form>
{% else %}
<i class="np-cta-page-icon fal fa-bell-on"></i>
<div class="np-form-subheadline np-margin-top">
{% t .resubscribed_text %}
</div>
{% endif %}
</div>
</main>
{% include "footer" %}

View File

@ -63,6 +63,11 @@
</div>
{% endif %}
</div>
{% if current_person.signed_in? %}
{% if current_person.properties.language == "es" %}
{% include "spanish_lang" %}
{% endif %}
{% endif %}
</footer>
<style>
@ -72,7 +77,7 @@
border-top: 1px solid #DADCE0;
padding: 24px 16px 48px;
}
.np-footer-top {
justify-content:center;
flex-direction:column;
@ -105,4 +110,4 @@
margin: 0 16px 16px;
}
}
</style>
</style>

View File

@ -48,175 +48,6 @@
}
// setup body class based on property or cookies
function setupInitialLanguage() {
let userStorageLanguage = window.localStorage.getItem('academy-language');
{% if current_person.signed_in? and current_person.properties.user_language contains 'missing property' %}
{% assign property_missing = true %}
{% else %}
{% assign property_missing = false %}
{% endif %}
{% if current_person.signed_in? and current_person.properties.user_language != 'NULL' and property_missing == false %}
var selectedLanguage = "{{ current_person.properties.user_language }}";
{% else %}
var selectedLanguage = userStorageLanguage || "en";
{% endif %}
if (['en', 'de', 'es', 'fr', 'br'].includes(selectedLanguage)) {
changeLanguage(selectedLanguage, false);
} else {
changeLanguage('en', false);
console.log('wrong language initialized', selectedLanguage);
window.current_language = 'en';
}
const pathParts = window.location.pathname.split('/').slice(1);
if (
(pathParts.length === 1 && pathParts[0] === 'app') ||
(pathParts.length === 2 && (pathParts[0] === 'app' && (pathParts[1] === 'video-tutorials' || pathParts[1] === 'catalog')))
) {
selectedLanguage = 'en';
} else if (
window.location.pathname.includes('/de-homepage') ||
window.location.pathname.includes('/de-video-tutorials') ||
window.location.pathname.includes('/de-catalog')
) {
selectedLanguage = 'de';
} else if (
window.location.pathname.includes('/es-homepage') ||
window.location.pathname.includes('/es-video-tutorials') ||
window.location.pathname.includes('/es-catalog')
) {
selectedLanguage = 'es';
} else if (
window.location.pathname.includes('/fr-homepage') ||
window.location.pathname.includes('/fr-video-tutorials') ||
window.location.pathname.includes('/fr-catalog')
) {
selectedLanguage = 'fr';
} else if (
window.location.pathname.includes('/br-homepage') ||
window.location.pathname.includes('/br-video-tutorials') ||
window.location.pathname.includes('/br-catalog')
) {
selectedLanguage = 'br';
} else {
selectedLanguage = 'en';
}
changeLanguage(selectedLanguage, false);
}
addEventListener('DOMContentLoaded', () => {
setupInitialLanguage();
});
function redirectToLanguageHomepage(language) {
let homepageUrl = '';
switch (window.current_language) {
case 'de':
homepageUrl = '/app/de-homepage';
break;
case 'es':
homepageUrl = '/app/es-homepage';
break;
case 'fr':
homepageUrl = '/app/fr-homepage';
break;
case 'br':
homepageUrl = '/app/br-homepage';
break;
default:
homepageUrl = '/app';
break;
}
window.location.href = homepageUrl;
}
document.addEventListener('DOMContentLoaded', function() {
const academyLanguage = window.localStorage.getItem('academy-language');
const url = window.location.href;
const lastSegment = url.substring(url.lastIndexOf('/') + 1);
console.log(academyLanguage);
function redirectToRightPage() {
let catalogUrl = '';
let videoUrl = '';
let homepageUrl = '';
if (window.location.href.includes('/app/catalog')) {
switch (academyLanguage) {
case 'de':
catalogUrl = '/app/de-catalog';
break;
case 'es':
catalogUrl = '/app/es-catalog';
break;
case 'fr':
catalogUrl = '/app/fr-catalog';
break;
case 'br':
catalogUrl = '/app/br-catalog';
break;
case 'en':
catalogUrl = '/app/catalog';
return;
}
window.location.href = catalogUrl;
}
else if (window.location.href.includes('/app/video-tutorials')) {
switch (academyLanguage) {
case 'de':
videoUrl = '/app/de-video-tutorials';
break;
case 'es':
videoUrl = '/app/es-video-tutorials';
break;
case 'fr':
videoUrl = '/app/fr-video-tutorials';
break;
case 'br':
videoUrl = '/app/br-video-tutorials';
break;
case 'en':
videoUrl = '/app/catalog';
return;
}
window.location.href = videoUrl;
}
else if (lastSegment === 'app') {
switch (academyLanguage) {
case 'de':
homepageUrl = '/app/de-homepage';
break;
case 'es':
homepageUrl = '/app/es-homepage';
break;
case 'fr':
homepageUrl = '/app/fr-homepage';
break;
case 'br':
homepageUrl = '/app/br-homepage';
break;
case 'en':
homepageUrl = '/app';
return;
}
window.location.href = homepageUrl;
}
}
redirectToRightPage();
});
const academyLanguage = window.localStorage.getItem('academy-language');
console.log(academyLanguage);
</script>
<!--Function to display proper courses based on language value-->

View File

@ -45,26 +45,11 @@
<div class="header-dropdown-container np-hidden-mobile">
<div class="dropdown-arrow"></div>
<div class="header-dropdown">
<a class="lang-en" href="https://www.walmartluminate.com/apps">Walmart Luminate</a>
<a class="lang-es" href="https://www.walmartluminate.com/apps">Walmart Luminate</a>
<a class="Home header-dropdown" href="https://www.walmartluminate.com/apps">Walmart Luminate</a>
<a class="lang-en" href="https://www.walmartluminate.com/shopperbehavior/dh.clientportal.web/web/#/">Shopper Behavior</a>
<a class="lang-es" href="https://www.walmartluminate.com/shopperbehavior/dh.clientportal.web/web/#/">Comportamiento del comprador</a>
<a class="lang-en" href="https://www.walmartluminate.com/customerperception">Customer Perception</a>
<a class="lang-es" href="https://www.walmartluminate.com/customerperception">Percepción del cliente</a>
<a class="lang-en" href="https://www.walmartluminate.com/reportbuilder">Report Builder</a>
<a class="lang-es" href="https://www.walmartluminate.com/reportbuilder">Generador de informes</a>
<a class="lang-en" href="https://www.walmartluminate.com/channelperformance/selectcategories">Insights</a>
<a class="lang-es" href="https://www.walmartluminate.com/channelperformance/selectcategories">Perspectivas</a>
</div>
</div>
<div class="header-dropdown-container np-hidden-desktop">
<div class="dropdown-arrow"></div>
<div class="header-dropdown">
<a href="https://www.walmartluminate.com/apps">Walmart Luminate</a>
<a href="https://www.walmartluminate.com/shopperbehavior/dh.clientportal.web/web/#/">Shopper Behavior</a>
<a href="https://www.walmartluminate.com/customerperception">Customer Perception</a>
<a href="https://www.walmartluminate.com/reportbuilder">Report Builder</a>
<a href="https://www.walmartluminate.com/channelperformance/selectcategories">Insights</a>
</div>
</div>
<div class="header-dropdown-container np-hidden-desktop">
@ -154,10 +139,10 @@
</div>
</div>
<nav class="np-header-avatar-tooltip-navigation">
<a class="np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/profile">Profile</a>
<a class="np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/admin">Admin</a>
<a class="np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/resources">Resources</a>
<a class="np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/support">Support</a>
<a class="Profile np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/profile">Profile</a>
<a class="Admin np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/admin">Admin</a>
<a class="Resources np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/resources">Resources</a>
<a class="Support np-header-avatar-tooltip-navigation-link" href="https://www.walmartluminate.com/support">Support</a>
<a
class="np-header-avatar-tooltip-navigation-link np-danger"
href="{% route logout %}"

View File

@ -2,7 +2,7 @@
<div class="row">
<div class="col-xs-12">
<div class="np-homepage-featured-text">
<div class="np-homepage-headline">
<div class="Featured np-homepage-headline">
{{ homepage.featured_courses_headline }}
</div>
<div class="featured-carousel-controls np-hidden-mobile">
@ -27,8 +27,8 @@
{% if is_featured %}
{% assign featured_courses_count = featured_courses_count | plus: 1 %}
<div class="featured-course-slide" data-position="{{course.properties.course_position}}">
<div class="featured-course-slide" data-position="{{course.properties.course_position}}">
{% include "cards_article" with course %}
</div>
{% endif %}
@ -87,7 +87,7 @@ window.addEventListener("load", (event) => {
indexesArray.forEach(e =>
document.querySelector(".featured-courses-slider").appendChild(e));
initFeaturedCoursesCarousel()
@ -119,7 +119,7 @@ function initFeaturedCoursesCarousel() {
});
}
</script>
@ -219,4 +219,4 @@ function initFeaturedCoursesCarousel() {
margin-top:12px;
}
}
</style>
</style>

View File

@ -1,6 +1,6 @@
<div class="np-homepage-ongoing np-max-width">
<div class="np-homepage-ongoing-text">
<div class="np-homepage-headline">
<div class="Ongoing np-homepage-headline">
Ongoing Training
</div>
<div class="ongoing-carousel-controls np-hidden-mobile">
@ -54,7 +54,7 @@
alt="Yikes! You don't have any ongoing training at this moment."
/>
<div class="zero-state-cta" style="margin-top:32px;">
<a href="/app/catalog" class="np-button">Explore Catalog</a>
<a href="/app/catalog" class="Catalog np-button">Explore Catalog</a>
</div>
</div>
{% endif %}
@ -90,7 +90,7 @@ window.addEventListener("DOMContentLoaded", (event) => {
});
});
</script>
@ -191,4 +191,4 @@ window.addEventListener("DOMContentLoaded", (event) => {
margin-top:12px;
}
}
</style>
</style>

View File

@ -1,7 +1,7 @@
<section class="homepage-topics np-max-width np-subpage-container">
<section class="homepage-topics np-max-width np-subpage-container">
<div class="row">
<div class="col-xs-12">
<div class="np-section-header">Explore Courses by Category</div>
<div class="Topics np-section-header">Explore Courses by Category</div>
</div>
</div>
@ -48,7 +48,7 @@
</a>
{% endif %}
{% endfor %}
</div>
</div>
</div>
</div>
</section>
@ -136,7 +136,7 @@
.category-card:nth-child(3n+1) {
margin-left:16px;
}
.category-card:nth-child(4n+1) {
margin-left:0;
}
@ -146,4 +146,4 @@
}
}
</style>
</style>

View File

@ -0,0 +1,674 @@
<style>
.np-dashboard-resources-title.lp,
.np-dashboard-resources-title.modules,
.np-dashboard-resources-title.events,
.np-zero-state-text,
.np-button.np-button-wide,
.np-footer-support-item.np-footer-support-help,
.np-card-content-progress.np-button-color.notstarted,
.np-zero-state-text.training-events,
.np-button.lp,
.sub-navigation-label:nth-child(1),
.np-resource-title.modules,
.np-resource-subtitle.modules,
.np-resource-title.lp,
.np-resource-subtitle.lp,
.np-card-header-type,
.np-resource-title.events,
.np-resource-subtitle.events,
.np-button.dropdown-button,
.np-top-vocabulary.np-text-title.np-text-muted,
.np-top-cta-progress-title.np-text-title,
.np-top-button.np-button-font-color.np-button.np-button-big,
.np-text-title.np-course-outline-title,
.np-card-heading,
.np-top-cta-progress-text.np-button-color,
.np-card-heading.lp,
.np-top-cta-progress-title.np-text-title.lp,
.np-top-vocabulary.np-text-title,
.np-homepage-headline,
.Featured.np-homepage-headline,
.Home.np-sub-navigation-content-item-link,
.Catalog.np-sub-navigation-content-item-link,
.Certifications.np-sub-navigation-content-item-link,
.Modules.np-sub-navigation-content-item-link,
.Dashboard.np-sub-navigation-content-item-link,
.Events.np-sub-navigation-content-item-link,
.Learning.Paths.np-sub-navigation-content-item-link,
.Home.np-footer-navigation-link.np-button-color,
.Learning.Paths.np-footer-navigation-link.np-button-color,
.Events.np-footer-navigation-link.np-button-color,
.course-completion,
.np-header-avatar-tooltip-navigation-link,
.np-header-avatar-tooltip-navigation-link.np-danger,
.np-button.np-button-big.np-button-large-font.np-form-action,
.np-resource-title.my-profile,
.np-input-label.email,
.np-input-label.first-name,
.np-input-label.last-name,
.np-input-label.display-name,
.np-input-label.password,
.np-input-label.password-confirmation,
.avatar-description,
.avatar-requirements,
.radio__label.gravatar,
.radio__label.custom,
.header-dropdown-shopper,
.header-dropdown-perception,
.header-dropdown-insights,
.header-dropdown-reports,
.Admin.np-header-avatar-tooltip-navigation-link,
.Resources.np-header-avatar-tooltip-navigation-link,
.Profile.np-header-avatar-tooltip-navigation-link,
.Support.np-header-avatar-tooltip-navigation-link,
.hero-search-input,
.Topics.np-section-header,
.Catalog.np-button,
.Ongoing.np-homepage-headline,
.Progress.np-section-header,
.Learning.Paths.np-dashboard-resources-title,
.Courses.np-dashboard-resources-title,
.Catalog.np-resource-title,
.Catalog.np-resource-subtitle,
#desktop_upload_avatar
{
text-indent: -9999999px;
}
/* HEADER */
.np-header-avatar-tooltip-navigation-link::after {
/* Profile Settings */
text-indent: 0;
line-height: 0;
display: block;
content: "Configuración de Perfil";
}
.np-header-avatar-tooltip-navigation-link.np-danger::after {
/* Sign Out */
text-indent: 0;
line-height: 0;
display: block;
content: "Desconectar";
}
/* HEADER DROPDOWN */
.Support.np-header-avatar-tooltip-navigation-link::after {
/* Support */
text-indent: 0;
line-height: 0;
display: block;
content: "Apoyo";
}
.Admin.np-header-avatar-tooltip-navigation-link::after {
/* Admin */
text-indent: 0;
line-height: 0;
display: block;
content: "Administradora";
}
.Profile.np-header-avatar-tooltip-navigation-link::after {
/* Profile */
text-indent: 0;
line-height: 0;
display: block;
content: "Perfil";
}
.Resources.np-header-avatar-tooltip-navigation-link::after {
/* Resources */
text-indent: 0;
line-height: 0;
display: block;
content: "Recursos";
}
.header-dropdown-shopper::after {
/* Sign Out */
text-indent: 0;
line-height: 0;
display: block;
content: "Compradora";
}
.header-dropdown-insights::after {
/* Sign Out */
text-indent: 0;
line-height: 0;
display: block;
content: "Perspectivas";
}
.header-dropdown-perceptions::after {
/* Sign Out */
text-indent: 0;
line-height: 0;
display: block;
content: "Percepciones";
}
.header-dropdown-reports::after {
/* Sign Out */
text-indent: 0;
line-height: 0;
display: block;
content: "Informes";
}
/* ACCOUNT */
.radio__label.gravatar::after {
/* Use Gravatar™ */
text-indent: 0;
line-height: 0;
display: block;
content: "Utilice Gravatar™";
}
.radio__label.custom::after{
/* Upload Custom Photo */
text-indent: 0;
line-height: 0;
display: block;
content: "Subir Foto Personalizada";
}
#desktop_upload_avatar::after {
/* Upload Photo */
text-indent: 0;
line-height: 0;
display: block;
content: "Subir Foto";
}
.avatar-description::after {
/* Adding a photo adds a personal touch to your profile. Your profile picture is used as the icon for your account to represent you. It is also displayed in various other places next to your name. */
text-indent: 0;
line-height: auto;
display: block;
content: "Agregar una foto agrega un toque personal a su perfil. Su foto de perfil se utiliza como icono de su cuenta para representarlo. También se muestra en varios otros lugares junto a su nombre.";
}
.avatar-requirements::after {
/* For the best results, your profile picture size should be at least 400x400 pixels, and a max size of 2MB. The file format should be PNG, JPG or GIF. */
text-indent: 0;
line-height: auto;
display: block;
content: "Para obtener los mejores resultados, el tamaño de la imagen de su perfil debe ser de al menos 400x400 píxeles y un tamaño máximo de 2 MB. El formato de archivo debe ser PNG, JPG o GIF.";
}
.np-button.np-button-big.np-button-large-font.np-form-action::after {
/* Save Profile */
text-indent: 0;
line-height: 0;
display: block;
content: "Guardar Perfil";
}
.np-resource-title.my-profile::after {
/* My Profile */
text-indent: 0;
line-height: 1;
display: block;
content: "Mi Perfil";
margin-bottom: 24px;
margin-top: -24px;
}
.np-input-label.email::after {
/* Email */
text-indent: 0;
line-height: 1;
display: block;
content: "Email *";
}
.np-input-label.first-name::after {
/* First Name */
text-indent: 0;
line-height: 1;
display: block;
content: "Nombre *";
}
.np-input-label.last-name::after {
/* Last Name */
text-indent: 0;
line-height: 1;
display: block;
content: "Apellido *";
}
.np-input-label.display-name::after {
/* Display Name */
text-indent: 0;
line-height: 1;
display: block;
content: "Nombre para mostrar";
}
.np-input-label.password::after {
/* Password */
text-indent: 0;
line-height: 1;
display: block;
content: "Contraseña *";
}
.np-input-label.password-confirmation::after {
/* Password Confirmation */
text-indent: 0;
line-height: 1;
display: block;
content: "Confirmación de Contraseña *";
}
/* MAIN CONTENT */
.Catalog.np-button::after {
/* Explore Catalog */
text-indent: 0;
line-height: 0;
display: block;
content: "Explorar catálogo",
}
.Ongoing.np-homepage-headline::after {
/* Ongoing Training */
text-indent: 0;
line-height: 0;
display: block;
content: "Entrenamiento en curso",
}
.Progress.np-section-header::after {
/* Progress Tracker */
text-indent: 0;
line-height: 0;
display: block;
content: "Seguimiento de progreso";
}
.Topics.np-section-header::after {
/* Explore Courses by Category */
text-indent: 0;
line-height: 0;
display: block;
content: "Explorar cursos por categoría";
}
.hero-search-input::after {
/* What are you looking for? */
text-indent: 0;
line-height: 0;
display: block;
content[placeholder]: "¿Qué estás buscando?";
}
.Featured.np-homepage-headline::after {
/* Featured Courses */
text-indent: 0;
line-height: 0;
display: block;
content: "Cursos destacados";
}
.np-homepage-headline::after {
/* Headline */
text-indent: 0;
line-height: 0;
display: block;
content: "Benvenida a Luminate Mexico";
}
.np-dashboard-resources-title.lp::after {
/* Learning Paths */
text-indent: 0;
line-height: 0;
display: block;
content: "Mis rutas";
}
.np-dashboard-resources-title.modules::after {
/* Modules */
text-indent: 0;
line-height: 0;
display: block;
content: "Módulos";
}
.np-dashboard-resources-title.events::after {
/* Events */
text-indent: 0;
line-height: 0;
display: block;
content: "Próximos Eventos";
}
/* SUB-NAVIGATION */
.Home.np-sub-navigation-content-item-link::after {
/* Home */
text-indent: 0;
line-height: 0;
display: block;
content: "Página de Inicio";
margin-top: -9px;
}
.Events.np-sub-navigation-content-item-link::after {
/* Events */
text-indent: 0;
line-height: 0;
display: block;
content: "Próximos Eventos";
margin-top: -9px;
}
.Certifications.np-sub-navigation-content-item-link::after {
/* Events */
text-indent: 0;
line-height: 0;
display: block;
content: "Certificaciones";
margin-top: -9px;
}
.Dashboard.np-sub-navigation-content-item-link::after {
/* Dashboard */
text-indent: 0;
line-height: 0;
display: block;
content: "Panel";
margin-top: -9px;
}
.Catalog.np-sub-navigation-content-item-link::after {
/* Modules */
text-indent: 0;
line-height: 0;
display: block;
content: "Catalogar";
margin-top: -9px;
}
.Modules.np-sub-navigation-content-item-link::after {
/* Modules */
text-indent: 0;
line-height: 0;
display: block;
content: "Módulos";
margin-top: -9px;
}
.Learning.Paths.np-sub-navigation-content-item-link::after {
/* Learning Paths */
text-indent: 0;
line-height: 0;
display: block;
content: "Mis Rutas";
margin-top: -9px;
}
/* DASHBOARD */
.Learning.Paths.np-dashboard-resources-title::after {
/* Learning Paths */
text-indent: 0;
line-height: 0;
display: block;
content: "Mis Rutas";
}
.Courses.np-dashboard-resources-title::after {
/* Courses */
text-indent: 0;
line-height: 0;
display: block;
content: "Cursos";
}
/* CATALOG */
.Catalog.np-resource-title::after {
/* Course Catalog */
text-indent: 0;
line-height: 0;
display: block;
content: "Catálogo de cursos";
}
.Catalog.np-resource-subtitle::after {
/* Great courses from the comfort of your home or office. */
text-indent: 0;
line-height: 0;
display: block;
content: "Excelentes cursos desde la comodidad de tu hogar u oficina.";
}
/* LEARNING PATHS */
.np-button.lp::after {
/* View */
text-indent: 0;
line-height: 0;
display: block;
content: "Ver";
}
.np-zero-state-text::after {
/* Bummer! You're not assigned any Learning Paths. */
text-indent: 0;
line-height: inherit;
display: block;
content: "¡Gorrón! No se le asignó ninguna ruta de aprendizaje.";
margin-top: -10px;
}
.np-resource-subtitle.lp::after {
/* Explore curated sets of courses for a tailored learning experience */
text-indent: 0;
line-height: 0;
display: block;
content: "Explore conjuntos de cursos seleccionados para una experiencia de aprendizaje personalizada";
}
.np-card-header-type::after,
.np-resource-title.lp::after,
.np-top-vocabulary.np-text-title::after
{
/* Learning Paths */
text-indent: 0;
line-height: 0;
display: block;
content: "Mis rutas";
}
.np-top-cta-progress-text.np-button-color::after {
/* Not started */
text-indent: 0;
line-height: 1;
display: block;
content: "No empezado";
}
.np-card-heading.lp::after {
/* About This Learning Path */
text-indent: 0;
line-height: 1;
display: block;
content: "Acerca de esta ruta de aprendizaje";
}
/* COURSE CARDS */
.np-button.np-button-wide::after {
/* View */
text-indent: 0;
line-height: 0;
display: block;
content: "Ver";
}
.np-card-content-progress.np-button-color.notstarted::after {
/* Not started */
text-indent: 0;
line-height: 1;
display: block;
content: "No empezado";
}
.np-top-cta-progress-title.np-text-title.lp::after {
/* Learning Path Progress */
text-indent: 0;
line-height: 1;
display: block;
content: "Progreso de la ruta de aprendizaje";
}
.course-completion::after {
/* Complete */
text-indent: 0;
line-height: 1;
display: block;
content: "Completo";
margin-top: -13px;
}
/* EVENTS */
.np-zero-state-text.training-events::after {
/* You have no upcoming Events. Check back later for updates */
text-indent: 0;
line-height: inherit;
display: block;
content: "No tienes eventos próximos. Vuelve más tarde para ver las actualizaciones.";
margin-top: -10px;
}
.np-resource-title.events::after {
/* Training Events */
text-indent: 0;
line-height: 0;
display: block;
content: "Eventos de formación";
}
.np-resource-subtitle.events::after {
/* Discover in-person and online events to maximize your learning */
text-indent: 0;
line-height: 0;
display: block;
content: "Descubra eventos en persona y en línea para maximizar su aprendizaje";
}
.np-button.dropdown-button::after {
/* Filter */
text-indent: 0;
line-height: 0;
display: block;
content: "Filtrar";
}
/* FOOTER */
.np-footer-support-item.np-footer-support-help::after {
/* Need help? */
text-indent: 0;
line-height: 0;
display: block;
float: right;
content: "¿Necesitas ayuda?";
margin-top: 8px;
}
.Home.np-footer-navigation-link.np-button-color::after {
/* Home */
text-indent: 0;
line-height: 0;
display: block;
content: "Página de Inicio";
margin-top: -9px;
}
.Events.np-footer-navigation-link.np-button-color::after {
/* Events */
text-indent: 0;
line-height: 0;
display: block;
content: "Próximos Eventos";
margin-top: -9px;
}
.Learning.Paths.np-footer-navigation-link.np-button-color::after {
/* Learning Paths */
text-indent: 0;
line-height: 0;
display: block;
content: "Mis Rutas";
margin-top: -9px;
}
/* MODULES */
.np-resource-title.modules::after {
/* Modules */
text-indent: 0;
line-height: 0;
display: block;
content: "Módulos";
}
.np-resource-subtitle.modules::after {
/* Great Modules from the comfort of your home or office. */
text-indent: 0;
line-height: 0;
display: block;
content: "Grandes módulos desde la comodidad de su hogar u oficina.";
}
.np-top-vocabulary.np-text-title.np-text-muted::after {
/* Module */
text-indent: 0;
line-height: 0;
display: block;
content: "Módulo";
}
.np-top-cta-progress-title.np-text-title::after {
/* Course Progress */
text-indent: 0;
line-height: 0;
display: block;
content: "Progreso del curso";
margin-bottom: 8px;
}
.np-top-button.np-button-font-color.np-button.np-button-big::after {
/* Continue */
text-indent: 0;
line-height: 0;
display: block;
content: "Continuar";
}
.np-text-title.np-course-outline-title::after {
/* Module outline */
text-indent: 0;
line-height: 0;
display: block;
content: "Esquema del módulo";
}
.np-card-heading::after {
/* About the module */
text-indent: 0;
line-height: 0;
display: block;
content: "Sobre el modulo";
}
</style>

View File

@ -2,9 +2,9 @@
<div class="np-sub-navigation-content">
{% for link in navigations.sub_navigation %}
<div class="np-sub-navigation-content-item {{ link.active_class }}">
<a class="np-sub-navigation-content-item-link" href="{{ link.url }}">
<i class="{{ link.icon }} np-button-color np-sub-navigation-content-item-icon"></i>
{{ link.label }}
<i class="{{ link.icon }} np-button-color np-sub-navigation-content-item-icon"></i>
<a class="{{ link.label }} np-sub-navigation-content-item-link" href="{{ link.url }}">
{{ link.label }}
</a>
<div class="np-sub-navigation-content-item-bar np-button-background-color"></div>
</div>
@ -41,9 +41,10 @@
</script>
<style>
/*
.np-sub-navigation-content-item-link,
.np-sub-navigation-content-item-active .np-sub-navigation-content-item-link {
color:#333;
}
}*/
</style>

View File

@ -4,8 +4,8 @@
<main class="np-main np-catalog 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 class="Catalog np-resource-title">{{ catalog.headline }}</div>
<div class="Catalog np-resource-subtitle">{{ catalog.subheadline }}</div>
</div>
{% capture label %}{% t shared.filters.by_category %}{% endcapture %}

View File

@ -5,12 +5,12 @@
<div class="row np-flex-center">
<div class="col-xs-12 col-sm-8">
{% if features.learning_paths? %}
<div class="np-dashboard-resources-title">
<div class="Learning Paths np-dashboard-resources-title">
{% t shared.learning_paths %}
</div>
{% include "learning_paths_index", items: learning_paths.enrolled %}
{% endif %}
<div class="np-dashboard-resources-title">
<div class="Courses np-dashboard-resources-title">
{% t shared.course_vocabulary.plural, key: current_school.course_vocabulary %}
</div>
{% include "courses_index", class: "col-xs-12 col-sm-6 np-stretch-content" %}
@ -25,4 +25,4 @@
{% endif %}
</div>
</main>
{% include "footer" %}
{% include "footer" %}

View File

@ -107,7 +107,7 @@
<div class="np-max-width np-homepage-row-wrapper">
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12" style="display:flex; flex-direction:column;">
<div class="np-section-header">Progress Tracker</div>
<div class="Progress np-section-header">Progress Tracker</div>
<div class="learning-path-progress-container">
<div class="row">
{% assign lps_in_progress = 0 %}

View File

@ -237,7 +237,6 @@ html {
.np-main {
padding-top: 64px;
}
.np-sub-navigation:not(.homepage-nav):not(.np-page-container) {
position: fixed;
top: 64px;