adding to gitea repo

This commit is contained in:
Lucca Pirovano
2026-06-15 14:20:38 -04:00
commit cd7a2bd773
21 changed files with 1994 additions and 0 deletions
@@ -0,0 +1,22 @@
// ==UserScript==
// @name CW Auto-Closer
// @namespace Violentmonkey Scripts
// @match https://sc.247mgmt.com/App_Extensions/*
// @grant none
// @version 1.0
// @noframes
// @author -
// @description 8/21/2024, 4:41:25 PM
// ==/UserScript==
//Connectwise doesn't auto-close tabs
//This is a workaround
//Works most of the time, but VM userscripts are jank and sometimes break for no reason
function wait(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
};
wait(500).then(() => window.close());
@@ -0,0 +1,41 @@
// ==UserScript==
// @name ClipHTMLEdit
// @namespace Violentmonkey Scripts
// @version 1.0
// @author -
// @grant GM.setClipboard
// @grant GM.getClipboard
// @description 6/18/2024, 12:25:28 PM
// @match https://wiki.gianluccapirovano.com/*
// @require https://cdn.jsdelivr.net/npm/@violentmonkey/shortcut@1
// ==/UserScript==
var mariohtml
navigator.clipboard.read()
VM.shortcut.register('a-1', () => {
var htmltext = prompt("What do you want to copy as html?", mariohtml)
GM.setClipboard(htmltext, 'text/html')
});
VM.shortcut.register('a-2', async () => {
const clipboardContents = await navigator.clipboard.read({
unsanitized: ["text/html"],
});
mariohtml = await getHTMLFromClipboardContents(clipboardContents);
window.alert(mariohtml)
});
async function getHTMLFromClipboardContents(clipboardContents) {
for (const item of clipboardContents) {
if (item.types.includes("text/html")) {
const blob = await item.getType("text/html");
const blobText = await blob.text();
return blobText;
}
}
return null;
}
@@ -0,0 +1,111 @@
// ==UserScript==
// @name ConnectWiseManageEqualSignRebind
// @namespace Violentmonkey Scripts
// @match https://na.myconnectwise.net/*
// @match https://app.powerbi.com/*
// @grant GM.openInTab
// @grant GM.getValue
// @grant GM.setValue
// @grant GM.setClipboard
// @grant GM.getClipboard
// @version 1.0
// @author -
// @require https://cdn.jsdelivr.net/npm/@violentmonkey/shortcut@1
// ==/UserScript==
VM.shortcut.register('=', () => {
getTicketInfo();
copyPodPost(contact+" @ "+company+"\n\n"+detailLabel+"\n\n"+initialDescription+"");
});
VM.shortcut.register('a-=', () => {
getTicketInfo();
getMoreTicketInfo();
copyPodPost(contact+" @ "+company+"\n\n"+detailLabel+"\n\n"+initialDescription+"\n\n"+internalNote+"\n\n");
});
VM.shortcut.register('c-=', () => {
getTicketInfo();
copyPodPost(contact+" @ "+company+"\n\n"+detailLabel+"");
});
VM.shortcut.register('c-a-=', () => {
getTicketInfo();
copyPodPost(contact+" @ "+company+"\n\n"+detailLabel+"\n\nClient is calling to get in touch with @"+assignedTech+" ");
});
//Functions below
function focusSlaMonitoring(){
putTextIntoClass('cw_CwComboBox', 2, 'Response SLA Monitoring');
clickClass('cw-ml-search-button', 0);
}
async function doTimeSheet(startTime, endTime, chargeTo){
await putTextIntoClass("cw_ChargeToTextBox", 0, chargeTo);
await focusClass("cw_startTime", 0);
await putTextIntoClass("cw_startTime", 0, startTime);
await focusClass("cw_endTime", 0);
await putTextIntoClass("cw_endTime", 0, endTime);
await focusClass("cw_ChargeToTextBox", 0);
await new Promise(r => setTimeout(r, 800));
await clickClass("cw_Refresh", 0);
await new Promise(r => setTimeout(r, 1200));
await contains("span", chargeTo)[0].click();
await new Promise(r => setTimeout(r, 500));
await clickClass("cw_ToolbarButton_SaveAndClose", 0);
};
async function doTimeSheetMini(chargeTo){
await putTextIntoClass("cw_ChargeToTextBox", 0, chargeTo);
await focusClass("cw_ChargeToTextBox", 0);
await new Promise(r => setTimeout(r, 800));
await clickClass("cw_Refresh", 0);
await new Promise(r => setTimeout(r, 1200));
await contains("span", chargeTo)[0].click();
//await new Promise(r => setTimeout(r, 500));
//await clickClass("cw_ToolbarButton_SaveAndClose", 0);
};
function contains(selector, text) {
var elements = document.querySelectorAll(selector);
return Array.prototype.filter.call(elements, function(element){
return RegExp(text).test(element.textContent);
});
}
function getTicketInfo(){
contactinput = null;
document.querySelector('[data-id="internal"]').click(); // click internal note so we can pull it later
contact = getByClass('cw_contact', 0);
contactinput = prompt("What is the caller's name?", contact);
contact = contactinput;
company = getByClass('cw_company', 0);
detailLabel = getInnerTextByClass('detailLabel', 0);
assignedTech = getByClass('cw_ticketOwner', 0);
initialDescription = getInnerTextByClass('TicketNote-rowNote', 0);
};
function getMoreTicketInfo(){
internalNote = getInnerTextByClass('TicketNote-noteLabel', 1);
};
function copyPodPost(podPost){
if (contactinput === null){ //terminate function if user hits cancel button or provides no input
return;
}
GM.setClipboard(podPost, 'text/plain')
window.alert(podPost);
};
function clickClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass);
var requiredElement = elements[elementIndex];
requiredElement.click();
};
function focusClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass);
var requiredElement = elements[elementIndex];
requiredElement.focus();
};
function getByClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; return requiredElement.value;
};
function getInnerTextByClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; return requiredElement.innerText;
};
function putTextIntoClass(theClass, elementIndex, text){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; requiredElement.value = text;
};
function setStatus(desiredStatus){
focusClass("cw_status", 0);
putTextIntoClass("cw_status", 0, desiredStatus);
}
@@ -0,0 +1,392 @@
// ==UserScript==
// @name New script - myconnectwise.net
// @namespace Violentmonkey Scripts
// @match https://na.myconnectwise.net/*
// @match https://app.powerbi.com/*
// @grant GM.openInTab
// @grant GM.getValue
// @grant GM.setValue
// @grant GM.setClipboard
// @version 1.0
// @author -
// @require https://cdn.jsdelivr.net/npm/@violentmonkey/shortcut@1
// ==/UserScript==
//Declare global variables
var contact = ""
var contactinput = ""
var company = ""
var detailLabel = ""
var initialDescription = ""
var internalNote = ""
var assignedTech = ""
var assignedPod = ""
var ticketlink = ""
var ticketnumber = ""
var detailLabelSplit = ""
var oldTime = ""
var newTime = ""
//Hotkeys
VM.shortcut.register('c-a-s', () => {
company = getByClass('cw_company', 0);
GM.setClipboard("https://hudu.247mgmt.com/c?tab=&page=&sort_direction=&sort_column=&tag=&folder=&query="+company);
});
VM.shortcut.register('a-i', () => {
document.querySelector('[data-id="internal"]').click();
});
VM.shortcut.register('a-s-i', () => {
document.querySelector('[data-id="discussion"]').click();
});
VM.shortcut.register('a-r', () => {
document.querySelector('[data-id="resolution"]').click();
});
VM.shortcut.register('a-1', () => {
setStatus("In Progress")
});
VM.shortcut.register('a-s-!', () => {
setStatus("In Queue")
});
VM.shortcut.register('c-s-!', () => {
setStatus("In Chat")
});
VM.shortcut.register('a-2', () => {
setStatus("New Via Phone")
});
VM.shortcut.register('a-s-@', () => {
setStatus("New Transfer From Triage")
});
VM.shortcut.register('a-3', () => {
setStatus("Pending Tech Assignment")
});
VM.shortcut.register('a-s-#', () => {
setStatus("Agent Responded")
});
VM.shortcut.register('a-4', () => {
setStatus("Completed (Closed)")
});
VM.shortcut.register('a-s-$', () => {
setStatus("Enter Time")
});
VM.shortcut.register('a-5', () => {
setStatus("Waiting on client")
});
VM.shortcut.register('a-s-%', () => {
setStatus("Canceled")
});
VM.shortcut.register('a-6', () => {
setStatus("Scheduled for Remote")
});
VM.shortcut.register('a-s-^', () => {
putTextIntoClass("cw_workType", 0, "Voicemail/Email")
focusClass("cw_workType", 0)
focusClass("public-DraftEditor-content", 0)
});
VM.shortcut.register('c-a-1', () => {
document.title="Contact"
});
VM.shortcut.register('c-a-2', () => {
document.title="Companies"
});
VM.shortcut.register('c-a-3', () => {
document.title="In Queue"
});
VM.shortcut.register('c-a-4', () => {
document.title="SLA"
focusSlaMonitoring();
});
VM.shortcut.register('c-a-5', () => {
document.title="Triage"
});
VM.shortcut.register('c-a-6', () => {
document.title="Ticket Search"
});
VM.shortcut.register('c-a-s-W', () => {
company = getByClass('cw_company', 0);
GM.setValue('company', company);
GM.setValue('pod', "");
});
VM.shortcut.register('c-a-s-R', () => {
clickClass("multilineClickable", 1)
});
VM.shortcut.register('c-a-s', () => {
assignedPod = ""
async function setPod(){
assignedPod = await GM.getValue("pod", 0);
await focusClass("cw_serviceBoard", 0);
await putTextIntoClass("cw_serviceBoard", 0, assignedPod + " - *Support");
}setPod();
});
VM.shortcut.register('a-s-s', () => {
clickClass("cw_ToolbarButton_Save", 0);
});
VM.shortcut.register('m--', () => {
clickClass("cw-gxt-wnd-cls", 0);
});
VM.shortcut.register('a-Delete', () => {
clickClass("cw-gxt-wnd-cls", 0);
});
VM.shortcut.register('a-s-Delete', () => {
clickClass("cw_CwNegativeActionButton", 0);
});
//TICKET NOTE SHORTCUTS START
VM.shortcut.register('a-contextmenu', () => {
clickClass('TicketNote-newNoteButton', 0);
});
VM.shortcut.register('f3', () => {
clickClass('TicketNote-newNoteButton', 0);
});
VM.shortcut.register('s-f3', () => {
clickClass('cw_isEnteringTime', 0);
clickClass('DraftEditor-editorContainer', 0);
});
VM.shortcut.register('c-f3', () => {
clickClass('cw_isDiscussion', 0);
});
VM.shortcut.register('a-f3', () => {
clickClass('cw_isInternal', 0);
});
VM.shortcut.register('c-a-f3', () => {
clickClass('cw_isResolution', 0);
});
VM.shortcut.register('m-s-f4', () => {
clickClass('cw_isToContact', 0);
});
VM.shortcut.register('c-s-f4', () => {
clickClass('cw_isToResources', 0);
});
VM.shortcut.register('m-f4', () => {
clickClass('cw_isToCcs', 0);
});
VM.shortcut.register('m-[', () => {
getElementByClass("cw_btnStartTime", 0).children[0].click()
});
VM.shortcut.register('m-s-{', () => {
document.querySelector('[title="Start Time"]').click()
});
VM.shortcut.register('m-]', () => {
getElementByClass("cw_btnEndTime", 0).children[0].click()
});
VM.shortcut.register('m-s-}', () => {
//window.alert(getElementByClass("cw_endTime", 0).value)
getElementByClass("cw_btnEndTime", 0).children[0].click()
oldTime = getElementByClass("cw_endTime", 0).value
let newTime = addMinute(oldTime);
focusClass("cw_endTime", 0);
putTextIntoClass("cw_endTime", 0, newTime);
focusClass("public-DraftEditor-content", 0)
});
//TICKET NOTE SHORTCUTS END
VM.shortcut.register('f10', () => {
getTicketInfo();
copyPodPost(contact+" @ "+company+"<br><br>"+detailLabel+"<br><br>"+initialDescription+"<br><br>");
});
VM.shortcut.register('a-f10', () => {
getTicketInfo();
getMoreTicketInfo();
copyPodPost(contact+" @ "+company+"<br><br>"+detailLabel+"<br><br>"+initialDescription+"<br><br>"+internalNote+"<br><br>");
});
VM.shortcut.register('c-f10', () => {
getTicketInfo();
copyPodPost(contact+" @ "+company+"<br><br>"+detailLabel+"<br><br>");
});
VM.shortcut.register('c-a-f10', () => {
getTicketInfo();
copyPodPost(contact+" @ "+company+"<br><br>"+detailLabel+"<br><br>Client is calling to get in touch with @"+assignedTech+" ");
});
VM.shortcut.register('m-f10', () => {
getTicketInfo();
copyPodPost(detailLabel);
});
VM.shortcut.register('m-s-f10', () => {
ticketLabel = getInnerTextByClass('detailLabel', 0);
GM.setClipboard(ticketLabel);
window.alert("Copied to clipboard: "+ticketLabel);
});
VM.shortcut.register('f6', () => {
clickClass('cw-toolbar-clear', 0);
clickClass('cw-ml-search-button', 0);
});
VM.shortcut.register('s-f6', () => {
clickClass('cw_ToolbarButton_Refresh', 0);
});
VM.shortcut.register('f7', () => {
clickClass('cw_ToolbarButton_Refresh', 0);
});
VM.shortcut.register('c-a-BackSpace', () => {
clickClass('cw_ToolbarButton_Back', 0);
clickClass('cw-gxt-wnd-cls', 0);
});
VM.shortcut.register('a--', () => {
clickClass('cw_ToolbarButton_Back', 0);
clickClass('cw-gxt-wnd-cls', 0);
});
VM.shortcut.register('f12', () => {
doTimeSheet("9:00 AM", "2:30 PM", "Mentoring");
});
VM.shortcut.register('a-f12', () => {
doTimeSheet("3:30 PM", "4:30 PM", "Lunch Break");
});
VM.shortcut.register('s-f12', () => {
doTimeSheet("4:30 PM", "6:00 PM", "Mentoring");
});
VM.shortcut.register('c-a-f12', () => {
doTimeSheetMini("Call Queue");
});
//PowerBI Script Start
var pod
VM.shortcut.register('f2', () => {
document.querySelector('[aria-label="Navigating to visual"]').focus();
document.querySelector('[aria-label="enter your search"]').focus();
});
VM.shortcut.register('s-f2', () => {
async function pasteCompany(){
company = await GM.getValue('company', 0);
document.querySelector('[aria-label="Enter your search"]').value = company;
}pasteCompany();
});
VM.shortcut.register('c-f2', () => {
//pod = document.querySelector("#pvExplorationHost > div > div > exploration > div > explore-canvas > div > div.canvasFlexBox > div > div.displayArea.disableAnimations.fitToPage > div.visualContainerHost.visualContainerOutOfFocus > visual-container-repeat > visual-container:nth-child(2) > transform > div > div.visualContent > div > div > visual-modern > div > div > div.pivotTable > div.interactive-grid.innerContainer > div.mid-viewport > div > div:nth-child(1) > div.scrollable-cells-viewport > div > div:nth-child(2)").innerText
pod = document.querySelector("#pvExplorationHost > div > div > exploration > div > explore-canvas > div > div.canvasFlexBox > div > div.displayArea.disableAnimations.fitToPage > div.visualContainerHost.visualContainerOutOfFocus > visual-container-repeat > visual-container:nth-child(3) > transform > div > div.visualContent > div > div > visual-modern > div > div > div.pivotTable > div.interactive-grid.innerContainer > div.mid-viewport > div > div > div.scrollable-cells-viewport > div > div:nth-child(2)").innerText
pod = pod.replace(/\u00a0/g, " ");
podFirst = pod.split(" ")[0];
podFirstUp = podFirst.toUpperCase();
GM.setValue('pod', podFirstUp)
});
//PowerBI Script END
//Functions
function addMinute(timeStr) {
// Parse the time string
let [time, modifier] = timeStr.split(' ');
let [hours, minutes] = time.split(':').map(Number);
// Add one minute
minutes += 1;
// Handle minute overflow
if (minutes === 60) {
minutes = 0;
hours += 1;
}
// Handle hour overflow and AM/PM switch
if (hours === 12) {
modifier = modifier === 'AM' ? 'PM' : 'AM';
} else if (hours === 13) {
hours = 1;
}
// Format the new time string
let newTimeStr = `${hours}:${minutes.toString().padStart(2, '0')} ${modifier}`;
return newTimeStr;
}
function focusSlaMonitoring(){
putTextIntoClass('cw_CwComboBox', 2, 'Response SLA Monitoring');
clickClass('cw-ml-search-button', 0);
}
async function doTimeSheet(startTime, endTime, chargeTo){
await putTextIntoClass("cw_ChargeToTextBox", 0, chargeTo);
await focusClass("cw_startTime", 0);
await putTextIntoClass("cw_startTime", 0, startTime);
await focusClass("cw_endTime", 0);
await putTextIntoClass("cw_endTime", 0, endTime);
await focusClass("cw_ChargeToTextBox", 0);
await new Promise(r => setTimeout(r, 800));
await clickClass("cw_Refresh", 0);
await new Promise(r => setTimeout(r, 1200));
await contains("span", chargeTo)[0].click();
await new Promise(r => setTimeout(r, 500));
// await clickClass("cw_ToolbarButton_SaveAndClose", 0);
};
async function doTimeSheetMini(chargeTo){
await putTextIntoClass("cw_ChargeToTextBox", 0, chargeTo);
await focusClass("cw_ChargeToTextBox", 0);
await new Promise(r => setTimeout(r, 800));
await clickClass("cw_Refresh", 0);
await new Promise(r => setTimeout(r, 1200));
await contains("span", chargeTo)[0].click();
//await new Promise(r => setTimeout(r, 500));
//await clickClass("cw_ToolbarButton_SaveAndClose", 0);
};
function contains(selector, text) {
var elements = document.querySelectorAll(selector);
return Array.prototype.filter.call(elements, function(element){
return RegExp(text).test(element.textContent);
});
}
function getTicketInfo(){
contactinput = null;
document.querySelector('[data-id="internal"]').click(); // click internal note so we can pull it later
contact = getByClass('cw_contact', 0);
company = getByClass('cw_company', 0);
detailLabel = getInnerTextByClass('detailLabel', 0);
detailLabelSplit = detailLabel.split(" ");
ticketnumber = detailLabelSplit[2].replace("#", "");
ticketlink = "<a class='ui-text byt bew bxw byu byv byw' dir='auto' data-nav='true' title='https://na.myconnectwise.net/v4_6_release/services/system_io/router/openrecord.rails?companyName=wheelhouseit&amp;recordType=ServiceFv&amp;recid=TICKETLINKNUMBER' target='_blank' rel='noreferrer noopener' href='https://na.myconnectwise.net/v4_6_release/services/system_io/router/openrecord.rails?companyName=wheelhouseit&amp;recordType=ServiceFv&amp;recid=TICKETLINKNUMBER'>TICKETLINKNUMBER</a>".replace(/TICKETLINKNUMBER/g, ticketnumber);
detailLabel = detailLabel.replace(ticketnumber,ticketlink);
assignedTech = getByClass('cw_ticketOwner', 0);
initialDescription = getInnerTextByClass('TicketNote-rowNote', 0);
contactinput = prompt("What is the caller's name?", contact);
contact = contactinput;
};
function getMoreTicketInfo(){
internalNote = getInnerTextByClass('TicketNote-noteLabel', 1);
};
function copyPodPost(podPost){
if (contactinput === null){ //terminate function if user hits cancel button or provides no input
return;
}
GM.setClipboard(podPost, 'text/html')
window.alert(podPost);
};
function clickClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass);
var requiredElement = elements[elementIndex];
requiredElement.click();
};
function focusClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass);
var requiredElement = elements[elementIndex];
requiredElement.focus();
};
function getElementByClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; return requiredElement;
};
function getByClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; return requiredElement.value;
};
function getInnerTextByClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; return requiredElement.innerText;
};
function putTextIntoClass(theClass, elementIndex, text){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; requiredElement.value = text;
};
function setStatus(desiredStatus){
if (window.location.href.indexOf("timeexpensemodule.html") > -1) {
putTextIntoClass("cw_ticketStatus", 0, desiredStatus);
focusClass("cw_ticketStatus", 0);
}else{
putTextIntoClass("cw_status", 0, desiredStatus);
focusClass("cw_status", 0);
}
}
+91
View File
@@ -0,0 +1,91 @@
// ==UserScript==
// @name New post
// @namespace Violentmonkey Scripts
// @match https://teams.microsoft.com/*
// @grant none
// @version 1.0
// @author -
// @description 12/22/2023, 9:45:49 AM
// @require https://cdn.jsdelivr.net/npm/@violentmonkey/shortcut@1
// ==/UserScript==
//disable teams overriding right click menus
document.addEventListener("contextmenu", (e)=>e.stopPropagation(), true);
VM.shortcut.register('a-i', () => {
document.querySelector("[id='new-post-button']").click();
});
VM.shortcut.register('c-i', () => {
//window.alert("mario")
document.querySelector("[data-tid='compose-start-post']").click();
focusElement('[data-tid="ckeditor"]');
});
VM.shortcut.register('c-r', () => {
document.querySelector("[data-tid='ckeditor']").focus();
});
VM.shortcut.register('a-c-`', () => { // Click "teams" button
document.title = "Switching to Teams...";
document.querySelector("[data-tid='2a84919f-59d8-4441-a975-2a8c2643b741']").click();
});
VM.shortcut.register('a-s-~', () => { // Click "teams" button
document.title = "Switching to Chat...";
document.querySelector("[data-tid='86fcd49b-61a2-4701-b771-54728cd291fb']").click();
});
VM.shortcut.register('a-s-(', () => {
chatSwitch("Corey Luckett", "[aria-label='Corey Luckett']", "SD General", "[data-tid='channel-list-item-text-19:17d0f18bbe38444585becef3f654c859@thread.skype']");
});
VM.shortcut.register('a-9', () => {
chatSwitch("Support Agents and Alumni", "[aria-label='Support Agents and Alumni']", "Alpha Pod", "[data-tid='channel-list-item-text-19:7a5705aa5f5e4189998a90a6f89c136f@thread.skype']");
});
VM.shortcut.register('a-0', () => {
chatSwitch("Sierra Alpha Only", "[aria-label='Sierra Alpha Only']", "Charlie Pod", "[data-tid='channel-list-item-text-19:95c6eb80937a44d4a6540b9e6fdfc6c5@thread.skype']");
});
VM.shortcut.register('a--', () => {
chatSwitch("Sigma Pod", "[aria-label='Sigma Pod']", "Gamma Pod", "[data-tid='channel-list-item-text-19:83b2a5bf12d94019840d1d5687c49107@thread.skype']");
});
VM.shortcut.register('a-=', () => {
toggleTeams()
});
function toggleTeams(){
var chatButton = document.querySelector("[data-tid='86fcd49b-61a2-4701-b771-54728cd291fb']")
if(chatButton.getAttribute('aria-pressed') == "true"){
//chat is pressed! :D
document.title = "Switching to Teams...";
document.querySelector("[data-tid='2a84919f-59d8-4441-a975-2a8c2643b741']").click();
}
else{
//window.alert("chat is not pressed! D:");
document.title = "Switching to Chat...";
document.querySelector("[data-tid='86fcd49b-61a2-4701-b771-54728cd291fb']").click();
}
}
function chatSwitch(chatChatName, chatChatAttribute, teamsChatName, teamsChatAttribute){
var chatButton = document.querySelector("[data-tid='86fcd49b-61a2-4701-b771-54728cd291fb']")
//if(document.querySelector("[data-tid='86fcd49b-61a2-4701-b771-54728cd291fb']").getAttribute('aria-pressed') == "true"){
if(chatButton.getAttribute('aria-pressed') == "true"){
//chat is pressed! :D
document.title = "Switching to "+chatChatName+"...";
document.querySelector(chatChatAttribute).click();
}
else{
//window.alert("chat is not pressed! D:");
document.title = "Switching to "+teamsChatName+"...";
document.querySelector(teamsChatAttribute).click();
}
}
function focusElement(query){
var intv = setInterval(function() {
var elems = document.querySelectorAll(query);
if(elems.length < 1){
return false;
}
//when element is found, clear the interval.
clearInterval(intv);
for (var i = 0, len = elems.length; i < len; i++){
elems[i].value = "";
console.log("loop!")
}
document.querySelector(query).focus();
}, 100);
};
@@ -0,0 +1,11 @@
// ==UserScript==
// @name Microsoft Admin Portal
// @namespace Violentmonkey Scripts
// @match https://admin.exchange.microsoft.com/*
// @match https://admin.microsoft.com/*
// @grant none
// @version 1.0
// @author -
// @description 6/11/2024, 12:49:02 PM
// ==/UserScript==
+23
View File
@@ -0,0 +1,23 @@
// ==UserScript==
// @name changeZoom
// @namespace Violentmonkey Scripts
// @grant GM.openInTab
// @version 1.0
// @author -
// @require https://cdn.jsdelivr.net/npm/@violentmonkey/shortcut@1
// ==/UserScript==
VM.shortcut.register('a-7', () => {
document.body.style.zoom = "70%";
});
VM.shortcut.register('a-8', () => {
document.body.style.zoom = "80%";
});
VM.shortcut.register('a-9', () => {
document.body.style.zoom = "90%";
});
VM.shortcut.register('a-0', () => {
document.body.style.zoom = "100%";
});
+116
View File
@@ -0,0 +1,116 @@
// ==UserScript==
// @name openUrl
// @namespace Violentmonkey Scripts
// @grant GM.openInTab
// @grant GM.setValue
// @grant GM.getValue
// @grant GM.notification
// @version 1.0
// @author -
// @require https://cdn.jsdelivr.net/npm/@violentmonkey/shortcut@1
// ==/UserScript==
VM.shortcut.register('a-F2', () => {
document.title = prompt("What would you like to name this tab?")
});
VM.shortcut.register('a-t', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/connectwise.aspx?fullscreen=false&locale=en_US#XQAACAD0AAAAAAAAAAA9iIoG07$U9XgivLgsNhRsAzclmBsEVPOUvf12ZCOSL1cKld_sNK5vxzDxKqEIQN1BvG7dqFASg8$hPG4Tn9O9idccWjDsAW7JjklbemtIH39ZGIrt3xvMiJgp$sTd4Q1ZXCVHDvWAoouZMsezMi3KbX83f6zqULZmLL$d3PirBCuIv_6gscA=??ServiceTicketNew");
});
VM.shortcut.register('a-s-c', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/ConnectWise.aspx?locale=en_US#XQAACABxAQAAAAAAAAA9iIoG07$U9Xgsgy4H5d1QIn66fpE_52stocC7hTyEheVB0jdOBWGpoyiuAdMBDAJL8bBV7A_wzv_ohFRtPN3CHR1tdahbjINpBe7c_SX3X2tQyTs8xWay2oXAWd2AOzUd0i4MpVKQIG4tx0$Jc1NwtE_4m1ZGBwXHX$JKREIOW2ONr3tvx9FJiyiuMBd7mZNbcj1fKHdzjNyqRR8SnfCwT8gxbamKCXWk6BjfYcJi2a5pqCsMcG8QoRZgLm_wXKz_bkP8AA==??ConfigurationList");
});
VM.shortcut.register('a-s-t', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/ConnectWise.aspx?locale=en_US#XQAACACSAQAAAAAAAAA9iIoG07$U9XZqpLgsNhRsI0O_rb8$BDZMLPpOoVsVotL7i6hH34LCO7ZoHJJZg4IeLpcY_gC96MlY$eDRat8hb184i5FbR7ZauFFNtcBLwLDvQHQ8Btgk1ClWQ3TqWzdUcjeXaiNqnMAXVfeq$8t0$iljtbQgTTGhgTz5o1IUwjimoAsIClb$piHlxoB1$9FXLSYgvymFS$FYshezK7okMhpvdv0y3dNmdx3vrMohMaWUtppT90v9DFrq??ServiceSearchList");
});
VM.shortcut.register('a-c', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/ConnectWise.aspx?locale=en_US#XQAACAA1AQAAAAAAAAA9iIoG07$U9XZqpLgsNhRrwys7G93Ec4KnGEAS_6zaRrXLbk1hmJYSHi86Vq6x6D8WzI68Gr6edch4HT$7FhMIlhm_MU4cUr32joWu0bf5wnjaND2nOyFbfXoOhBaJ1CFTlGk1y_zjyjucJKiLmRCDu5qWD4D8v9hCHZfrKN1ePhQsq5WiDEdDnD9McUEJno94Iwp8OtKQ3R9eq8CfWr8sNMKm1GHhvtM7_BFKIA==??ContactsList");
});
VM.shortcut.register('c-s-c', () => {
GM.openInTab("https://hudu.247mgmt.com/c");
});
VM.shortcut.register('a-s-b', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/connectwise.aspx?fullscreen=false&locale=en_US#XQAACAC0AwAAAAAAAAA9iIoG07$U9XS7KAi9Xl65u3Vs$bByAbA9mswuxDEGw2svj8VhHiB_5tzaJbwShweI$9Ze5iho8Qt2l2IOvtfxAnG9UFX_Qov9TIoJPx_LLTqLVfvQZphPevid_uhiNP$ovM4UPb9wbjcNLyaC6gOGzhmBmTmfVJ99M4f$cnRZi7JV2MmmdVAIcA3HlNQEddO_zv7VbPxNhfe1HDvKw9a8SGmBTAt0rtk07ocgpKpfvVO4qRky$WrRumP69ancUOLW0VR8NedqZOmR754q2j85Fc_3wZ2RTqJu7tWK20H9Mj7cSfv9r54OVr_U$8Kst_4ph4YmZ_sAGSEyCPakUV0GRV9tfM9BbGOqv7k8oHb4wdPgsUKWruHLGBWUdDRpx_$0bt8Sk5GGjRy0dlg3WDcl$fQVBpKbd78pTAVFrSqQuXdTJdsmkBc3VxWv8AQLLRSw1oRSbEq477dE_9uZfeY=??ServiceBoard");
});
VM.shortcut.register('a-b', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/connectwise.aspx?fullscreen=false&locale=en_US#XQAACAC3AwAAAAAAAAA9iIoG07$U9XgivLgsNhRsI0O_rEHSzQCIbZUnpNMnJHh0NEgqfX4ZS9QZp_DnE3XebvTj3FYGLlQ$a1FH0nj9Raf$98EK4uLBiRRTVx9dUgYH_sfxCwkQ$yRUCodKDz5JrcyFY4g7LgWIF8b8zdrq93Dzq9Qsy9kqokMkKbbgQBvaiRAwU4dXmxCyNwz6qHk4U9HuD3qg2CCNTdT5Y4M87aTuCQE2HGwPSDzKbu$EF04Eb7SgJbsvfH$Bwrc9R65tlTJPaFOwzqcfwTSU_wlO_xqMi9rbhAkZQ8$6rKgscwxQcuGtp6K7rimQ$RUGLBwMOQcjxW4iKoYtkCwJ4VOQiclhwlXsZWzNHJaViUNiz4_fKJIcQGGu3LlDqRGkJTAfdBpyfFLuglBz$lJu2_JNLqHY7kwlFYqOTd6PFp2jW_CBwN5o_b$2XgiKTpDe5flQzIAOcDp8b80jrtf_8T8ulg==??ServiceBoard");
});
VM.shortcut.register('a-a', () => {
GM.openInTab("https://manage.247mgmt.com/automate/browse/companies/computers");
});
VM.shortcut.register('a-q', () => {
GM.openInTab("https://admin.getquickpass.com/customers");
});
VM.shortcut.register('a-s-q', () => {
GM.openInTab("https://hudu.247mgmt.com/kba/cyberqp-active-clients-db85c0c1ff78");
});
VM.shortcut.register('c-s-h', () => {
GM.openInTab("https://hudu.247mgmt.com");
});
VM.shortcut.register('c-s-d', () => {
GM.openInTab("https://admin-4124d980.duosecurity.com/login?email=gianlucca.pirovano%40wheelhouseit.com&next=%2F");
});
VM.shortcut.register('c-m', () => {
GM.openInTab("https://na.myconnectwise.net/v2025_1/connectwise.aspx?fullscreen=false&locale=en_US#XQAACAC1AgAAAAAAAAA9iIoG07$U9XS2qbz2sCgCrNjO$vAWHdHdFD2hRcTwBuofF$U3XDsWCqOMg4ZfErfxufo2MkT9yzKJTzo4MlvDs$bGTcaZfpl6DkiG2XfIXtzyDDnuZTSn7RROTTES7vsyXtChnCO3HqJSVm$_1N7a1cFCBfLm4dMx1SCk2mU$eod59rcf67BW$WT3CLeGsPEEOaKOyU03aa2lGOM1PdR3ynFB_c4Nb4sJX8QPKtg7d8A96J_2PCL6QSRUm8Xvn9esOaNIKUGKgKAEkf0dJ3JcaFCq50451o4K8OZ74qYg3EjouZXx1RMGHvJIXIf3$u1Fj64kio5MWlcLzQcOsb6oqNwnoRAfe_vBp17gZG1MUu3hfI4b0xVfeYLKoNUmt4O4u4lP5Kv9Y8mY");
});
VM.shortcut.register('c-a-m', () => {
GM.openInTab("https://mxtoolbox.com/EmailHeaders.aspx");
});
VM.shortcut.register('c-s-m', () => {
GM.openInTab("https://security.microsoft.com/tenantAllowBlockList");
});
VM.shortcut.register('a-y', () => {
var detailLabel = getInnerTextByClass('detailLabel', 0);
var detailLabelSplit = detailLabel.split(" ");
var ticketnumber = detailLabelSplit[2].replace("#", "");
var tickettitle = detailLabel.replace("Service Ticket ", "");
GM.setValue('ticketnumber', ticketnumber);
GM.setValue('tickettitle', tickettitle);
document.title = tickettitle;
//GM.notification(ticketnumber+" saved to variable!\nPaste with Alt+Shift+P");
});
VM.shortcut.register('a-s-y', () => {
var detailLabel = getInnerTextByClass('detailLabel', 0);
var detailLabelSplit = detailLabel.split(" ");
var ticketnumber = detailLabelSplit[2].replace("#", "");
var tickettitle = detailLabel.replace("Service Ticket ", "");
GM.setValue('ticketnumber', ticketnumber);
GM.setValue('tickettitle', tickettitle);
});
VM.shortcut.register('a-s-p', () => {
async function openTicketNumber(){
ticketnumber = await GM.getValue('ticketnumber', 0);
var input = await prompt("What is the ticket number you wish to open?", ticketnumber);
if (input === null){ //terminate function if user hits cancel button or provides no input
return;
}
ticketnumber = input
GM.setValue('ticketnumber', ticketnumber);
await GM.openInTab("https://na.myconnectwise.net/v4_6_release/services/system_io/router/openrecord.rails?companyName=wheelhouseit&recordType=ServiceFv&recid="+ticketnumber);
}openTicketNumber();
});
VM.shortcut.register('c-a-s-p', () => {
async function openTicketNumber(){
ticketnumber = await GM.getValue('ticketnumber', 0);
var input = await prompt("What is the ticket number you wish to open a report for?", ticketnumber);
if (input === null){ //terminate function if user hits cancel button or provides no input
return;
}
ticketnumber = input
GM.setValue('ticketnumber', ticketnumber);
await GM.openInTab("https://na.myconnectwise.net/v2025_1/services/system_io/reports/reportingservices/PdfViewer.rails?reportLink=ServiceTicket_Button&parameters=SR_Service_RecID%3D"+ticketnumber+"%26My_Member_ID%3D373%26TimeZoneName%3DEastern%2BStandard%2BTime%26Language%3Den-US");
}openTicketNumber();
});
//Functions Below
function getInnerTextByClass(theClass, elementIndex){
var elements = document.getElementsByClassName(theClass); var requiredElement = elements[elementIndex]; return requiredElement.innerText;
};
+235
View File
@@ -0,0 +1,235 @@
{
"scripts": {
"Lazy Teams": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"injectInto": "auto",
"name": "Lazy Teams",
"noframes": 0,
"pathMap": {},
"runAt": "document-start"
},
"config": {
"enabled": true,
"removed": 0,
"shouldUpdate": 1
},
"position": 1,
"lastModified": 1736183756169,
"lastUpdated": 1715892082262
},
"Lazy Connectwise": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"injectInto": "auto",
"name": "Lazy Connectwise",
"noframes": 0,
"pathMap": {},
"runAt": "document-start"
},
"config": {
"enabled": 1,
"removed": 0,
"shouldUpdate": 1
},
"position": 2,
"lastModified": 1739208739806,
"lastUpdated": 1739208739806
},
"openUrl": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"pathMap": {}
},
"config": {
"enabled": 1,
"removed": 0,
"shouldUpdate": 1
},
"position": 3,
"lastModified": 1740578953770,
"lastUpdated": 1740578953770
},
"changeZoom": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"pathMap": {}
},
"config": {
"enabled": 0,
"removed": 0,
"shouldUpdate": 1
},
"position": 4,
"lastModified": 1715783135740,
"lastUpdated": 1715783135740
},
"ConnectWiseManageEqualSignRebind": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"pathMap": {}
},
"config": {
"enabled": 0,
"removed": 0,
"shouldUpdate": 1
},
"position": 5,
"lastModified": 1715895001143,
"lastUpdated": 1715895001143
},
"Microsoft Admin Portal": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"pathMap": {}
},
"config": {
"enabled": 1,
"removed": 0,
"shouldUpdate": 1
},
"position": 6,
"lastModified": 1718124605141,
"lastUpdated": 1718124605141
},
"ClipHTMLEdit": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"pathMap": {},
"match": [
"https://wiki.gianluccapirovano.com/*"
]
},
"config": {
"enabled": 1,
"removed": 0,
"shouldUpdate": 1
},
"position": 7,
"lastModified": 1740579178008,
"lastUpdated": 1740579178008
},
"CW Auto-Closer": {
"custom": {
"origInclude": true,
"origExclude": true,
"origMatch": true,
"origExcludeMatch": true,
"pathMap": {}
},
"config": {
"enabled": 0,
"removed": 0,
"shouldUpdate": 1
},
"position": 8,
"lastModified": 1736884973399,
"lastUpdated": 1728927612984
}
},
"settings": {
"isApplied": true,
"blacklist": "file://*/*",
"blacklistNet": "file://*/*",
"popupWidth": 320,
"updateEnabledScriptsOnly": true,
"autoUpdate": 1,
"lastUpdate": 1740577957782,
"lastModified": 1707747155098,
"showBadge": "unique",
"badgeColor": "#880088",
"badgeColorBlocked": "#888888",
"exportValues": true,
"exportNameTemplate": "[violentmonkey]_YYYY-MM-DD_HH.mm.ss",
"expose": {
"greasyfork%2Eorg": true,
"sleazyfork%2Eorg": false
},
"closeAfterInstall": false,
"editAfterInstall": false,
"helpForLocalFile": true,
"trackLocalFile": false,
"autoReload": false,
"features": null,
"syncScriptStatus": true,
"customCSS": "",
"importScriptData": true,
"importSettings": true,
"notifyUpdates": false,
"notifyUpdatesGlobal": false,
"version": 1,
"defaultInjectInto": "auto",
"ffInject": false,
"xhrInject": false,
"filters": {
"searchScope": "name",
"showOrder": false,
"sort": "exec",
"viewSingleColumn": false,
"viewTable": true
},
"filtersPopup": {
"sort": "exec",
"enabledFirst": false,
"groupRunAt": true,
"hideDisabled": ""
},
"editor": {
"killTrailingSpaceOnSave": true,
"showTrailingSpace": true,
"autocompleteOnTyping": 100,
"lineWrapping": false,
"indentWithTabs": false,
"indentUnit": 2,
"tabSize": 2,
"undoDepth": 500
},
"editorTheme": "",
"editorThemeName": null,
"editorWindow": false,
"editorWindowPos": {},
"editorWindowSimple": true,
"scriptTemplate": "// ==UserScript==\n// @name New script {{name}}\n// @namespace Violentmonkey Scripts\n// @match {{url}}\n// @grant none\n// @version 1.0\n// @author -\n// @description {{date}}\n// ==/UserScript==\n",
"showAdvanced": true,
"valueEditor": {
"autocompleteOnTyping": 100,
"lineWrapping": false,
"indentWithTabs": false,
"indentUnit": 2,
"tabSize": 2,
"undoDepth": 500
},
"uiTheme": ""
},
"values": {
"Violentmonkey-20Scripts-0aNew-20script-20-2d-20myconnectwise.net-0a": {
"company": "sAccuity Delivery Systems, LLC",
"pod": "sINDIE"
},
"Violentmonkey-20Scripts-0aopenUrl-0a": {
"ticketnumber": "s9827510",
"tickettitle": "s#9891179 - Assistance Needed for New Laptop Setup and ConnectWise Agent Installation"
}
}
}