A ton of updates for Cin7's templates for multi-product people. Finished the first half of the mass-delete script for Sandata.

This commit is contained in:
Norm Rasmussen
2024-05-08 17:37:17 -04:00
parent 86ef310892
commit 4785ff6283
26 changed files with 359 additions and 217 deletions

Binary file not shown.

View File

@ -1,22 +1,32 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign redirect = false %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% if core and course.name contains 'Omni' %}
{% assign redirect = true %}
{% elsif omni and course.name contains 'Core' %}
{% assign redirect = true %}
{% endif %}
{% if partners %}
{% assign redirect = false %}
{% else %}
{% if core and course.name contains 'Omni' %}
{% assign redirect = true %}
{% elsif omni and course.name contains 'Core' %}
{% assign redirect = true %}
{% endif %}
{% endif %}
{% if redirect %}
<script>window.location.replace('/app')</script>

View File

@ -2,29 +2,31 @@
<div class=" row">
{% for course in courses.in_catalog %}
{% if current_person.signed_in? %}
{% if omni and if core %}
{% if course.name contains 'Omni' or course.name contains 'Core' %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% if omni %}
{% if course.name contains 'Omni' %}
{% if partners %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% else %}
{% if omni %}
{% if course.name contains 'Omni' %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% endif %}
{% elsif core %}
{% if course.name contains 'Core' %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% endif %}
{% else %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% endif %}
{% endif %}
{% elsif core %}
{% if course.name contains 'Core' %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% endif %}
{% endif %}
{% else %}
<div class="col-xs-12 col-md-6 col-lg-4 np-stretch-content">
{% include "cards_course" with course %}
</div>
{% endif %}
{% endfor %}
</div>
{% else %}

View File

@ -1,15 +1,20 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
@ -23,12 +28,18 @@
{% include 'cards_course' %}
</div>
{% endif %}
{% elsif omni %}
{% elsif omni %}
{% if course.properties.feature_course_omni == true %}
<div class="card-wrapper">
{% include 'cards_course' %}
</div>
{% endif %}
{% elsif partners %}
{% if course.properties.feature_course_omni == true or course.properties.feature_course_core == true %}
<div class="card-wrapper">
{% include 'cards_course' %}
</div>
{% endif %}
{% else %}
{% if course.properties.feature_course_omni == true or course.properties.feature_course_core == true %}
<div class="card-wrapper">

View File

@ -8,11 +8,11 @@
{% for course in courses.in_catalog %}
{% for category in course.categories %}
{% if category.name contains 'Omni' %}
{% unless unique_omni_categories contains category.name %}
{% unless unique_omni_categories contains category.name %}
<div class="category-option">
<input class="filter-checkbox" type="checkbox" id="{{category.name}}" />
<label>{{category.name}}</label>
</div>
</div>
{% assign unique_omni_categories = unique_omni_categories | append: category.name %}
{% endunless %}
{% endif %}
@ -26,11 +26,11 @@
{% if course.name contains '[Core]' %}
{% for category in course.categories %}
{% if category.name contains 'Core' %}
{% unless unique_core_categories contains category.name %}
{% unless unique_core_categories contains category.name %}
<div class="category-option">
<input class="filter-checkbox" type="checkbox" id="{{category.name}}" />
<label>{{category.name}}</label>
</div>
</div>
{% assign unique_core_categories = unique_core_categories | append: category.name %}
{% endunless %}
{% endif %}
@ -38,16 +38,16 @@
{% endif %}
{% endfor %}
</div>
{%elsif log_out%}
{% elsif log_out or partners %}
<div class="filter-option-container" id="categoryFilters">
{% assign unique_core_categories = "" %}
{% for course in courses.in_catalog %}
{% for category in course.categories %}
{% unless unique_core_categories contains category.name %}
{% unless unique_core_categories contains category.name %}
<div class="category-option">
<input class="filter-checkbox" type="checkbox" id="{{category.name}}" />
<label>{{category.name}}</label>
</div>
</div>
{% assign unique_core_categories = unique_core_categories | append: category.name %}
{% endunless %}
{% endfor %}
@ -65,11 +65,11 @@
<div class="time-option">
<input class="duration-checkbox" type="checkbox" id="<20" />
<label>< 20 min</label>
</div>
</div>
<div class="time-option">
<input class="duration-checkbox" type="checkbox" id="<30" />
<label>< 30 min</label>
</div>
</div>
<div class="time-option">
<input class="duration-checkbox" type="checkbox" id="<45" />
<label>< 45 min</label>
@ -79,7 +79,7 @@
<label>< 60 min</label>
</div>
</div>
</div>
</div>
</div>
<style>

