Class: Bullring::Helper

Inherits:
Object
  • Object
show all
Defined in:
lib/bullring/workers/common.rb

Constant Summary collapse

ESCAPE_MAP =
{
  '\\' => '\\\\', 
  "\r\n" => '\n', 
  "\n" => '\n', 
  "\r" => '\n', 
  '"' => '\"', 
  "'" => '\''
}

Class Method Summary collapse

Class Method Details

.jslint_call(script) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/bullring/workers/common.rb', line 23

def self.jslint_call(script)
   jslintCall = <<-RACER_CALL
      JSLINT("#{prepare_source(script)}", {devel: false, 
                           bitwise: true, 
                           undef: true,
                           continue: true, 
                           unparam: true, 
                           debug: true, 
                           sloppy: true, 
                           eqeq: true, 
                           sub: true, 
                           es5: true, 
                           vars: true, 
                           evil: true, 
                           white: true, 
                           forin: true, 
                           passfail: false, 
                           newcap: true, 
                           nomen: true, 
                           plusplus: true, 
                           regexp: true, 
                           maxerr: 50, 
                           indent: 4}); JSLINT.errors
    RACER_CALL
end

.prepare_source(source) ⇒ Object



58
59
60
61
62
# File 'lib/bullring/workers/common.rb', line 58

def self.prepare_source(source) 
 # escape javascript characters (similar to Rails escape_javascript)
 (source ||= '').gsub!(/(\\|\r\n|[\n\r"'])/u) {|match| ESCAPE_MAP[match] }
 source   
end