Skip to content

Instantly share code, notes, and snippets.

View martynchamberlin's full-sized avatar

Martyn Chamberlin martynchamberlin

View GitHub Profile
@martynchamberlin
martynchamberlin / DOM.html
Last active August 29, 2015 14:00
Sticky footer for complex case scenarios where other intruding DOM elements keep us from being able to use Ryan Fait's footer
<html>
<head>
</head>
<body>
<!-- the fact that this main block has an ID of #wrap has no actual bearing on this plugin -->
<div id="wrap">Main site content goes here, though the div doesn't
really have to close before footer begins. That doesn't matter either
way, which is what I think makes this solution so beautiful.
</div>
<footer>Copyright 2014</footer>
@martynchamberlin
martynchamberlin / addClass.js
Created June 16, 2014 15:00
Sometimes when content is coming out of a CMS it's faster to target an element by just adding a unique class via jQuery. This does that for you with any element(s) of your choosing. See sample function call at the bottom.
jQuery(document).ready(function( $ )
{
/**
* @param obj - array of strings. The element name to be targeted
*/
function addClasses( objArray )
{
for ( i = 0; i < objArray.length; i++ )
{
// Save CPU by storing this in local variable
@martynchamberlin
martynchamberlin / ecological-validity.swift
Last active August 29, 2015 14:03
Calculates the mathematical probability of ecological validity of a given experiment, where the Y axis is the percentage of probability and each data point in the graph is a new independent variable being introduced to the experiment. As more independent variables are introduced, the accuracy exponentially diminishes. Needless to say, you need t…
// Playground - noun: a place where people can play
import Cocoa
var i: Int = 0
func power(#x :Int, #y :Int) -> Int {
if(y == 0) {
return 1;
}
@martynchamberlin
martynchamberlin / example_of_static_in_php.php
Last active August 29, 2015 14:03
PHP overloads the `static` keyword. In instance variables, it means the classical OOP usage. In local variables (stack instead of heap) it means something else. This code demonstrates that something else.
<?php
function get_random_num( $start = 1, $finish = 2 )
{
static $rand;
if ( ! isset( $rand ) )
{
$rand = rand( $start, $finish );
}
return $rand;
@martynchamberlin
martynchamberlin / functions.php
Created August 27, 2014 19:59
Remove White Space Between <li> Elements in a Genesis Menu
<?php
/**
* Having `display: inline-block` works great as long as there isn't white space.
*/
add_filter('genesis_do_nav', 'remove_whitespace');
function remove_whitespace( $str )
{
$str = str_replace( "\r\n", "", $str );
$str = str_replace( "\r", "", $str );
@martynchamberlin
martynchamberlin / centerVertically.js
Created September 16, 2014 02:32
centerVertically.js—a simple extension to the jQuery library that allows you to vertically center most anything.
/**
* centerVertically() takes a given DOM element and centers
* it vertically within the parent element. If the height
* of the browser is less than this element's height, then
* the original margin relative to top is restored until
* the window gets larger again.
*
* Note that this function extends the jQuery library and
* therefore requires it before this function can be
* defined.
@martynchamberlin
martynchamberlin / site.js
Created October 25, 2014 03:36
Remove WPAdmin Bar in WordPress
/**
* By default you can rmeove a single user's admin bar in WordPress.
* That's cool but the problem of course is that you have to do this
* for every single user. If you are using software like Wishlist
* Member where new users are being added all the time, this is bad.
* The solution is to programmatically remove the admin bar accross
* the board. I've experimented doing this several ways and this is
* the best one in my expereince.
*/
@martynchamberlin
martynchamberlin / LinkedList.cpp
Last active August 29, 2015 14:14
LinkedList example
//
// LinkedList.c
// linked_lists
//
// Created by Martyn Chamberlin on 2/5/15.
// Copyright (c) 2015 Martyn Chamberlin. All rights reserved.
//
#include "LinkedList.h"
#include <iostream>
@martynchamberlin
martynchamberlin / app.js
Last active October 18, 2015 00:28
Simple way to cache the information about the logged in user, using an AngularJS service
/** This file serves as a usage example **/
angular.module("MyApp").controller("homeCtrl", ["$scope", "$rootScope", "UserService", homeCtrl]);
function homeCtrl($scope, $rootScope, UserService) {
UserService.GetUser().then(function(user) {
console.log( user.FirstName );
}, function() {
console.log( 'An error occurred' );
});
}
@martynchamberlin
martynchamberlin / index.html
Created July 16, 2015 18:28
Scalabe circle with pure CSS
<div class="wrap">
<div class="left">
<div class="box-container-outer">
<div class="box-container">
<div class="box">
<div class="center-vertical">A</div>
</div>
</div>
</div>
Left Content Area