Skip to content

Instantly share code, notes, and snippets.

View atuttle's full-sized avatar

Adam Tuttle atuttle

View GitHub Profile
RewriteLog C:\Inetpub\ATuttle\meta_files\fusiongrokker.com\iirfLog.out
RewriteLogLevel 0
RewriteFilterPriority HIGH
###### force removal of www. prefix on all requests
RewriteCond %{HTTP_HOST} www.fusiongrokker.com(.*) [I]
RewriteRule ^/(.*) http://fusiongrokker.com/$1 [I,R=301,U,L]
###### fix old links
@atuttle
atuttle / ptw_links.md
Last active August 29, 2015 13:57
Relevant links for my Philly Tech Week 2014 talk: Integrate ALL the Things!
@atuttle
atuttle / ACF_custom_errors_partial_match.cfm
Last active August 29, 2015 14:05
This file demonstrates that ACF (Tested on latest patched CF10) does allow for "partial matching" of custom-typed thrown exceptions.
<cfscript>
try {
throw(type="com.myService.BarException");
} catch(com.myService.FooException e){
writeOutput("caught it @ com.myService.FooException");

https://bugbase.adobe.com/index.cfm?event=bug&id=3525456

Here's a simple repro case. Since this test involves ORM, you'll have to create a DSN. I'm testing against MySQL but it should be DB agnostic (that's part of the draw of ORM, right?)...

Just create a database and a new DSN named "repro" (or update the code accordingly), put foo.cfc into a folder named "orm", and everything else should work as expected.

@atuttle
atuttle / package.json
Created October 2, 2014 01:18
Using a free RedisToGo Nano instance on heroku, or the default settings on your local environment
{
"dependencies": {
"redis": "^0.10.1"
}
}
@atuttle
atuttle / example.cfm
Last active August 29, 2015 14:07
Generating random numbers with a trend to make data appear more realistic in some scenarios. 50% chance for a direction change.
<cfscript>
//to initialize to a random number instead of 50, set last to ""
last = 50;
for(var i = 1; i <= 100; i++){
last = trendingRandom( 0, 100, 12, last );
writeOutput( "#last#<br/>" );
}
</cfscript>
@atuttle
atuttle / Application.cfc
Created November 4, 2014 16:27
How I like to do configuration with DI/1
component {
function getEnvironment(){
if (cgi.server_name contains ".local" or cgi.server_name contains ".dev"){
return "dev";
}
if (cgi.server_name contains "qa."){
return "qa";
}
return "prod";
@atuttle
atuttle / adminBase.cfc
Last active August 29, 2015 14:10
Securing FW/1 applications; segmented by controller
component accessors="true" {
property framework;
property memberService;
function before( rc ){
local.safeEvents = 'main:member.login,main:member.forgot,main:member.resetpassword';
//require login for everything in this controller except login method
if (!structKeyExists(session, 'user')){
[user]
name = Adam Tuttle
email = adam@fusiongrokker.com
[color]
ui = auto
[core]
autocrlf = input
excludesfile = /Users/adam/.gitignore_global
[push]
default = tracking
@atuttle
atuttle / .jscsrc
Created July 1, 2015 20:39
My JSCS config and a sample of how it formats
{
"preset": "node-style-guide"
,"validateIndentation": "\t"
,"disallowAnonymousFunctions": true
,"disallowSpacesInsideParentheses": { "only": [ "{", "}" ] }
,"requireSpacesInsideParentheses": { "all": true, "except": [ "{", "}" ]
,"requireSpacesInsideBrackets": { "allExcept": [ "[", "]", "{", "}" ] }}
,"requireSpacesInsideObjectBrackets": "allButNested"
,"validateParameterSeparator": ", "
,"disallowCommaBeforeLineBreak": true