Anthology Notes and updated the google script for the CSV parser.
This commit is contained in:
@ -47,7 +47,7 @@ function austinComparseData(outdated_data, updated_data) {
|
||||
let domains_to_update = [];
|
||||
let updatedFlag = 1;
|
||||
let outdatedFlag = 1;
|
||||
|
||||
|
||||
while(updatedFlag < updated_data.length && outdatedFlag < outdated_data.length){
|
||||
if(updated_data[updatedFlag][0] == outdated_data[outdatedFlag][0]) {
|
||||
let allUpdatedGroups = [];
|
||||
@ -73,36 +73,41 @@ function austinComparseData(outdated_data, updated_data) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
updatedFlag++;
|
||||
outdatedFlag++;
|
||||
} else {
|
||||
if(updated_data[updatedFlag][0] > outdated_data[outdatedFlag][0]){
|
||||
outdatedFlag++;
|
||||
}
|
||||
}
|
||||
else if(updated_data[updatedFlag][0] < outdated_data[outdatedFlag][0]){
|
||||
domains_to_update.push(updated_data[updatedFlag]);
|
||||
updatedFlag++;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(updatedFlag > updated_data.length-1 || outdatedFlag > outdated_data.length-1){
|
||||
break;
|
||||
}
|
||||
}
|
||||
MailApp.sendEmail("nrasmussen@gainsight.com",
|
||||
"Anthology has submitted a CSV",
|
||||
"Here are the domains that will be updated: "+domains_to_update);
|
||||
updatedDomainsOnly(domains_to_update);
|
||||
}
|
||||
|
||||
function updatedDomainsOnly(domains_to_update) {
|
||||
Logger.log(domains_to_update)
|
||||
var errorList = [];
|
||||
var corrList = [];
|
||||
for (var x = 0; x < domains_to_update.length; x++) {
|
||||
var array = domains_to_update[x];
|
||||
var currDomain = domains_to_update[x][0]
|
||||
var errorObj = new Object();
|
||||
var noErrorObj = new Object();
|
||||
Logger.log("Current Domain: "+currDomain);
|
||||
var errorGroups = []
|
||||
var correctGroups = []
|
||||
for (var i = 1; i < array.length; i++) {
|
||||
var item = array[i]
|
||||
if (item != "") {
|
||||
Logger.log("Item/Domain: "+item)
|
||||
var api_url = 'https://api.northpass.com/v2/groups/?filter[name][eq]='+encodeURIComponent(item);
|
||||
const settings = {
|
||||
async: true,
|
||||
@ -116,19 +121,35 @@ function updatedDomainsOnly(domains_to_update) {
|
||||
const sendMsg = UrlFetchApp.fetch(api_url, settings);
|
||||
var uuidResponse = sendMsg.getContentText();
|
||||
var parseData = JSON.parse(uuidResponse);
|
||||
var groupID = parseData['data'][0]['id'];
|
||||
var groupName = array.indexOf(item);
|
||||
if (groupName != -1) {
|
||||
array[groupName] = groupID;
|
||||
if (parseData['data'].length >= 1) {
|
||||
var groupID = parseData['data'][0]['id'];
|
||||
var groupName = array.indexOf(item);
|
||||
if (groupName != -1) {
|
||||
array[groupName] = groupID;
|
||||
}
|
||||
correctGroups.push(item)
|
||||
} else {
|
||||
errorGroups.push(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
errorObj[currDomain] = errorGroups;
|
||||
noErrorObj[currDomain] = correctGroups;
|
||||
corrList.push(noErrorObj)
|
||||
errorList.push(errorObj)
|
||||
|
||||
const dom = array.shift();
|
||||
const groups = array;
|
||||
Logger.log("{domain_to_update : {domain :"+dom+", group_ids : "+groups+" }}")
|
||||
sendWebhook({domain_to_update : { domain: dom, group_ids: groups }})
|
||||
replaceOnSheet(dom, groups);
|
||||
}
|
||||
MailApp.sendEmail("nrasmussen@gainsight.com",
|
||||
"Anthology has submitted a CSV",
|
||||
"Here are the domains that will be updated: "+JSON.stringify(noErrorObj)+"\n\n"+"Group Errors (they likely don't exist): "+JSON.stringify(errorList));
|
||||
MailApp.sendEmail("amitd@anthology.com",
|
||||
"Anthology has submitted a CSV",
|
||||
"Here are the domains that will be updated: "+JSON.stringify(noErrorObj)+"\n\n"+"Group Errors (they likely don't exist): "+JSON.stringify(errorList));
|
||||
}
|
||||
|
||||
function replaceOnSheet(dom, groups) {
|
||||
@ -141,8 +162,8 @@ function replaceOnSheet(dom, groups) {
|
||||
|
||||
let boo = sheet.createTextFinder(dom).findNext()
|
||||
if (boo != null ) {
|
||||
Logger.log("Replace on Sheet Domain: "+dom)
|
||||
Logger.log("New groups: "+groups)
|
||||
//Logger.log("Replace on Sheet Domain: "+dom)
|
||||
//Logger.log("New groups: "+groups)
|
||||
group2 = []
|
||||
currCell = boo.getRowIndex();
|
||||
groups.forEach(item => { if (item.length > 0) { group2.push(item) }});
|
||||
@ -151,12 +172,12 @@ function replaceOnSheet(dom, groups) {
|
||||
sheet.getRange(currCell, 1).setValue(dom);
|
||||
sheet.getRange(currCell, 2, 1, group2[0].length).setValues(group2)
|
||||
} else {
|
||||
Logger.log("Add to Sheet: "+dom)
|
||||
Logger.log("else groups: "+groups)
|
||||
//Logger.log("Add to Sheet: "+dom)
|
||||
//Logger.log("else groups: "+groups)
|
||||
group2 = []
|
||||
//groups.forEach(item => { if (item.includes("")){ } else { group2.push(item) }});
|
||||
groups.forEach(item => { if (item.length > 0) { group2.push(item) }});
|
||||
Logger.log(group2);
|
||||
//Logger.log(group2);
|
||||
group2 = [group2];
|
||||
sheet.getRange(dataRow+1, 1).setValue(dom);
|
||||
sheet.getRange(dataRow+1, 2, 1, group2[0].length).setValues(group2)
|
||||
|
||||
Reference in New Issue
Block a user