mirror of
https://github.com/mattdiamond/fuckitjs.git
synced 2026-01-09 22:38:00 -05:00
Obligatory CoffeeScript version
So you can fuck your Rails apps
This commit is contained in:
49
fuckit.coffee
Normal file
49
fuckit.coffee
Normal file
@@ -0,0 +1,49 @@
|
||||
###
|
||||
FuckItJS v2.0.0-alpha
|
||||
|
||||
Note: this is ALPHA software and may result in
|
||||
irreversible brain damage
|
||||
###
|
||||
|
||||
$ ->
|
||||
|
||||
$.ajaxSetup { cache: true }
|
||||
|
||||
_FuckIt = window.FuckIt;
|
||||
|
||||
FuckIt = (script) ->
|
||||
req = $.ajax {
|
||||
url: script,
|
||||
dataType: 'text'
|
||||
}
|
||||
|
||||
success = (result) ->
|
||||
window.fuckedScript = result
|
||||
eval window.fuckedScript
|
||||
|
||||
error = ->
|
||||
throw new Error "Could not load script: #{script}"
|
||||
|
||||
req.then success, error
|
||||
|
||||
window.onError = (error, url, line) ->
|
||||
if not window.fuckedScript then return
|
||||
|
||||
parsed = window.fuckedScript.split "\n"
|
||||
parsed.splice line - 1, 1
|
||||
|
||||
window.fuckedScript = parsed.join "\n"
|
||||
|
||||
$.getScript 'FuckIt.js', () ->
|
||||
eval window.fuckedScript
|
||||
|
||||
return true
|
||||
|
||||
FuckIt.noConflict = () ->
|
||||
window.FuckIt = _FuckIt
|
||||
FuckIt
|
||||
|
||||
FuckIt.moreConflict = () ->
|
||||
window[prop] = FuckIt for prop in window when prop isnt 'location'
|
||||
|
||||
window.FuckIt = FuckIt;
|
||||
Reference in New Issue
Block a user