Skip to content

Instantly share code, notes, and snippets.

View petercowan's full-sized avatar

Peter Cowan petercowan

View GitHub Profile

Keybase proof

I hereby claim:

  • I am petercowan on github.
  • I am petrich0r (https://keybase.io/petrich0r) on keybase.
  • I have a public key ASDcGuZK30QVvqbPbjVflVhVnr1qAKrbFTcWpcqKDHv1aAo

To claim this, I am signing this object:

require 'date'
points_ledger = [
{ amount: 5, expires_at: DateTime.new(2020,8,1)},
{ amount: 10, expires_at: DateTime.new(2020,8,2)},
{ amount: 2, expires_at: DateTime.new(2020,8,3)},
]
def add_points(ledger, amount, exp_date)
puts "Adding #{amount} points"
@petercowan
petercowan / AClass.java
Created February 10, 2012 22:06
Inner class test proxy for private methods
public class AClass {
private Object aPrivateMethod() {return null;}
final class AClassTestProxy {
Object aPrivateMethod() {
return AClass.this.aPrivateMethod();
}
}
}
@petercowan
petercowan / luhnCheck.js
Created November 18, 2011 03:17
luhn check for jQuery-Validation-Engine
_creditCard: function(field, rules, i, options) {
var valid = false, cardNumber = field.val().replace(/ +/g, '').replace(/-+/g, '');
var numDigits = cardNumber.length;
if (numDigits >= 14 && numDigits <= 16 && parseInt(cardNumber) > 0) {
var sum = 0, i = numDigits - 1, pos = 1, digit, luhn = new String();
do {
digit = parseInt(cardNumber.charAt(i));
luhn += (pos++ % 2 == 0) ? digit * 2 : digit;