Learn to create and manage a best-in-class inventory operation for your business.
@@ -38,8 +42,17 @@
{% elsif omni %}
New to Cin7 Omni? Start learning here!
- {% include "category_carousel"%}
-
+ {% include "category_carousel"%}
+
+ {% elsif log_out %}
+
New to Cin7 Core? Start learning here!
+
+ {% include 'learning_path_carousel' %}
+
+
New to Cin7 Omni? Start learning here!
+
+ {% include "category_carousel"%}
+
{% endif %}
diff --git a/Custom_Templates/customer_templates/Cin7 Customer Academy/learning_paths.html.liquid b/Custom_Templates/customer_templates/Cin7 Customer Academy/learning_paths.html.liquid
index f6c4c70f..dfd95e5a 100644
--- a/Custom_Templates/customer_templates/Cin7 Customer Academy/learning_paths.html.liquid
+++ b/Custom_Templates/customer_templates/Cin7 Customer Academy/learning_paths.html.liquid
@@ -1,11 +1,13 @@
{% assign omni = false %}
{% assign core = false %}
+{% assign log_out = true %}
{% if current_person.signed_in? %}
+ {% assign log_out = false %}
{% for group in current_person.groups %}
- {% if group.id == '9daeef1e-bd6c-47da-a343-ef772ba88300' %}
+ {% if group.name contains 'Core' %}
{% assign core = true %}
- {% elsif group.id == 'afa31e2d-646e-4b7e-b65e-c426dc30ec5c' %}
+ {% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endfor %}
diff --git a/Custom_Templates/customer_templates/Cin7 Customer Academy/styles.css.liquid b/Custom_Templates/customer_templates/Cin7 Customer Academy/styles.css.liquid
index a940ffc7..ae764abd 100644
--- a/Custom_Templates/customer_templates/Cin7 Customer Academy/styles.css.liquid
+++ b/Custom_Templates/customer_templates/Cin7 Customer Academy/styles.css.liquid
@@ -85,9 +85,9 @@ body {
color: #002f6f;
font-size: 1.25rem;
margin: 0;
+ height: 46px;
}
.course-time {
- margin-top: 15px;
color: #000000b5;
display: flex;
align-items: center;
@@ -96,6 +96,7 @@ body {
.course-desc {
margin-top: 15px;
color: #002f6f;
+ height: 60px;
}
.lp-link {
text-decoration: none;
@@ -188,7 +189,7 @@ body {
margin-top: 20px;
}
.card {
- margin: 10px;
+ margin: 10px;
}
.right-arrow {
@@ -391,7 +392,7 @@ body {
.np-footer-top {
display: flex;
flex-direction: row;
- align-items:flex-start;
+ align-items:flex-start;
}
.np-footer-navigation-list {
@@ -473,31 +474,28 @@ body {
width: 60%;
}
.card-badge {
- background: #f8f5f2;
+ background: #FFFFFF;
display: flex;
justify-content: center;
- padding: 2rem;
+ padding: 2rem;
border-radius: 20px 20px 0 0;
}
.card-category {
background: #002f6f;
display: flex;
justify-content: center;
- padding: 2rem;
+ padding: 2rem;
border-radius: 20px 20px 0 0;
}
.card-content-badge {
text-align: center;
+ padding: 0;
}
.completed-courses {
margin-top: 10px;
font-weight: 500;
color: #002f6f;
}
-.recommended {
- margin-top: 10px;
- color: #000000b5;
-}
.np-header-desktop-nav-list {
justify-content: end;
}
@@ -506,9 +504,28 @@ body {
}
.recommended
{
- font-weight: 600;
- color: #002f6f;
+ color: #000000b5;
+}
+
+.card-type
+{
+ color: #000000b5;
+ text-align: end;
+ margin-bottom: 10px;
font-size: 0.85rem;
+ font-weight: 600;
+ opacity: 0.75;
+}
+.course-details {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ margin-top: 15px;
+ gap: 10px
+}
+
+.card:hover {
+ transform: translateY(-0.125rem);
}
@media only screen and (max-width: 768px) {
@@ -543,4 +560,4 @@ body {
position: relative;
margin-bottom: 20px;
}
-}
\ No newline at end of file
+}
diff --git a/CustomerNotes/Artera/Artera.md b/CustomerNotes/Artera/Artera.md
index 9977e60e..8b03321e 100644
--- a/CustomerNotes/Artera/Artera.md
+++ b/CustomerNotes/Artera/Artera.md
@@ -139,3 +139,29 @@ Jackie is OUT as of 22nd.
* These partners need better metrics.
* Can they do a scheduled report?
* Filters for the report? She's not sure.
+
+## 02/14/2024
+
+### New Year, new meetings
+
+Goals for 2024:
+* She will get this to me
+* CKO is in March, that's when they will get a "lay of the land" for the company.
+
+Needs for 2024:
+* Mini coursework
+* Role-specific courses
+* Wants to see the next 6 months roadmap
+* Would love to see a public product board and/or community to up-vote ideas.
+* Update URL to a new custom domain.
+ * TODO: Send Emily and Jackie the steps for updating their domain to Artera.
+
+Red Flags:
+* Analytics "are the worst they have ever seen in an LMS"
+ * Average Course Completion across _all_ courses needs to be customized in Google Sheets
+ * Manual calculations are needed
+ * They use Looker, so comparatively Northpass is limited.
+ * They want to know more about Enterprise analytics.
+* Learning Paths not available to Managers is "bizarre"
+* Admin Console for who has changed what, who has updated the course, being able to view version history, etc.
+* Workflow - uploading SCORM file directly to course. Editing and uploading quizzes directly to a course.
diff --git a/CustomerNotes/SPSCommerce/SPSCommerce.md b/CustomerNotes/SPSCommerce/SPSCommerce.md
index c50293ea..9f797344 100644
--- a/CustomerNotes/SPSCommerce/SPSCommerce.md
+++ b/CustomerNotes/SPSCommerce/SPSCommerce.md
@@ -169,5 +169,5 @@ Be to sure to ask how the redesign is going and how the User Journey/Flow is pro
- They want Gainsight to be much more robust, but it all depends on the data.
- Very interested in the analytics extract and they know it is a paid service.
-TODO: Create new report in Looker for Kayla/Kathleen. Kayla to send the filter params. Pulled Monthly, but for all time.
-TODO: Test [this video](https://www.youtube.com/watch?v=WMFEMn2-O9E) in Northpass and ensure no ads show up.
+DONE: Create new report in Looker for Kayla/Kathleen. Kayla to send the filter params. Pulled Monthly, but for all time.
+DONE: Test [this video](https://www.youtube.com/watch?v=WMFEMn2-O9E) in Northpass and ensure no ads show up.
diff --git a/CustomerNotes/Walmart/Walmart.md b/CustomerNotes/Walmart/Walmart.md
index 30fd3e1f..f21889ef 100644
--- a/CustomerNotes/Walmart/Walmart.md
+++ b/CustomerNotes/Walmart/Walmart.md
@@ -955,5 +955,13 @@ Travis question re: Context Aware screens:
Expectations? None really. These are new metrics that they haven't seen before - no KPIs yet.
They have some internal funnels to break it out by category.
What does Travis want to see improve when we pull these numbers next quarter?
+
* Segmentation of resource overview
-* Content Authoring - fewer activities, are we using all features,
+* Content Authoring - fewer activities, are we using all features
+
+## 02/14/2024
+
+### Design - Scroll over Click
+
+Sounds like they want us to be more of a CMS.
+They would like more scrollable content and less clickable content.
diff --git a/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js b/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js
index 70936d6f..1c16b44f 100644
--- a/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js
+++ b/Scripts/GAS_GS/AnthologyCSV-Parse-Prod/MasterCSV_Parser.js
@@ -11,7 +11,7 @@ async function prepareSheet() {
}
}
-function main(previousLast) {
+function main() {
var folder = DriveApp.getFolderById("1hAz7O-eoxFUk4YW7FoHr4uNJmPs7CiV5BjBNTLtMJzXwY0CbpykYgSAkFR5Quy_MPdn3e_5j");
var files = folder.getFiles();
while (files.hasNext()) {
@@ -103,6 +103,7 @@ function austinComparseData(outdated_data, updated_data) {
}
function updatedDomainsOnly(domains_to_update) {
+ Logger.log(domains_to_update)
for (var x = 0; x < domains_to_update.length; x++) {
var array = domains_to_update[x];
for (var i = 1; i < array.length; i++) {
@@ -128,105 +129,88 @@ function updatedDomainsOnly(domains_to_update) {
}
}
}
- replaceOnSheet(array);
+
+ let tmpArray = array;
const dom = array.shift();
const groups = array;
- //sendWebhook({domain_to_update : { domain: dom, group_ids: groups }})
+ Logger.log("{domain_to_update : {domain :"+dom+", group_ids : "+groups+" }}")
+ sendWebhook({domain_to_update : { domain: dom, group_ids: groups }})
+ replaceOnSheet(tmpArray);
}
}
-function replaceOnSheet(array) {
+function replaceOnSheet(tmpArray) {
var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/');
var sheet = ss.getActiveSheet()
var dataRow = Math.max(sheet.getLastRow(),1);
- let dom = array.shift();
- let groups = array;
+ let domain = tmpArray.shift();
+ let groupIds = tmpArray;
- Logger.log(dom)
- let boo = sheet.createTextFinder(dom).findNext()
+ Logger.log(domain)
+ let boo = sheet.createTextFinder(domain).findNext()
if (boo != null ) {
group2 = []
currCell = boo.getRowIndex();
- groups.forEach(item => { if (item.length > 0) { group2.push(item) }});
+ groupIds.forEach(item => { if (item.length > 0) { group2.push(item) }});
group2 = [group2];
- Logger.log(group2);
- sheet.getRange(currCell, 1).setValue(dom);
+ //Logger.log(group2);
+ sheet.getRange(currCell, 1).setValue(domain);
sheet.getRange(currCell, 2, 1, group2[0].length).setValues(group2)
- // groups.forEach((item) => sheet.getRange(currCell, 2, 1, groups.length).setValue(item));
- // groups.forEach((element) => Logger.log(element))
- //sheet.getRange(currCell, 2,).setValue(groups);
} else {
- groups.forEach(item => { if (item.includes("")){ } else { group2.push(item) }});
- Logger.log(group2);
- sheet.getRange(dataRow+1, 1).setValue(dom);
+ groupIds.forEach(item => { if (item.includes("")){ } else { group2.push(item) }});
+ //Logger.log(group2);
+ sheet.getRange(dataRow+1, 1).setValue(domain);
sheet.getRange(dataRow+1, 2, 1, group2[0].length).setValues(group2)
- //sheet.getRange(dataRow + 1, 1).setValue(dom);
- // groups.forEach((item,index,array) => array[index] = [item]);
- // groups.forEach((item) => sheet.getRange(dataRow+1, 2, 1, groups.length).setValue(item));
- // groups.forEach((element) => Logger.log(element))
- //sheet.getRange(dataRow + 1, 2).setValue(groups)
}
- // var searchResult = columnValues.findIndex(([r]) => r == dom);
- // if(searchResult != -1) {
- // sheet.getRange(searchResult + 2, 1)
- // } else {
- // sheet.getRange(dataRow + 1, 1).setValue(dom);
- // sheet.getRange(dataRow + 1, 2).setValue(groups)
- // }
}
-function fullParse(full_data, previousLast) {
- for (var x = 1; x < full_data.length; x++) {
- var array = full_data[x];
- for (var i = 1; i < array.length; i++) {
- var item = array[i]
- if (item != "") {
- var api_url = 'https://api.northpass.com/v2/groups/?filter[name][eq]='+encodeURIComponent(item);
- const settings = {
- async: true,
- crossDomain: true,
- method: 'GET',
- headers: {
- accept: 'application/json',
- 'X-Api-Key': apiKey
- }
- };
- const sendMsg = UrlFetchApp.fetch(api_url, settings);
- var uuidResponse = sendMsg.getContentText();
- var parseData = JSON.parse(uuidResponse)
- Logger.log("Current Check:"+item)
- var groupID = parseData['data'][0]['id']
- var groupName = array.indexOf(item);
- if (groupName != -1) {
- array[groupName] = groupID;
- }
- }
- }
- const dom = array.shift();
- const groups = array;
- previousLast++
- Logger.log("PrevLast: "+previousLast)
- updateLog(previousLast)
- writeDataToSheet(dom, groups)
- }
-}
+// function fullParse(full_data, previousLast) {
+// for (var x = 1; x < full_data.length; x++) {
+// var array = full_data[x];
+// for (var i = 1; i < array.length; i++) {
+// var item = array[i]
+// if (item != "") {
+// var api_url = 'https://api.northpass.com/v2/groups/?filter[name][eq]='+encodeURIComponent(item);
+// const settings = {
+// async: true,
+// crossDomain: true,
+// method: 'GET',
+// headers: {
+// accept: 'application/json',
+// 'X-Api-Key': apiKey
+// }
+// };
+// const sendMsg = UrlFetchApp.fetch(api_url, settings);
+// var uuidResponse = sendMsg.getContentText();
+// var parseData = JSON.parse(uuidResponse)
+// //Logger.log("Current Check:"+item)
+// var groupID = parseData['data'][0]['id']
+// var groupName = array.indexOf(item);
+// if (groupName != -1) {
+// array[groupName] = groupID;
+// }
+// }
+// }
+// const dom = array.shift();
+// const groups = array;
+// writeDataToSheet(dom, groups)
+// }
+// }
//Inserts a new sheet and writes a 2D array of data in it
-function writeDataToSheet(dom, groups) {
- Logger.log("Domain: "+dom+"and groups: "+groups)
- var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/');
- var sheet = ss.getActiveSheet()
- var dataRow = Math.max(sheet.getLastRow(),1);
- Logger.log(dataRow);
- sheet.insertRowAfter(dataRow+1);
- sheet.getRange(dataRow+1, 1).setValue(dom);
- for (var g = 0; g < groups.length; g++) {
- sheet.getRange(dataRow+1, g+2).setValue(groups[g]);
- }
-}
+// function writeDataToSheet(dom, groups) {
+// var ss = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/1Kck1UUOkVIU4kbBC8b_bl77fNaCTSFStiv0I5Gg-kIc/');
+// var sheet = ss.getActiveSheet()
+// var dataRow = Math.max(sheet.getLastRow(),1);
+// sheet.insertRowAfter(dataRow+1);
+// sheet.getRange(dataRow+1, 1).setValue(dom);
+// for (var g = 0; g < groups.length; g++) {
+// sheet.getRange(dataRow+1, g+2).setValue(groups[g]);
+// }
+// }
function sendWebhook(domain_to_update){
- Logger.log("Webhook function Object: "+JSON.stringify(domain_to_update))
+ //Logger.log("Webhook function Object: "+JSON.stringify(domain_to_update))
var payload = domain_to_update
var options = {
'method': 'post',