Skip to content

Instantly share code, notes, and snippets.

View ppazos's full-sized avatar
🌎
All around

Pablo Pazos Gutiérrez ppazos

🌎
All around
View GitHub Profile
@ppazos
ppazos / class_name_standardization.php
Last active September 19, 2024 05:20
Stanrdardizes class names with generics to a single string
<?php
function snakeToCamelCase(string $input): string
{
return ucfirst(str_replace('_', '', ucwords(strtolower($input), '_')));
}
function getClassNameRecursive($string, $start, $end)
{
@ppazos
ppazos / last_modified_http_header_date_format.groovy
Created August 25, 2024 04:36
Format a date in the Last-Modified HTTP header format
// Formats to comply with https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified
java.text.SimpleDateFormat format = new java.text.SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss zzz");
format.setTimeZone(TimeZone.getTimeZone("GMT"));
println format.format(new Date())
@ppazos
ppazos / mirth_connect_maps.js
Created August 19, 2024 02:53
Shorthand names for accessing the maps in Mirth Connect
function $co(key, value) { if (arguments.length == 1) { return connectorMap.get(key); } else { return connectorMap.put(key, value); } }
function $c(key, value) { if (arguments.length == 1) { return channelMap.get(key); } else { return channelMap.put(key, value); } }
function $s(key, value) { if (arguments.length == 1) { return sourceMap.get(key); } else { return sourceMap.put(key, value); } }
function $gc(key, value) { if (arguments.length == 1) { return globalChannelMap.get(key); } else { return globalChannelMap.put(key, value); } }
function $g(key, value) { if (arguments.length == 1) { return globalMap.get(key); } else { return globalMap.put(key, value); } }
function $cfg(key, value) { if (arguments.length == 1) { return configurationMap.get(key); } else { return configurationMap.put(key, value); } }
function $r(key, value) { if (arguments.length == 1) { return responseMap.get(key); } else { return responseMap.put(key, value); } }
function $(string) {
try { if(responseMap.containsKey(string)) { return
@ppazos
ppazos / paragraph.groovy
Created June 10, 2024 13:18
Generates a paragraph text from a long line, limiting line size and number of words per line
def s = "An EHR_STATUS resource needs to be always created and committed in the new EHR. This resource MAY be also supplied by the client as the request body. If not supplied, a default EHR_STATUS will be used by the service with following attributes"
def ss = s.split(" ")
println ss
def wlimit = 4
def climit = 23
@ppazos
ppazos / encode_decode_hl7_string.js
Created May 29, 2024 20:19
Encode and decode strings for HL7 v2.x messages
function formatHL7String(str)
{
var hl7String = str.replace(/\\/g, '\\E\\');
hl7String = hl7String.replace(/\|/g, '\\F\\');
hl7String = hl7String.replace(/\^/g, '\\S\\');
hl7String = hl7String.replace(/~/g, '\\R\\');
hl7String = hl7String.replace(/&/g, '\\T\\');
return hl7String;
}
@ppazos
ppazos / index.html
Created May 9, 2024 22:49 — forked from CliftonH/index.html
Electron bug in `dialog.showMessageBox`
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'">
<link href="./styles.css" rel="stylesheet">
<title>Hello World!</title>
</head>
<body>
@ppazos
ppazos / Number.toFixed.js
Created May 8, 2024 04:50 — forked from dfkaye/Number.toFixed.js
Updated Number().toFixed() polyfill to add-then-remove the trailing '1' in every case.
// 14 March 2019
// Updated Number().toFixed() polyfill to add-then-remove the trailing '1' in every case.
// see original at https://gist.github.com/dfkaye/e977af36e668aa134c0ce55bab5bb15f
// and at https://dfkaye.wordpress.com/2017/12/06/number-tofixed-rounding-errors-broken-but-fixable/
/*
// fixes blog post solution
;(1.005).toFixed(2) == "1.01" || (function(prototype) {
var toFixed = prototype.toFixed
@ppazos
ppazos / print_tree.c
Created April 27, 2024 05:31 — forked from ximik777/print_tree.c
Printing Binary Trees in Ascii
/*
Copy from: http://web.archive.org/web/20090617110918/http://www.openasthra.com/c-tidbits/printing-binary-trees-in-ascii/
Source: http://web.archive.org/web/20071224095835/http://www.openasthra.com:80/wp-content/uploads/2007/12/binary_trees1.c
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@ppazos
ppazos / decimal_to_binary.groovy
Created April 20, 2024 00:36
Transforma un número decimal a uno binario en Groovy
int n = 1024 // entrada
String binario = '' // numero binario como string para poder verlo
int c = n
while (c > 1)
{
// modulo (%) da 0 cuando el numero es par y da 1 cuando el numero impar
// los numeros pares en binario terminan en cero, y los impoares en 1,
// entonces esto sirve para tomar el ultimo bit y saber si es 0 o 1.
binario = (c % 2).toString() + binario
@ppazos
ppazos / keybindings.json
Created April 15, 2024 18:25
Useful keybindings for vscode
// Place your key bindings in this file to override the defaultsauto[]
[
{
"key": "ctrl+alt+r",
"command": "workbench.files.action.showActiveFileInExplorer"
},
{
"key": "ctrl+alt+tab",
"command": "type",
"args": {