Sha256: 2dc8193c17978885fa80ce48f99e2e4c85ab685d0281e90a40adfb2e40545e33
Contents?: true
Size: 1.39 KB
Versions: 4
Compression:
Stored size: 1.39 KB
Contents
class CodeStats::Report attr_reader :filters, :projects def initialize *args @filters = args.extract_options! @projects = args end def render # preparing data data = projects.clone data.sort!{|a, b| b.characters_count(filters) <=> a.characters_count(filters)} data.collect! do |p| o = OpenObject.new o.name = p.name o.characters_count = p.characters_count(filters) o.characters_count_by_language = p.characters_count_by_language(filters) o.ignored_characters_count_by_language = p.characters_count_by_language.reject do |lang, count| o.characters_count_by_language.include?(lang) end o.specs = OpenObject.new o.specs.characters_count = p.specs.characters_count(filters) o.specs.characters_count_by_language = p.specs.characters_count_by_language(filters) o.specs.ignored_characters_count_by_language = p.specs.characters_count_by_language.reject do |lang, count| o.specs.characters_count_by_language.include?(lang) end o.unknown_extensions = p.unknown_extensions o end # rendering dir = __FILE__.dirname.to_dir css = [dir['report/style.css'].read].join("\n") js = %w(jquery.js highchart.js report.js).collect{|n| dir["report/#{n}"].read}.join("\n") report = dir / 'report.html.haml' report.render(projects: data, filters: filters, css: css, js: js) end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
code_stats2-0.1.8 | lib/code_stats/report.rb |
code_stats2-0.1.7 | lib/code_stats/report.rb |
code_stats2-0.1.6 | lib/code_stats/report.rb |
code_stats2-0.1.5 | lib/code_stats/report.rb |