Skip to content

Instantly share code, notes, and snippets.

View pfelipm's full-sized avatar
🎯
Focusing

pfelipm

🎯
Focusing
View GitHub Profile
/**
* Recursively gets all groups that a given user/group is a member
* of, either directly or indirectly, in a GWS domain.
*
* -OR-
*
* checks whether user/group is a member of provided group,
* both tasks support external users to the domain.
* Uses the AdminDirectory advanced service, and should be invoked by domain Admins!
*
@pfelipm
pfelipm / Reset slicers.gs
Last active November 23, 2021 17:04
Reset all slicers in the current sheet of a Google Spreadsheet
/**
* Resets all slicers in the active sheet using the Apps Script Spreadsheet Service.
*
* Context:
*
* Calling setColumnFilterCriteria(columnPosition, null) or trying to modify
* in some other way the current filter criteria of a slicer whose criteria
* has already been set manually (using the GUI) won't have any effect.
* So, this function clones & deletes all slicers, instead.
*
/**
* Demo authorization workflow that checks whether the current user can run this Apps Script, uses
* the Admin SDK Directory Advanced Service
* Twitter thread here: https://twitter.com/pfelipm/status/1576954653425618945
* @pfelipm (OCT/22)
*
* @OnlyCurrentDoc
*/
@pfelipm
pfelipm / fxParseJson.gs
Last active August 13, 2023 16:12
PARSEJSON Apps Script custom function for Google Sheets
/**
* Parses a JSON string and returns a single element designated by its full path.
* Mimics Coda's ParseJSON (https://coda.io/formulas#ParseJSON) formula.
* @param {A2:A3} jsonData Source JSON string or data interval containing JSON strings to parse.
* @param {A5:A6} fullPath Path string or data interval of paths to use for extraction, use ".number" for array elements.
* @param {false} stringify Optional, false (default) if result should be stringified only if it is an object.
* @return Extracted primitive value or stringified representation, if array or object.
*
* @customfunction
*
@pfelipm
pfelipm / Bookmarklets left panel GAS IDE
Last active June 14, 2023 19:18
Four bookmarklets to toggle / shrink / resize the left panel (and top section) of the Google Apps Script IDE
// Create a new bookmark in your browser using any of these URLs | @pfelipm 06/02/23
// Demo: https://twitter.com/pfelipm/status/1622395953721364481
// 1. Toggles the side panel out of view
javascript:(function() {const style = document.querySelector('div[jsname="Iq1FLd"]').style;if (style.display == 'none') style.display = '';else style.display = 'none';})()
// 2. Allows the side panel to shrink down to 150px when resizing window
javascript:(function() {const style = document.querySelector('div[jsname="Iq1FLd"]').style;if (style.minWidth == "150px") style.minWidth = "225px";else style.minWidth = "150px";})()
// 3. Resizes the side panel to the width specified by a JS prompt
@pfelipm
pfelipm / instalarAutoFirma.sh
Last active January 5, 2024 11:45
Este script instala el cliente Linux de AutoFirma y Firefox ESR en tu dispositivo ChromeOS. Soluciona el error "archive uses unknown compression for member control.tar.zst" al instalar el paquete DEB de AutoFirma. Ejecuta el script en el terminal de comandos Linux de tu chromecosa e instala a continuación tus certificados digitales en Firefox.
sudo apt update
sudo apt -y install default-jre
sudo apt -y install binutils
sudo apt -y install zstd
wget https://estaticos.redsara.es/comunes/autofirma/currentversion/AutoFirma_Linux_Debian.zip
unzip AutoFirma_Linux_Debian.zip
ar x AutoFirma_*.deb
zstd -d < control.tar.zst| xz > control.tar.xz
zstd -d < data.tar.zst| xz > data.tar.xz
ar -m -c -a sdsd AutoFirma_repacked.deb debian-binary control.tar.xz data.tar.xz
@pfelipm
pfelipm / fxCONTARCOLORv2.gs
Last active January 22, 2024 18:56
Función personalizada Apps Script para hojas de cálculo CONTARCOLOR (v2)
/**
* Realiza un recuento o calcula la suma o el promedio de los valores de las celdas
* que tienen un color de texto o fondo determinado. También puede simplemente devolver
* los valores que cumplan la condición de color para que puedan ser utilizados en cualquier
* fórmula.
*
* Versión modificada de la función CONTARCOLOR incluida en HdCPlus (https://workspace.google.com/marketplace/app/hdc+/410659432888),
* ahora:
*
* - Admite, además del recuento, la suma y el promedio de valores de celda según color.