Skip to content

Instantly share code, notes, and snippets.

View jankuca's full-sized avatar

Jan Kuča jankuca

  • Prague, Czech Republic
  • 14:38 (UTC +02:00)
View GitHub Profile
# List all installed Apple Developer certificates
security find-certificate -a -c "Developer" login.keychain | grep '"labl"' | cut -d'"' -f4
# List installed .mobileprovision files
ls ~/Library/MobileDevice/Provisioning\ Profiles/
# Get plist from a .mobileprovision file
openssl smime -inform der -verify -noverify -in $mobileprovision_file
module.exports = function (Handlebars) {
/*! ******************************
Handlebars helpers
*******************************/
// debug helper
// usage: {{debug}} or {{debug someValue}}
// from: @commondream (http://thinkvitamin.com/code/handlebars-js-part-3-tips-and-tricks/)
Handlebars.registerHelper("debug", function(optionalValue) {
console.log("Current Context");
@jankuca
jankuca / tag-helpers.js
Last active August 29, 2015 14:21 — forked from ofstudio/heplers.js
var hbs = require('express-hbs'),
api = require('core/server/api'),
_ = require('lodash'),
async = require('express-hbs/lib/async'), // To redefine `registerAsyncHelper`
registerAsyncHelper;
// Redefine `registerAsyncHelper` from `express-hbs`
registerAsyncHelper = function (name, fn) {
hbs.handlebars.registerHelper(name, function (context, options) {
// Pass `[context, options]` as arg instead of `context` only
@jankuca
jankuca / examples.js
Created January 1, 2011 13:49
JS library for converting MongoDB-like selectors to SQL
// Basic usage
mongo2sql({ 'a': 'b', 'c': 'd' });
"[a] = 'b' AND [c] = 'd'"
mongo2sql({ 'a': { $gt: 123 }, 'c': 'd' });
"[a] > 123 AND [c] = 'd'"
mongo2sql({ $or: [{ 'a': 'b'}, { 'c': 'd' }] });
"( ( [a] = 'b' ) OR ( [c] = 'd' ) )"
@jankuca
jankuca / require.js
Created January 17, 2011 12:33
require.js for front-end
(function(doc) {
var head = doc.documentElement,
isHeadReady,
isDomReady,
domWaiters = [],
queue = [], // waiters for the "head ready" event
handlers = {}, // user functions waiting for events
scripts = {}, // loadable scripts in different states
isAsync = doc.createElement("script").async === true || "MozAppearance" in doc.documentElement.style || window.opera;
@jankuca
jankuca / wysihat.js
Created January 17, 2011 14:05
Modified WysiHat v0.2.1; not forked the original repository because rake is required
/* WysiHat - WYSIWYG JavaScript framework, version 0.2.1
* (c) 2008-2010 Joshua Peek
*
* WysiHat is freely distributable under the terms of an MIT-style license.
*--------------------------------------------------------------------------*/
(function (window) {
var WysiHat = {};
@jankuca
jankuca / prototype.js
Created January 17, 2011 14:10
Modified and JSLint-complaint Prototype.JS; not forked because of rake
/* Prototype JavaScript framework, version 1.6.1
* (c) 2005-2009 Sam Stephenson
*
* Prototype is freely distributable under the terms of an MIT-style license.
* For details, see the Prototype web site: http://www.prototypejs.org/
*
*--------------------------------------------------------------------------*/
window.Prototype = {
Version: '1.6.1',
@jankuca
jankuca / index.js
Created January 20, 2011 16:21
RelativeDate Node.js module
exports.parse = function (string, format) {
var match = string.match(/^(\+|-)\s*(\d+)\s*([a-z]{3})/i);
var add;
if (!match) {
add = 0;
} else {
add = parseInt(match[2], 10);
switch (match[3]) {
case 'min':
add *= 60;
@jankuca
jankuca / base64.js
Created January 20, 2011 15:39
Base64 Node.js module
exports.Base64 = {
'_keyStr': "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
'encode': function (input) {
var output = '';
var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
var i = 0;
input = this._utf8_encode(input);
@jankuca
jankuca / ejs.js
Created January 20, 2011 15:54
EJS Node.js module; checkout the branch "client" for a client-side version
var rsplit = function (string, regex) {
var result = regex.exec(string),
retArr = [],
first_idx,
last_idx,
first_bit;
while (result !== null) {
first_idx = result.index;
last_idx = regex.lastIndex;
if (first_idx !== 0) {