View File

@ -1,19 +1,23 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
<footer class="np-footer">
<div class="np-footer-top">
{% if website_footer.show_navigation_links? %}

View File

@ -1,15 +1,20 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
@ -244,7 +249,7 @@
var searchInput = document.querySelector(".header-search-input");
searchIcon.addEventListener("click", function(event) {
event.stopPropagation();
event.stopPropagation();
if (searchInput.style.display === "block") {
searchInput.style.display = "none";

View File

@ -46,4 +46,4 @@
.learning-path-carousel-core {
margin: 0 1rem;
}
</style>
</style>

View File

@ -1,18 +1,26 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign redirect = false %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% if core and learning_path.name contains 'Omni' %}
{% if partners %}
{% assign redirect = false %}
{% elsif core and learning_path.name contains 'Omni' %}
{% assign redirect = true %}
{% elsif omni and learning_path.name contains 'Core' %}
{% assign redirect = true %}

View File

@ -1,15 +1,19 @@
<div class="np-learning-paths-resources">
{% if items.any? %}
{% for learning_path in items %}
{% if core %}
{% if learning_path.name contains 'Core' %}
{% if partners %}
{% include "cards_learning_path" with learning_path %}
{% endif %}
{% elsif omni %}
{% else %}
{% if core %}
{% if learning_path.name contains 'Core' %}
{% include "cards_learning_path" with learning_path %}
{% endif %}
{% elsif omni %}
{% if learning_path.name contains 'Omni'%}
{% include "cards_learning_path" with learning_path %}
{% endif %}
{% endif %}
{% endif %}
{% endif %}
{% endfor %}
{% else %}
<div class="np-learning-paths-resources-container">

View File

@ -1,15 +1,20 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}

View File

@ -1,18 +1,20 @@
{% assign omni = false %}
{% assign core = false %}
{% assign multiprod = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' and if group.name contains 'Omni' %}
{% assign multiprod = true %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
@ -22,11 +24,13 @@
<main class="np-main homepage">
<div class="hero-homepage">
<div class="np-max-width">
{% if core %}
{% if partners %}
<div class="hero-text lora">Welcome to Cin7 Academy</div>
{% elsif core %}
<div class="hero-text lora">Welcome to Cin7 Core Academy</div>
{% elsif omni %}
<div class="hero-text lora">Welcome to Cin7 Omni Academy</div>
{% elsif log_out or multiprod%}
{% elsif log_out %}
<div class="hero-text lora">Welcome to Cin7 Academy</div>
{% comment %} {% elsif multiprod %} {% endcomment %}
{% comment %} <div class="hero-text lora">Welcome to Cin7 Academy</div> {% endcomment %}
@ -39,7 +43,7 @@
<div class="page-content">
<div class="section np-max-width">
{% if core %}
{% if partners %}
<div class="heading lora">Learn Cin7 Core by your function with Learning Paths</div>
<div class="section-content">
{% include 'learning_path_carousel_core' %}
@ -48,17 +52,33 @@
<div class="section-content">
{% include "category_carousel_core"%}
</div>
{% elsif omni %}
<div class="heading lora">New to Cin7 Omni? Start learning here!</div>
<div class="section-content">
{% include "category_carousel"%}
</div>
{% elsif core %}
<div class="heading lora">Learn Cin7 Core by your function with Learning Paths</div>
<div class="section-content">
{% include 'learning_path_carousel_core' %}
</div>
<div class="heading lora">Grow and broaden your Cin7 Core expertise with Deep Dives</div>
<div class="section-content">
{% include "category_carousel_core"%}
</div>
{% elsif omni %}
<div class="heading lora">New to Cin7 Omni? Start learning here!</div>
<div class="section-content">
{% include "category_carousel"%}
</div>
{% elsif log_out or multiprod %}
{% elsif log_out %}
<div class="heading lora">Learn Cin7 Core by your function with Learning Paths</div>
<div class="section-content">
{% include 'learning_path_carousel_core' %}
</div>
<div class="heading lora">Grow and broaden your Cin7 Core expertise with Deep Dives</div>
<div class="heading awdlorawda">Grow and broaden your Cin7 Core expertise with Deep Dives</div>
<div class="section-content">
{% include "category_carousel_core"%}
</div>

View File

@ -1,15 +1,20 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
@ -43,7 +48,7 @@
const urlParams = new URLSearchParams(window.location.search);
const categoriesFromURL = urlParams.getAll('category');
if (categoriesFromURL.length === 0) {
return;
return;
}
const cards = document.querySelectorAll('.lp-card');
@ -55,9 +60,9 @@
const filterCards = () => {
cards.forEach(card => {
if (cardMatchesCategories(card, categoriesFromURL)) {
card.style.display = 'block';
card.style.display = 'block';
} else {
card.style.display = 'none';
card.style.display = 'none';
}
});
};

View File

@ -1,19 +1,23 @@
{% assign omni = false %}
{% assign core = false %}
{% assign partners = false %}
{% assign log_out = true %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% include "header" %}
<main class="np-main np-search np-subpage-container np-max-width">
<div class="np-resource-title">

View File

@ -3,19 +3,26 @@
{% assign redirect = false %}
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
{% if core and course.name contains 'Omni' %}
{% if partners %}
{% assign redirect = false %}
{% elsif core and course.name contains 'Omni' %}
{% assign redirect = true %}
{% elsif omni and course.name contains 'Core' %}
{% assign redirect = true %}
{% assign redirect = true %}
{% endif %}
{% if redirect %}

View File

@ -4,7 +4,9 @@
{% if current_person.signed_in? %}
{% for group in current_person.groups %}
{% if group.name contains 'Core' %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% elsif group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
@ -12,7 +14,9 @@
{% endfor %}
{% endif %}
{% if core and learning_path.name contains 'Omni' %}
{% if partners %}
{% assign redirect = false %}
{% elsif core and learning_path.name contains 'Omni' %}
{% assign redirect = true %}
{% elsif omni and learning_path.name contains 'Core' %}
{% assign redirect = true %}

View File

@ -5,11 +5,15 @@
{% if current_person.signed_in? %}
{% assign log_out = false %}
{% for group in current_person.groups %}
{% if group.name contains 'Partners' %}
{% assign partners = true %}
{% else %}
{% if group.name contains 'Core' %}
{% assign core = true %}
{% elsif group.name contains 'Omni' %}
{% assign omni = true %}
{% endif %}
{% endif %}
{% endfor %}
{% endif %}
@ -23,7 +27,7 @@
<div class="hero-text lora">Welcome to Cin7 Core Academy</div>
{% elsif omni %}
<div class="hero-text lora">Welcome to Cin7 Omni Academy</div>
{% elsif log_out %}
{% elsif log_out or partners %}
<div class="hero-text lora">Welcome to Cin7 Academy</div>
{% else %}
<div class="hero-text lora">Welcome to Cin7 Academy</div>
@ -48,7 +52,7 @@
<div class="section-content">
{% include "category_carousel"%}
</div>
{% elsif log_out %}
{% elsif log_out or partners %}
<div class="heading lora">Learn Cin7 Core by function with Learning Paths</div>
<div class="section-content">
{% include 'learning_path_carousel_core' %}

View File

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

View File

@ -1,8 +1,3 @@
{% styles default %}
{% styles colors %}
{% styles custom %}
<script
src="https://code.jquery.com/jquery-3.6.3.min.js"
integrity="sha256-pvPw+upLPUjgMXY0G+8O0xUf+/Im1MZjXxxgOcBQBXU="
crossorigin="anonymous"></script>

View File

@ -189,7 +189,7 @@
</div>
{% include "messages" %}
{% comment %}
{% if current_person.signed_in? %}
{% unless current_person.email contains "+preview" %}
{% unless current_person.properties.successfully_completed_secondary_registration %}
@ -200,7 +200,7 @@
</script>
{% endunless %}
{% endunless %}
{% endif %}
{% endif %} {% endcomment %}
<style>
@media (min-width: 768px) {

View File

@ -6,25 +6,24 @@
required
>
<option class="second-login-state-option" value="" selected>Select a state</option>
<option class="second-login-state-option" value="Arizona">Arizona</option>
<option class="second-login-state-option" value="California">California</option>
<option class="second-login-state-option" value="Colorado">Colorado</option>
<option class="second-login-state-option" value="Connecticut">Connecticut</option>
<option class="second-login-state-option" value="Delaware">Delaware</option>
<option class="second-login-state-option" value="District Of Columbia">District Of Columbia</option>
<option class="second-login-state-option" value="Hawaii">Hawaii</option>
<option class="second-login-state-option" value="Idaho">Idaho</option>
<option class="second-login-state-option" value="Indiana">Indiana</option>
<option class="second-login-state-option" value="Missouri">Missouri</option>
<option class="second-login-state-option" value="Montana">Montana</option>
<option class="second-login-state-option" value="Nevada">Nevada</option>
<option class="second-login-state-option" value="North Carolina">North Carolina</option>
<option class="second-login-state-option" value="North Dakota">North Dakota</option>
<option class="second-login-state-option" value="Ohio">Ohio</option>
<option class="second-login-state-option" value="Oklahoma">Oklahoma</option>
<option class="second-login-state-option" value="Pennsylvania">Pennsylvania</option>
<option class="second-login-state-option" value="Rhode Island">Rhode Island</option>
<option class="second-login-state-option" value="Tennessee">Tennessee</option>
<option class="second-login-state-option" value="Vermont">Vermont</option>
<option class="second-login-state-option" value="Wisconsin">Wisconsin</option>
<option class="second-login-state-option" value="AZ">Arizona</option>
<option class="second-login-state-option" value="CA">California</option>
<option class="second-login-state-option" value="CO">Colorado</option>
<option class="second-login-state-option" value="CT">Connecticut</option>
<option class="second-login-state-option" value="DE">Delaware</option>
<option class="second-login-state-option" value="DC">District Of Columbia</option>
<option class="second-login-state-option" value="HI">Hawaii</option>
<option class="second-login-state-option" value="ID">Idaho</option>
<option class="second-login-state-option" value="IL">Illinois</option>
<option class="second-login-state-option" value="IN">Indiana</option>
<option class="second-login-state-option" value="MO">Montana</option>
<option class="second-login-state-option" value="NV">Nevada</option>
<option class="second-login-state-option" value="NC">North Carolina</option>
<option class="second-login-state-option" value="ND">North Dakota</option>
<option class="second-login-state-option" value="OH">Ohio</option>
<option class="second-login-state-option" value="PA">Pennsylvania</option>
<option class="second-login-state-option" value="RI">Rhode Island</option>
<option class="second-login-state-option" value="TN">Tennessee</option>
<option class="second-login-state-option" value="VT">Vermont</option>
<option class="second-login-state-option" value="WI">Wisconsin</option>
</select>

View File

@ -36,12 +36,12 @@
<span class="sign-up-follow-up-error-label" id="calEVV-label">Please enter a valid, 10 digit California EVV ID Number</span>
<div id="evv-radio-buttons" placeholder="EVV Radio Buttons">
<div class='evv-radio-button' type="radio" value="ST - OH EVV ODM Agency Provider"
<div class='evv-radio-button' type="radio" value="Agency EVV"
onclick="validateForm()">Agency EVV</div>
<div class='evv-radio-button' type="radio" value="ST - OH EVV Non-Agency"
<div class='evv-radio-button' type="radio" value="Non-Agency EVV"
onclick="validateForm()">Non-Agency EVV</div>
<div class='evv-radio-button' type="radio" value="ST - OH ODM AGENCY PROVIDER ALT EVV"
onclick="validateForm()">Alternative EVV</div>
<div class='evv-radio-button' type="radio" value="Alt EVV Aggregator"
onclick="validateForm()">Alt EVV Aggregator</div>
</div>
<span class="sign-up-follow-up-error-label" id="evv-radio-label">Please select your affiliation</span>
@ -335,7 +335,7 @@
event.target.style.color = '#000';
let valid = event.target.getAttribute('value').length == 10;
if(valid){
fullPropsObj['cal_evv_id'] = event.target.getAttribute('value');
document.querySelector('#calEVV-label').style.display = 'none';
@ -402,7 +402,7 @@
document.querySelector('#calEVV-label').style.display = 'none';
// revisedPropsObj['evv_radio_selection'] = undefined;
}
}
}
// else if(allRequiredFields[i] == 'learner_state' && revisedPropsObj[allRequiredFields[i]] == 'Ohio'){
// if(Object.keys(revisedPropsObj).indexOf('evv_radio_selection') == -1){
// validationFlag = false;
@ -464,15 +464,15 @@
window.location.replace('/app/dashboard');
});
xhr.open("POST", url, true);
xhr.send(JSON.stringify([{
id: userID,
email: email,
type:'person_properties',
attributes: {
'properties': revisedPropsObj
},
}]))
xhr.open("POST", url, true);
xhr.send(JSON.stringify([{
id: userID,
email: email,
type:'person_properties',
attributes: {
'properties': revisedPropsObj
},
}]))
})
}

