Skip to content

Instantly share code, notes, and snippets.

var overlay = {
el: false,
class: 'overlay',
show: function(clickCallback) {
this.el.show()
if (clickCallback && typeof clickCallback == "function") {
this.el.off('click').click(clickCallback)
}
},
hide: function() {
$(function() {
$.fn.toggleFullscreen = function() {
var elem = this[0];
if (!document.fullscreenElement && !document.mozFullScreenElement && !document.webkitFullscreenElement && !document.msFullscreenElement ) {
if (elem.requestFullscreen) {
elem.requestFullscreen();
} else if (elem.msRequestFullscreen) {
elem.msRequestFullscreen();
} else if (elem.mozRequestFullScreen) {
elem.mozRequestFullScreen();
<?php
function convert_spreadsheet_rows_to_sql($table_name, $row_mappings = array(), $rows = array(), $start_row = 2) {
$mappings = array();
$fields = array();
foreach ($row_mappings as $ind => $field) {
if ($field) {
$mappings[] = $ind;
$fields[] = $field;
}
}
var scrollLock = {
scrollTop: 0,
lock: function(scrollTop) {
if (typeof scrollTop == "number") {
this.scrollTop = scrollTop;
}
$(window).on("scroll", this.onScroll);
},
unlock: function() {
$(window).off("scroll", this.onScroll);
import json, os.path
def json_load(filepath):
return json.load(open(filepath))
def valid_filenames(filenames):
return map(os.path.realpath, filter(os.path.exists, filenames))
def merge(*dicts):
res = {}
@danielrw7
danielrw7 / replify
Last active October 24, 2023 12:03
replify - Create a REPL for any command
#!/bin/sh
command="${*}"
printf "Initialized REPL for `%s`\n" "$command"
printf "%s> " "$command"
read -r input
while [ "$input" != "" ];
do
eval "$command $input"
printf "%s> " "$command"
<?php
function export_variables_to_js($vars = array(), $parent = "window") {
$js_vars = array();
foreach ($vars as $key => $val) {
$key = json_encode($key);
$val = json_encode($val);
if ($parent) {
$js_vars[] = "$parent[$key] = $val";
} else {
<?php
function make_select($name, $options, $selected = "", $additional_attrs = "") {
$res = "<select";
if ($name) {
$res .= " name='$name'";
}
if ($additional_attrs) {
$res .= " $additional_attrs";
}
<?php
function replace_template_strings($template, $data = array(), $beginning_regex = '\{\{', $end_regex = '\}\}') {
return preg_replace_callback('/' . $beginning_regex . '(\w+)' . $end_regex . '/', function($match) use ($data) {
return empty($data[$match[1]]) ? "" : $data[$match[1]];
}, $template);
}
@danielrw7
danielrw7 / gist:5f968939ffbe72bbf7b0c94084ba47b4
Created June 16, 2016 17:03
Encoding data into an order of a fixed number of array indexes
function getOptions(len) {
return Array(len).join().split(",").map(function(c, i) {
return i;
});
}
function getStep(i, len) {
return factorial(len) / len * i;
}
function to(order) {