소스 검색

Adding influxdb documentation

Yosi Attias 9 년 전
부모
커밋
cd8590f90b
3개의 변경된 파일52개의 추가작업 그리고 0개의 파일을 삭제
  1. 18 0
      lib/docs/filters/influxdb/clean_html.rb
  2. 19 0
      lib/docs/filters/influxdb/entries.rb
  3. 15 0
      lib/docs/scrapers/influxdb.rb

+ 18 - 0
lib/docs/filters/influxdb/clean_html.rb

@@ -0,0 +1,18 @@
+module Docs
+  class Influxdb
+    class CleanHtmlFilter < Filter
+      def call
+        doc = @doc.at_css('#page-content')
+
+        # Re-position the page header
+        header = at_css('.page--body h1')
+        doc.children.first.add_next_sibling header
+
+        # Remove the contribution
+        at_css('.page--contribute').remove
+
+        doc 
+      end
+    end
+  end
+end

+ 19 - 0
lib/docs/filters/influxdb/entries.rb

@@ -0,0 +1,19 @@
+module Docs
+  class Influxdb
+    class EntriesFilter < Docs::EntriesFilter
+      
+      def get_name
+        at_css('#page-title h1').content
+      end
+
+      def get_type
+        # This is kinda hacky, we are fetching the current type from
+        # the url, we are asumming that the url pattern is
+        # category/page or category
+        path = current_url.relative_path_from(base_url)
+        "InfluxDB: #{path.split('/').first.titleize}"
+      end
+
+    end
+  end
+end

+ 15 - 0
lib/docs/scrapers/influxdb.rb

@@ -0,0 +1,15 @@
+module Docs
+  class Influxdb < UrlScraper
+    self.name = 'InfluxDB'
+    self.type = 'influxdb'
+    self.release = '0.10'
+    self.base_url = 'https://docs.influxdata.com/influxdb/v0.10/'
+    
+    html_filters.push 'influxdb/entries', 'influxdb/clean_html'
+
+    options[:attribution] = <<-HTML
+      &copy; 2010&ndash;2015 InfluxData<br>
+      Licensed under the MIT license.
+    HTML
+  end
+end