Scripts updated to do Anthology work. Added Anthology's GAS Script. Pipedrive's Sitemap. and Zenjob templates.
This commit is contained in:
BIN
Scripts/API_Tests/__pycache__/Apikeys.cpython-310.pyc
Normal file
BIN
Scripts/API_Tests/__pycache__/Apikeys.cpython-310.pyc
Normal file
Binary file not shown.
@ -21,17 +21,15 @@ def get_groups(APIKEY):
|
||||
nextlink = data["links"]
|
||||
|
||||
for response in data["data"]:
|
||||
created_at = response["attributes"]["created_at"]
|
||||
if created_at.startswith("2023"):
|
||||
group_id = response["id"]
|
||||
group_name = response["attributes"]["name"]
|
||||
# print(group_name)
|
||||
groups_dict = {
|
||||
"id": group_id,
|
||||
"name": group_name,
|
||||
# "created_at": created_at,
|
||||
}
|
||||
groups.append(groups_dict)
|
||||
# created_at = response["attributes"]["created_at"]
|
||||
# if created_at.startswith("2023"):
|
||||
group_id = response["id"]
|
||||
group_name = response["attributes"]["name"]
|
||||
# print(group_name)
|
||||
groups_dict = {
|
||||
group_name : group_id
|
||||
}
|
||||
groups.append(groups_dict)
|
||||
|
||||
if "next" not in nextlink:
|
||||
break
|
||||
|
||||
@ -23,9 +23,10 @@ def get_courses():
|
||||
nextlink = response["links"]
|
||||
|
||||
for item in response["data"]:
|
||||
id = item["id"]
|
||||
name = item["attributes"]["name"]
|
||||
list_of_ids.append(id)
|
||||
idict = { item["attributes"]["name"] : item["id"] }
|
||||
# id = item["id"]
|
||||
# name = item["attributes"]["name"]
|
||||
list_of_ids.append(idict)
|
||||
|
||||
if "next" not in nextlink:
|
||||
break
|
||||
|
||||
1
Scripts/GAS_GS/AnthologyCSV-Parse/.clasp.json
Normal file
1
Scripts/GAS_GS/AnthologyCSV-Parse/.clasp.json
Normal file
@ -0,0 +1 @@
|
||||
{"scriptId":"15VfGsRD-wCCFP9mrq55SMDVv6TtLoee5sZkA5-zBYkQGJWssK6awQCIc","rootDir":"/Users/normrasmussen/Documents/Work/Scripts/GAS_GS/AnthologyCSV-Parse"}
|
||||
@ -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), ,
|
||||
|
7
Scripts/GAS_GS/AnthologyCSV-Parse/appsscript.json
Normal file
7
Scripts/GAS_GS/AnthologyCSV-Parse/appsscript.json
Normal file
@ -0,0 +1,7 @@
|
||||
{
|
||||
"timeZone": "America/New_York",
|
||||
"dependencies": {
|
||||
},
|
||||
"exceptionLogging": "STACKDRIVER",
|
||||
"runtimeVersion": "V8"
|
||||
}
|
||||
93
Scripts/GAS_GS/AnthologyCSV-Parse/parseCSV.js
Normal file
93
Scripts/GAS_GS/AnthologyCSV-Parse/parseCSV.js
Normal 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)
|
||||
}
|
||||
4
Scripts/anthology-parse-csv-test2.csv
Normal file
4
Scripts/anthology-parse-csv-test2.csv
Normal file
@ -0,0 +1,4 @@
|
||||
domain, group_1, ,
|
||||
newanthology.com, Anthology 101 - (T1), Anthology 101 - (T2),
|
||||
sometest.com, Anthology 101 - (T1), Anthology 101 - (T4),
|
||||
tc.columbia.edu, Anthology 101 - (T2), ,
|
||||
|
Reference in New Issue
Block a user