Files
Gainsight/Scripts/clone_courses.js

107 lines
3.9 KiB
JavaScript
Raw Normal View History

const pt = require('puppeteer');
const readline = require("readline");
const rl =
readline.createInterface({
input: process.stdin,
output: process.stdout,
})
var userEmail= 'nrasmussen@northpass.com';
var userPassword= 'ecx5pmy!MAN2vgh2knc';
2024-09-23 20:52:09 -04:00
var otp = '945370';
var schoolUUID = '52d19519-103f-45e3-9fa8-d21baa0f8aaa'
var courseUUIDs = [
2024-09-23 20:52:09 -04:00
'42343d69-5de9-440a-8938-b77180b7548d',
'0501c6dd-5dcf-4010-b1e1-7d53efcf6903',
'8d8a8a96-f055-4377-82ed-eb66ecf18206',
'56ac072d-4e56-4bf3-a415-09eee04d4a7c',
'bb272b93-0576-458d-8399-7a22998e9cb2',
'b4e8ed8d-baaf-494f-a108-34a2a83967cf',
'c8706cfa-2362-48d0-a6b2-2b62e1a44c76',
'bb9c3f2a-f051-4a51-a8d7-d81d2947ddcb',
'48831e70-42af-4373-883c-d00c77c7aa05',
'4d82a291-b76f-42c2-bc03-8ef594243a10',
'cd0dcbad-c730-48ad-8fdc-7fbe2f898788',
'44cfc757-23f3-411e-8ebe-666f439f3463',
'33029205-ab1c-4e9d-83c8-676394dc39c9',
'0dbf27bf-6937-4af6-8136-f27838dd28b0',
'3fe89e94-ec05-44fa-9303-e9b451f7f7da',
'adb75bc5-811f-4b5b-bdfb-e1a9df41f8bb',
'16174145-a8c8-40b1-b188-acf1c892915c',
'18284656-0228-4bc2-9ab5-ee6807c645db',
'f64b631c-5aed-4619-accc-cc65616bc8ae',
'37b00452-d004-41d3-bfe7-36bf702f8d61',
'315bc5e0-8a22-44c7-95bc-440c86951906',
'1b331114-f3c2-4fe2-9126-fa6dec8e3955',
'993d2067-2dd6-4ddd-b626-77a2954eaf4e',
'e7b184b9-00c7-4b04-91f1-db1147e37f36',
'a11f9601-15a7-4129-90e5-dfadfcb25434',
'44a163d1-6995-4f07-92dc-3f37b8946260',
'd61cf500-7458-4d2f-aff5-ed85bb18b486',
'e9c8062d-fbc2-48e7-a37d-0086cf5acde0',
'a9f2a34a-95e7-487f-b83c-5d2477875673',
'5f167c9a-f9d0-40b1-9ddc-f88f3a5b7182',
'2acfd337-adc9-437b-a174-acf90c4309d3',
'237363c2-df39-40e2-861f-8f0818a4d5e1',
'6a6dd5d2-362f-465e-8ca3-f5a97eb2910f',
'332ead4a-7245-498d-9c41-df95909df377',
'2e5f5e8d-3c24-498d-9665-9565393a22f6',
'0bfee237-393c-4688-8b5f-6ef921376a66',
'fd02e770-f998-416b-b16b-3c999901c69b',
'd3614335-69b4-4a7c-8485-f2f04d953e2e',
'39851aff-22fa-4682-bb03-f34011910289',
'a06f051a-7c14-4591-9159-77ec3452036a',
'33c143bd-027d-4e00-a6b7-98a041aa302f',
'9860b45b-7600-4c85-9ab4-453427fc954d',
'7c4eb01f-d939-471b-9338-060d7ff504fa',
'cb2b7351-04ad-48e8-a426-9fd780044f3c',
'834a774b-2aa1-42a0-9b23-04de2eb2d298',
'9b75d75d-1108-41f2-999b-0210031ec2dd',
'e0ebe926-2afd-4c2b-b23d-0bc5bc30ec33',
'af7126d7-3fb4-4712-bc01-ebd7ccf7e580',
'024c7926-7ce6-4ccf-a02a-9fcdb42c181e',
'd433af5e-7ef0-4a33-8ef4-e81ef8d04ba4',
'f454459f-b660-410d-b5be-9f90760bb3ac',
'8ba13160-0f31-40e9-affd-ff4aa04d69e2',
'e6612df6-1e0c-4328-b223-ab8e5e10720d',
'7a3fc895-11d0-4440-9ec4-30471a86ee64',
'1d38e0c3-9003-45e0-a800-1a2abd4228e3',
'1527fb5a-8e2a-41c7-87ab-85907c8906f9',
'e75c5762-3b88-4c79-808e-04ddc9b9afd0',
'5dd5679b-39e2-44c2-a5b5-79fc673c63be',
]
2024-09-23 20:52:09 -04:00
var schoolNameToCloneTo = "Anthology U";
function wait(ms) {
return new Promise(r => setTimeout(r, ms));
}
pt.launch({ headless: false }).then(async browser => {
var p = await browser.newPage();
await p.setViewport({ width: 1000, height: 500 })
2024-09-23 20:52:09 -04:00
await p.goto('https://app.northpass.com/admin/sign_in')
await wait(500)
console.log("First Wait")
await p.type('#administrator_email', userEmail)
await p.type('#administrator_password', userPassword)
await p.click('input.button');
await wait(500)
console.log("Second Wait")
2024-09-23 20:52:09 -04:00
await p.goto('https://app.northpass.com/admin/twofactorauth/edit')
await wait(500)
await p.type('#otp_otp_attempt',otp)
await p.click('input.button');
await wait(500)
for (var i = 0; i < courseUUIDs.length;i++) {
2024-09-23 20:52:09 -04:00
await p.goto('https://app.northpass.com/admin/schools/'+ schoolUUID +'/courses/'+ courseUUIDs[i] +'/clone/new')
await p.type('#react-select-2-input',schoolNameToCloneTo)
await p.keyboard.press('Enter');
await wait(100)
await p.click('input.button');
2024-09-23 20:52:09 -04:00
console.log('-- Index: '+i+' -- Cloned course: '+courseUUIDs[i]+' -- ')
await wait(1000)
}
await wait(2000)
await browser.close()
})