Skip to content

Instantly share code, notes, and snippets.

@ConnerAiken
ConnerAiken / progress.php
Created August 15, 2016 19:56 — forked from mjuhl/progress.php
PHP Output Buffering/JavaScript/CSS Transition Progress Bar Experiment
<?php
/* For AJAX, if frustrated, try the following (see http://www.php.net/manual/en/function.flush.php#91556):
@apache_setenv('no-gzip', 1);
@ini_set('zlib.output_compression', 0);
*/
ob_start();
set_time_limit(0); // for scripts that run really long
function force_flush ($add_whitespace = TRUE) {
/* Deletes files recursively on windows and linux */
function delTree($dir) {
$files = array_diff(scandir($dir), array('.','..'));
foreach ($files as $file) {
(is_dir("$dir/$file")) ? delTree("$dir/$file") : unlink("$dir/$file");
}
return rmdir($dir);
}
@ConnerAiken
ConnerAiken / normalizeUnix()
Created January 31, 2017 06:12
An interview question with amazon
var str = '/var/www/./../html/.././webkit';
var str2 = './var/www/./html/testdir/../assets/.';
function normalizeUnix(string) {
var arr = string.split('/');
if(arr[0] == '')
arr.splice(0, 1);
for(var i = 0; i < arr.length; i++) {
if(arr[i] == '.') {
@ConnerAiken
ConnerAiken / index.html
Created May 31, 2017 15:30
Very basic hamburger menu example
<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
@ConnerAiken
ConnerAiken / js-class-examples.js
Last active June 7, 2017 19:06
Examples of ES5 vs ES6 Classes
/* ==============================================================
==== ES5 Classes
================================================================*/
'use strict';
function Shape(id, x, y) {
this.id = id;
this.setLocation(x, y);
}
@ConnerAiken
ConnerAiken / dangerous-extensions.json
Last active June 7, 2017 21:04
A collection of dangerous extensions to filter out of file uploads.
[
{
"ext":"adp",
"description":"Access Project (Microsoft)"
},
{
"ext":"app",
"description":"Executable Application"
},
{
@ConnerAiken
ConnerAiken / Tree.js
Last active June 8, 2017 00:41
Binary search tree example in javascript
'use strict';
/*
* Binary search tree with in-order iteration.
* http://greim.github.io/gen/dist/00-intro.html
*/
class Tree {
add(value) {
if (this.root) this.root.add(value);
@ConnerAiken
ConnerAiken / generateTestFile.bat
Created June 8, 2017 15:20
Generate test text files of all sizes
REM generateTestFile.bat testFileName.txt 900000
fsutil file createnew %1 %2
@ConnerAiken
ConnerAiken / example.sh
Created June 17, 2017 22:39
Resent bash command line history - linux security
history -cw
// or
reset
@ConnerAiken
ConnerAiken / ajax-hook.js
Last active June 27, 2017 22:17
Hook into all AJAX calls
/* =================== jQuery ===================== */
$(document).ajaxSend(function() {
alert("Triggered ajaxSend hook.");
});
$('#clickBtn').click(function() {
$.getJSON("https://crossorigin.me/https://api.darksky.net/forecast/037352c0951701a563b624359ea6111f/42.3601,-71.0589", function(json) {
console.log("JSON Data:", json);
});