mirror of
https://github.com/mattdiamond/fuckitjs.git
synced 2026-01-06 21:13:53 -05:00
50 lines
950 B
CoffeeScript
50 lines
950 B
CoffeeScript
###
|
|
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;
|