Files
Gainsight/Scripts/clone_courses.js

196 lines
7.3 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-11-21 17:02:28 -05:00
var otp = '873675';
var schoolUUID = 'fa2c7cb9-3e07-4340-be1f-b870e2657d57'
var courseUUIDs = [
2024-11-21 17:02:28 -05:00
'c52decb4-38f6-4e09-8095-2a1c4595692b',
'4defa9d2-a7c5-474c-bb47-4a001e7ec8a4',
'58f572fe-c38e-4360-9f28-de3c256285a0',
'6e98c033-ac8c-498f-93d2-e2d400c0ce62',
'2355a300-796a-4088-8f8c-9a7a123719e9',
'bc4368ec-0739-47e1-abde-e2858e75bc1a',
'528a7ed6-f7d7-43db-be8b-b2afba64b408',
'87a0fdc0-6f34-4615-81a1-16067abb7078',
'3f99aa75-d743-4b54-9961-a51680e2e7a4',
'adbb9d9f-8ea5-4ec2-960b-8d7fd3e58a0a',
'9ba981c9-b2da-4732-98bb-7e5160305013',
'9fc74503-1989-40f8-b84f-6dcd64d88f11',
'd194c790-f956-4bab-b081-55262a0a60e1',
'd79253c0-bd84-401c-a21e-a0b7690f613c',
'82cea1ae-dbe9-408e-8aee-cae7a0414544',
'fbfc6c2b-9a6f-4da6-9ac5-0c7ea832299a',
'2c3cce9a-4866-4a40-8044-5bd243fb7350',
'aa530daf-56b2-41fb-93a4-fb0153e5c8ec',
'14dd9f13-b1f2-4ee0-af93-6f4e80537017',
'ab3dddba-c9bf-468d-a97c-55764f819dbc',
'8e9a97e4-1d90-426e-9479-b105942f4439',
'8bd024e5-1500-4807-9932-26dafa82f0d0',
'7ab5345c-8e58-48af-bb41-4b3581cffffe',
'a9f9bc53-e394-4428-8434-0173ec46079e',
'02212d17-dba4-4484-a8a1-857043a1a8fd',
'e6fea8eb-0a5d-4f6f-bbfd-40355b6211bf',
'90e81a36-6e0e-4494-8db9-91129c893412',
'a9603f5e-ca3d-40ba-b958-b0cad21594e8',
'397ab54b-f797-4e7a-a266-793f793243f9',
'f773f8b3-b32c-4bb7-8425-8aa7b8e30e4d',
'aa78cd65-a59a-4f0d-b749-6a2d5d2ad894',
'c1a628fd-a2d5-4e9b-9979-9ba24a8975d2',
'30ccee01-b7c8-431c-b824-c7d6cdf8b237',
'67a774f3-ec7f-4f5c-8743-543ca9b95591',
'49dccfb2-e8fd-43a4-bd05-5b6246df4c0a',
'f8f6be93-88f2-4202-9371-d6f856b54905',
'9d7a22ac-67cc-45b0-b0db-92e549da4671',
'5ca2a9ef-a5db-4ece-9215-235d3c1cae78',
'ee906a5a-0089-4cbc-8cb7-2eff67542db3',
'3d10844f-d7ee-44ee-b600-ead275a12507',
'e1b1ccbf-4449-4baa-8428-c19de1fb100c',
'708eced0-bba1-42fe-bba9-a12944db8a56',
'568e3b37-2d58-4194-959a-3399b5e16757',
'51118f6f-19c8-4926-9faa-9848e7f33b15',
'dfc55a2f-cffc-4daf-956f-f4c338e46d26',
'5b505626-05f3-4abf-83bf-c12933eb9301',
'c8ac4a94-6103-4ed4-adb1-87c311f38621',
'573e8ab8-a529-44ec-b3e7-f2e79e505cd8',
'1ce4848b-3a6b-493f-a21b-9b91399c6b07',
'601bb7da-7c9a-478f-9778-ecd4d15bedf3',
'1cb8c57e-cddd-4b1e-928c-4c9275f288f8',
'2d303c04-1160-40ad-b13b-c5f2a37b15d7',
'19f07df7-89d6-4c3a-8250-678c2d8af571',
'55a72c10-7d86-4d33-92b0-59b87d476414',
'b47ca811-6d83-454c-81e6-810e50fe2bf6',
'1992eb34-acab-46a9-aeee-085073574174',
'fd443d50-b4a8-414c-8bba-fa19619279ac',
'd542dbc4-a9e7-4c17-82a7-56c141a9ae6b',
'1fa75323-c5f7-4d78-a361-f54f12ed8713',
'8602b00f-38f7-4961-a704-5a4e2561772e',
'57696f55-40b6-436f-997d-7e1b055b3ce0',
'd29cf589-5de2-47f5-821e-58733eaf6534',
'c2e7345b-f238-4265-8fd6-e9ea5c01fdb2',
'b8df9947-29f0-469b-b538-c5807bcbd2b5',
'7166c636-6b37-43d2-a944-4b6edcf8a892',
'b6ddc039-32d2-4652-862e-d015848fe387',
'c778f6ee-371b-43e1-96cd-21c3fb647e9c',
'34a5c135-cf16-44af-879c-a53d81b08906',
'23d725bd-d2cd-4895-bd56-3011fcb48193',
'fe3dd19c-44c0-4719-8103-ee5fc17db66b',
'f9f43c8a-9bb9-4000-aa0e-65fd7d8babae',
'68320ad8-3ebd-447b-bbdc-66d870737fd0',
'02a0516d-29c8-4c3a-99e4-210910949c98',
'c52decb4-38f6-4e09-8095-2a1c4595692b',
'4defa9d2-a7c5-474c-bb47-4a001e7ec8a4',
'58f572fe-c38e-4360-9f28-de3c256285a0',
'6e98c033-ac8c-498f-93d2-e2d400c0ce62',
'2355a300-796a-4088-8f8c-9a7a123719e9',
'bc4368ec-0739-47e1-abde-e2858e75bc1a',
'528a7ed6-f7d7-43db-be8b-b2afba64b408',
'87a0fdc0-6f34-4615-81a1-16067abb7078',
'3f99aa75-d743-4b54-9961-a51680e2e7a4',
'adbb9d9f-8ea5-4ec2-960b-8d7fd3e58a0a',
'9ba981c9-b2da-4732-98bb-7e5160305013',
'9fc74503-1989-40f8-b84f-6dcd64d88f11',
'd194c790-f956-4bab-b081-55262a0a60e1',
'd79253c0-bd84-401c-a21e-a0b7690f613c',
'82cea1ae-dbe9-408e-8aee-cae7a0414544',
'fbfc6c2b-9a6f-4da6-9ac5-0c7ea832299a',
'2c3cce9a-4866-4a40-8044-5bd243fb7350',
'aa530daf-56b2-41fb-93a4-fb0153e5c8ec',
'14dd9f13-b1f2-4ee0-af93-6f4e80537017',
'ab3dddba-c9bf-468d-a97c-55764f819dbc',
'8e9a97e4-1d90-426e-9479-b105942f4439',
'8bd024e5-1500-4807-9932-26dafa82f0d0',
'7ab5345c-8e58-48af-bb41-4b3581cffffe',
'a9f9bc53-e394-4428-8434-0173ec46079e',
'02212d17-dba4-4484-a8a1-857043a1a8fd',
'e6fea8eb-0a5d-4f6f-bbfd-40355b6211bf',
'90e81a36-6e0e-4494-8db9-91129c893412',
'a9603f5e-ca3d-40ba-b958-b0cad21594e8',
'397ab54b-f797-4e7a-a266-793f793243f9',
'f773f8b3-b32c-4bb7-8425-8aa7b8e30e4d',
'aa78cd65-a59a-4f0d-b749-6a2d5d2ad894',
'c1a628fd-a2d5-4e9b-9979-9ba24a8975d2',
'30ccee01-b7c8-431c-b824-c7d6cdf8b237',
'67a774f3-ec7f-4f5c-8743-543ca9b95591',
'49dccfb2-e8fd-43a4-bd05-5b6246df4c0a',
'f8f6be93-88f2-4202-9371-d6f856b54905',
'9d7a22ac-67cc-45b0-b0db-92e549da4671',
'5ca2a9ef-a5db-4ece-9215-235d3c1cae78',
'ee906a5a-0089-4cbc-8cb7-2eff67542db3',
'3d10844f-d7ee-44ee-b600-ead275a12507',
'e1b1ccbf-4449-4baa-8428-c19de1fb100c',
'708eced0-bba1-42fe-bba9-a12944db8a56',
'568e3b37-2d58-4194-959a-3399b5e16757',
'51118f6f-19c8-4926-9faa-9848e7f33b15',
'dfc55a2f-cffc-4daf-956f-f4c338e46d26',
'5b505626-05f3-4abf-83bf-c12933eb9301',
'c8ac4a94-6103-4ed4-adb1-87c311f38621',
'573e8ab8-a529-44ec-b3e7-f2e79e505cd8',
'1ce4848b-3a6b-493f-a21b-9b91399c6b07',
'601bb7da-7c9a-478f-9778-ecd4d15bedf3',
'1cb8c57e-cddd-4b1e-928c-4c9275f288f8',
'2d303c04-1160-40ad-b13b-c5f2a37b15d7',
'19f07df7-89d6-4c3a-8250-678c2d8af571',
'55a72c10-7d86-4d33-92b0-59b87d476414',
'b47ca811-6d83-454c-81e6-810e50fe2bf6',
'1992eb34-acab-46a9-aeee-085073574174',
'fd443d50-b4a8-414c-8bba-fa19619279ac',
'd542dbc4-a9e7-4c17-82a7-56c141a9ae6b',
'1fa75323-c5f7-4d78-a361-f54f12ed8713',
'8602b00f-38f7-4961-a704-5a4e2561772e',
'57696f55-40b6-436f-997d-7e1b055b3ce0',
'd29cf589-5de2-47f5-821e-58733eaf6534',
'c2e7345b-f238-4265-8fd6-e9ea5c01fdb2',
'b8df9947-29f0-469b-b538-c5807bcbd2b5',
'7166c636-6b37-43d2-a944-4b6edcf8a892',
'b6ddc039-32d2-4652-862e-d015848fe387',
'c778f6ee-371b-43e1-96cd-21c3fb647e9c',
'34a5c135-cf16-44af-879c-a53d81b08906',
'23d725bd-d2cd-4895-bd56-3011fcb48193',
'fe3dd19c-44c0-4719-8103-ee5fc17db66b',
'f9f43c8a-9bb9-4000-aa0e-65fd7d8babae',
'68320ad8-3ebd-447b-bbdc-66d870737fd0',
'02a0516d-29c8-4c3a-99e4-210910949c98',
]
2024-11-21 17:02:28 -05:00
var schoolNameToCloneTo = "Employ Sandbox";
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-11-13 17:06:39 -05: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-11-13 17:06:39 -05: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-11-13 17:06:39 -05:00
await p.goto('https://app.northpass.com/admin/schools/'+ schoolUUID +'/courses/'+ courseUUIDs[i] +'/clone/new')
await p.waitForSelector('#react-select-2-input')
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()
})