Scripts updated to do Anthology work. Added Anthology's GAS Script. Pipedrive's Sitemap. and Zenjob templates.

This commit is contained in:
Norm Rasmussen
2024-01-04 16:51:28 -05:00
parent ad5a26d5d8
commit ce261975ca
14 changed files with 960 additions and 114 deletions

View File

@ -0,0 +1 @@
{"scriptId":"15VfGsRD-wCCFP9mrq55SMDVv6TtLoee5sZkA5-zBYkQGJWssK6awQCIc","rootDir":"/Users/normrasmussen/Documents/Work/Scripts/GAS_GS/AnthologyCSV-Parse"}

View File

@ -0,0 +1,4 @@
domain, group_1, ,
newanthology.com, Anthology 101 - (T1), Anthology 101 - (T2), Anthology 101 - (T4)
sometest.com, Anthology 101 - (T1), ,
tc.columbia.edu, Anthology 101 - (T2), ,
1 domain group_1
2 newanthology.com Anthology 101 - (T1) Anthology 101 - (T2) Anthology 101 - (T4)
3 sometest.com Anthology 101 - (T1)
4 tc.columbia.edu Anthology 101 - (T2)

View File

@ -0,0 +1,7 @@
{
"timeZone": "America/New_York",
"dependencies": {
},
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8"
}

View File

@ -0,0 +1,93 @@
function main() {
var folder = DriveApp.getFolderById("15p4vXVQd6hhcMl73VOxD8VctL2gR-q43")
var files = folder.getFiles()
while (files.hasNext()) {
var file = files.next();
var date = "Thu Jan 04 2024 14:12:11 GMT-0500 (Eastern Standard Time)"
Logger.log(date)
Logger.log(file.getLastUpdated().toString())
if (date == file.getLastUpdated().toString()) {
var updated_file = file.getBlob();
var updated_blob = updated_file.getDataAsString();
var updated_data = Utilities.parseCsv(updated_blob);
Logger.log(file.getName())
} else {
var outdated_file = file.getBlob();
var outdated_blob = outdated_file.getDataAsString();
var outdated_data = Utilities.parseCsv(outdated_blob);
Logger.log(file.getName())
}
}
parseCSV(outdated_data, updated_data)
}
function parseCSV(outdated_data, updated_data) {
let domains_to_update = {};
let updatedFlag = 0;
let outdatedFlag = 0;
for (item of outdated_data.slice(1)) {
outdatedFlag++
}
Logger.log(outdatedFlag)
for (item of updated_data) {
updatedFlag++
}
Logger.log(updatedFlag)
}
function backup(outdated_mapping, updated_mapping) {
//let domains_to_update = [];
let domains_to_update = {};
let updatedFlag = 0;
let outdatedFlag = 0;
while(updatedFlag < updated_mapping.length || outdatedFlag < outdated_mapping.length){
if(updated_mapping[updatedFlag]['column_0'] == outdated_mapping[outdatedFlag]['column_0']){
let updateFlag = false;
let allUpdatedGroups = [];
let allOutdatedGroups = [];
let domain = updated_mapping[updatedFlag]['column_0'];
for(let i = 1; i < Object.keys(updated_mapping[updatedFlag]).length; i++){
let column = `column_${i}`;
allUpdatedGroups.push(updated_mapping[updatedFlag][column].trim());
}
for(let j = 1; j < Object.keys(outdated_mapping[outdatedFlag]).length; j++){
let column = `column_${j}`;
allOutdatedGroups.push(outdated_mapping[outdatedFlag][column].trim());
}
if(allUpdatedGroups.length !== allOutdatedGroups.length){
//let updatedDomain = {};
//updatedDomain[domain] = allUpdatedGroups;
//domains_to_update.push(updatedDomain);
domains_to_update[domain] = allUpdatedGroups;
} else {
for(let k = 0; k < allUpdatedGroups.length; k++){
if(allOutdatedGroups.indexOf(allUpdatedGroups[k]) == -1){
//let updatedDomain = {};
//updatedDomain[domain] = allUpdatedGroups;
//domains_to_update.push(updatedDomain);
domains_to_update[domain] = allUpdatedGroups;
}
}
}
updatedFlag++;
outdatedFlag++;
} else {
if(updated_mapping[updatedFlag]['column_0'] > outdated_mapping[outdatedFlag]['column_0']){
outdatedFlag++;
}
else if(updated_mapping[updatedFlag]['column_0'] < outdated_mapping[outdatedFlag]['column_0']){
updatedFlag++;
}
}
if(updatedFlag > updated_mapping.length-1 || outdatedFlag > outdated_mapping.length-1){
break;
}
}
Logger.log(domains_to_update)
}