Skip to content

Instantly share code, notes, and snippets.

<?php
function valid_cc_expire_format($val) {
return (bool) preg_match('/\d{2}\/\d{4}/', $val);
}
function valid_cc_expire_value($val) {
$currentMonth = intval(date('n'));
$currentYear = intval(date('Y'));
$r = preg_match('/(\d{2})\/(\d{4})/', $val, $matches);
@le717
le717 / american-date.php
Created November 5, 2016 21:40
ACTUAL CODE I HAD TO WRITE BECAUSE PHP'S DATE PARSING IS GFXJDNVJVXJHZGVFHDSVXFHZFHSZDBMDBGMNGDFCVNG
<?php
/**
* Convert a date to the "American" date format.
*
* While one may assume this function appropriately rearranges the
* date format to follow the American MM/DD/YYYY format, in reality
* and by intention, this function is very naive. All it does is replace
* all dashes and periods with a forward-slash, preserving all ordering
* and leaving that up to the caller.
* This behavior is to allow PHP to correctly parse dates in the American
@le717
le717 / tracking-cookie.html
Created October 1, 2015 14:40
Expanded form of sneaky tracking cookie system as exposed in https://wp.me/p1V5ge-23v
@le717
le717 / gist:c698671893aa2a1ab8ac
Last active May 9, 2018 13:50 — forked from howtogeek/gist:6b3ed7d917900229b37e
Change font to Comic Sans if reader is using Adblock (and display a message at the top)
<script type="text/javascript">
var iframe = document.createElement("iframe");
iframe.height = "1px";
iframe.width = "1px";
iframe.id = "ads-text-iframe";
iframe.src = "/adframe.js";
document.body.appendChild(iframe);
var a = [
"In a world free from ads, one font reigns supreme. COMIC SANS!",
<?php
if (PHP_OS == 'WIN32' || PHP_OS == 'WINNT') {
define('EOL', "\r\n");
} else if (PHP_OS == 'Linux') {
define('EOL', "\n");
} else {
define('EOL', "\n");
}
?>
@le717
le717 / such-scoping-and-variables.py
Last active August 29, 2015 14:17
I have no clue what younger me was trying to do. At all. File dated January 9, 2013.
def circle_info(Peri, Area):
if select == "Area":
area_of_circle(rad)
elif select == "Peri":
peri_of_circle(rad)
else:
print("Sorry, invalid selection.")
def area_of_circle(rad):
return (3.14 * (rad ** 2))
def peri_of_circle(rad):
class SOPOMessages:
def __init__(self):
self.__encodeLegend = {}
self.__decodeLegend = {}
# Only decode the legends once per instance
# We only need to check if the encoding legend is generated
# for both legends are generated at the same time
if len(self.__encodeLegend) == 0:
function Rabbit() {
this.color = "white";
this.children = [];
}
Rabbit.prototype.pullFromHat = function() {
return !!Math.floor(Math.random() * 2);
};
Rabbit.prototype.haveChildren = function() {
@le717
le717 / six-billion-names.js
Created November 14, 2014 20:02
For my blog post "6 billion names" (http://wp.me/p1V5ge-1KI)
/**
* Randomly scrambles the given username.
* https://gist.github.com/le717/4c2188ca814f56575a26.
* @param {String} realName The username to be scrambled.
* @returns {String} The scrambled username.
*/
function scrambleName(realName) {
"use strict";
var newName = "",
@le717
le717 / scramble-name.js
Last active August 29, 2015 14:09
Randomly scrambles the given username.
/**
* Randomly scrambles the given username.
* @param {String} realName The username to be scrambled.
* @returns {String} The scrambled username.
*/
function scrambleName(realName) {
"use strict";
var newName = "",
usedChar = [];