diff --git a/lib/docs/filters/phalcon/clean_html.rb b/lib/docs/filters/phalcon/clean_html.rb index 9ec58102..f3ea4d6d 100644 --- a/lib/docs/filters/phalcon/clean_html.rb +++ b/lib/docs/filters/phalcon/clean_html.rb @@ -7,6 +7,11 @@ module Docs # Remove unnecessary things css('.headerlink', '#what-is-phalcon', '#other-formats', '#welcome h1', '#welcome p', '#table-of-contents h2').remove + # Add id for constants and methods + css('#constants strong', '#methods strong').each do |node| + node.parent['id'] = node.content.strip + end + doc end end diff --git a/lib/docs/filters/phalcon/entries.rb b/lib/docs/filters/phalcon/entries.rb index 9793f97a..3eab0f61 100644 --- a/lib/docs/filters/phalcon/entries.rb +++ b/lib/docs/filters/phalcon/entries.rb @@ -1,6 +1,7 @@ module Docs class Phalcon class EntriesFilter < Docs::EntriesFilter + def get_name node = css('h1').first name = node.content.strip @@ -9,11 +10,25 @@ module Docs end def get_type - if slug.start_with?('reference') - 'Reference' + if slug.start_with? 'reference' + 'Guides' else - 'API' + 'Classes' + end + end + + def additional_entries + entries = [] + + css('#constants strong').each do |node| + entries << [node.content.strip, node.parent['id'], 'Constants'] + end + + css('#methods strong').each do |node| + entries << [node.content.strip, node.parent['id'], 'Methods'] end + + entries end end end diff --git a/lib/docs/scrapers/phalcon.rb b/lib/docs/scrapers/phalcon.rb index ff79cf3e..abb29205 100644 --- a/lib/docs/scrapers/phalcon.rb +++ b/lib/docs/scrapers/phalcon.rb @@ -14,6 +14,7 @@ module Docs options[:root_title] = 'Phalcon' options[:only_patterns] = [/reference\//, /api\//] + options[:skip_patterns] = [/api\/index/] options[:attribution] = <<-HTML © 2012–2015 the Phalcon Team