View File

@ -10,26 +10,15 @@
{{ color_palette.header_color }}
*/
.header-hero {
background-color:#fff;
position: relative;
}
.header-hero img {
max-width:100%;
width:auto;
}
@media screen and (min-width: 768px){
.np-header-logo-image {
height: 75px;
header{
background: url(https://s3.amazonaws.com/static.northpass.com/sandata/sandataBanner.jpg) !important;
background-color: #fff !important;
background-position: center !important;
background-repeat: no-repeat !important;
}
.np-box-header{
background: #FFF !important;
}

View File

@ -1,35 +1,64 @@
import Apikeys
import requests
import pandas as pd
import pprint
pp = pprint.PrettyPrinter(indent=4)
df = pd.DataFrame()
BASEURL = "https://api.northpass.com/v2"
LEARNFILTER = "?filter[partnerships_type][eq]=Partnerships::Learner"
APIKEY = Apikeys.SANDATA
HEADERS = { "accept": "application/json", "X-Api-Key": APIKEY }
HEADERS = {"accept": "application/json", "X-Api-Key": APIKEY}
PERSON_GROUPS = []
PPL_DELETIONS = []
def get_people():
count = 0
while True:
count =+ 1
url = f"{BASEURL}/people/{LEARNFILTER}&limit=100&page={count}"
url = f"{BASEURL}/people{LEARNFILTER}&limit=100&page={count}"
resp = requests.get(url, headers=HEADERS)
json = resp.json()
nextlink = json['links']
nextlink = json["links"]
print(count)
count += 1
for data in json["data"]:
id = data["id"]
PERSON_GROUPS.append(id)
email = data["attributes"]["email"]
groups = data["relationships"]["groups"]
for key, val in groups.items():
if groups != "":
for group in val:
uuid = group["id"]
group_url = f"https://api.northpass.com/v2/groups/{uuid}"
response = requests.get(group_url, headers=HEADERS)
group_resp = response.json()
group_name = group_resp["data"]["attributes"]["name"]
# print(email, group_name)
if "- OH" not in group_name or "- CA" not in group_name:
PPL_DELETIONS.append(id)
print(email, group_name)
PERSON_GROUPS.append((id, email, group_name))
for data in json['data']:
id = data['id']
groups = data['relationships']['groups']
print(groups)
for key,val in groups.items():
if groups == "":
print(groups)
else:
print("Else")
PERSON_GROUPS.append((id, email, "No Group"))
if "next" not in nextlink:
break
dataframe = df.from_records(PERSON_GROUPS)
print(dataframe)
print(len(PERSON_GROUPS))
# def parse_groups(id, grouplist):
# for uuid in grouplist:
# url = "https://api.northpass.com/v2/groups/{uuid}"
"""
Bulk delete endpoint: https://api.northpass.com/v2/bulk/people/delete
Payload:

View File

@ -1,45 +1,82 @@
import tmp
WEBHOOK_PAYLOAD = {
id: " dc9aafe3-eee7-4d50-a480-3bd9831b893a",
email: " it",
type: " person_properties",
attributes: {
properties: {
agency_name: " 32",
agency_id: " 323",
medicaid_id: " 22222",
provider_id: " 2123231234",
learner_role: " Agency Billing",
learner_state: " Ohio",
evv - selection: " aw;jakkd'l",
oh_group_name: " EVV",
ca_group_name: " None",
cal_evv_id: " None",
successfully_completed_secondary_registration: true,
}
},
# WEBHOOK_PAYLOAD = {
# "id": "dc9aafe3-eee7-4d50-a480-3bd9831b893a",
# "email": "it",
# "type": "person_properties",
# "attributes": {
# "properties": {
# "agency_name": "32",
# "agency_id": "323",
# "medicaid_id": "22222",
# "provider_id": "2123231234",
# "learner_role": "Agency Billing",
# "learner_state": "Ohio",
# "evv_radio_selection": "Alt EVV Aggregator",
# "cal_evv_id": "None",
# "successfully_completed_secondary_registration": True,
# }
# },
# }
webhook_payload = {
"payload": {
"array": [
{
"id": "e134030d-a2a9-4de2-b4d5-87081feee18a",
"email": "gwalden@sandata.com",
"type": "person_properties",
"attributes": {
"properties": {
"agency_name": "Test 2",
"agency_id": "Test 2",
"medicaid_id": "54321",
"provider_id": "0987654321",
"learner_role": "Agency Billing",
"learner_state": "TN",
"evv_radio_selection": "Agency EVV",
"successfully_completed_secondary_registration": True,
"cal_evv_id": None
}
}
}
]
},
"params": {}
}
def main(input):
payload = input["webhook_payload"]
for item in input["webhook_payload"]:
evv = item["attributes"]["properties"]["oh_group_name"]
state = item["attributes"]["properties"]["learner_state"]
group_result = [ref_state for ref_state in REF if state in ref_state]
try:
if len(group_result) > 1:
for group in group_result:
if evv in group:
group_uuid = group[2]
else:
group_uuid = group_result[0][2]
except ValueError:
pass
finally:
return {"group_uuid": group_uuid}
# def main(input):
# payload = input["webhook_payload"]
# for item in input["webhook_payload"]:
# evv = item["attributes"]["properties"]["evv_radio_selection"]
# state = item["attributes"]["properties"]["learner_state"]
# group_result = [ref_state for ref_state in REF if state in ref_state]
# try:
# if len(group_result) > 1:
# for group in group_result:
# if evv in group:
# group_uuid = group[2]
# else:
# group_uuid = group_result[0][2]
# except ValueError:
# pass
# finally:
# return {"group_uuid": group_uuid}
for item in webhook_payload['payload']['array']:
evv = item['attributes']['properties']['evv_radio_selection']
state = item['attributes']['properties']['learner_state']
id_pair = f"{state} {evv}"
group_result = [ref_state for ref_state in tmp.REF if state in ref_state]
if len(group_result) > 1:
for group in group_result:
if id_pair in group[1]:
group_uuid = group[2]
print(group_uuid)
else:
group_uuid = group_result[0][2]
print(group_uuid)
if __name__ == "__main__":
main()
# if __name__ == "__main__":
# # main()
# main2()