From ece7a75afdbfc0530bf3048f6e9d1e3bb3156df6 Mon Sep 17 00:00:00 2001 From: Thibaut Date: Sun, 13 Sep 2015 12:12:14 -0400 Subject: [PATCH] Finish Phalcon scraper --- assets/images/icons.png | Bin 33055 -> 33649 bytes assets/images/icons@2x.png | Bin 87338 -> 89145 bytes assets/javascripts/news.json | 3 ++ .../templates/pages/about_tmpl.coffee | 5 +++ assets/javascripts/views/pages/phalcon.coffee | 7 ++++ assets/stylesheets/application-dark.css.scss | 1 + assets/stylesheets/application.css.scss | 1 + assets/stylesheets/global/_icons.scss | 1 + assets/stylesheets/pages/_phalcon.scss | 8 ++++ lib/docs/filters/phalcon/clean_html.rb | 36 +++++++++++++++--- lib/docs/filters/phalcon/entries.rb | 23 +++++------ lib/docs/scrapers/phalcon.rb | 11 +++--- public/icons/docs/phalcon/16.png | Bin 1188 -> 703 bytes public/icons/docs/phalcon/16@2x.png | Bin 2251 -> 1751 bytes 14 files changed, 73 insertions(+), 23 deletions(-) create mode 100644 assets/javascripts/views/pages/phalcon.coffee create mode 100644 assets/stylesheets/pages/_phalcon.scss diff --git a/assets/images/icons.png b/assets/images/icons.png index 7bca5a0badbad7c1e94c07a9cf529d2dca235f20..939c9c0e72af47d2cf342ed1e7eb4b1290e2c93e 100644 GIT binary patch delta 3858 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 Ui9iGg00000NkvXXu0jG}f|@sC?EnA( delta 3259 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 diff --git a/assets/images/icons@2x.png b/assets/images/icons@2x.png index 2dce0637df36aa7352800ad9f886417f1c518d49..ee8cc1aa836930994763bb50f978e8f21443e8e2 100644 GIT binary patch delta 3406 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" + ], [ "2015-08-09", "New documentation: React Native" ], [ diff --git a/assets/javascripts/templates/pages/about_tmpl.coffee b/assets/javascripts/templates/pages/about_tmpl.coffee index de0d9a24..76a2debd 100644 --- a/assets/javascripts/templates/pages/about_tmpl.coffee +++ b/assets/javascripts/templates/pages/about_tmpl.coffee @@ -279,6 +279,11 @@ credits = [ '2010-2015 The OpenTSDB Authors', 'LGPLv2.1', 'https://raw.githubusercontent.com/OpenTSDB/opentsdb.net/gh-pages/COPYING.LESSER' + ], [ + 'Phalcon', + '2011-2015 Phalcon Framework Team', + 'CC BY', + 'https://docs.phalconphp.com/en/latest/reference/license.html' ], [ 'Phaser', '2015 Richard Davey, Photon Storm Ltd.', diff --git a/assets/javascripts/views/pages/phalcon.coffee b/assets/javascripts/views/pages/phalcon.coffee new file mode 100644 index 00000000..fb17d54d --- /dev/null +++ b/assets/javascripts/views/pages/phalcon.coffee @@ -0,0 +1,7 @@ +#= require views/pages/base + +class app.views.PhalconPage extends app.views.BasePage + afterRender: -> + @highlightCode @findAll('pre[class*="php"]'), 'php' + @highlightCode @findAll('pre.highlight-html'), 'markup' + return diff --git a/assets/stylesheets/application-dark.css.scss b/assets/stylesheets/application-dark.css.scss index 20c2fc1e..66cd7c72 100644 --- a/assets/stylesheets/application-dark.css.scss +++ b/assets/stylesheets/application-dark.css.scss @@ -55,6 +55,7 @@ 'pages/node', 'pages/npm', 'pages/opentsdb', + 'pages/phalcon', 'pages/phaser', 'pages/php', 'pages/phpunit', diff --git a/assets/stylesheets/application.css.scss b/assets/stylesheets/application.css.scss index dcb6b623..09580553 100644 --- a/assets/stylesheets/application.css.scss +++ b/assets/stylesheets/application.css.scss @@ -55,6 +55,7 @@ 'pages/node', 'pages/npm', 'pages/opentsdb', + 'pages/phalcon', 'pages/phaser', 'pages/php', 'pages/phpunit', diff --git a/assets/stylesheets/global/_icons.scss b/assets/stylesheets/global/_icons.scss index f1cf5289..77fb1c93 100644 --- a/assets/stylesheets/global/_icons.scss +++ b/assets/stylesheets/global/_icons.scss @@ -112,3 +112,4 @@ %icon-expand-white { background-position: -8rem -8rem; } %icon-contract-white { background-position: -9rem -8rem; } ._icon-react_native:before { background-position: 0 -9rem; } +._icon-phalcon:before { background-position: -1rem -9rem; } diff --git a/assets/stylesheets/pages/_phalcon.scss b/assets/stylesheets/pages/_phalcon.scss new file mode 100644 index 00000000..646cf07c --- /dev/null +++ b/assets/stylesheets/pages/_phalcon.scss @@ -0,0 +1,8 @@ +._phalcon { + @extend %simple; + + h3 > small { + float: right; + color: $textColorLight; + } +} diff --git a/lib/docs/filters/phalcon/clean_html.rb b/lib/docs/filters/phalcon/clean_html.rb index f3ea4d6d..4585c3a8 100644 --- a/lib/docs/filters/phalcon/clean_html.rb +++ b/lib/docs/filters/phalcon/clean_html.rb @@ -4,12 +4,38 @@ module Docs def call @doc = at_css('.body') - # Remove unnecessary things - css('.headerlink', '#what-is-phalcon', '#other-formats', '#welcome h1', '#welcome p', '#table-of-contents h2').remove + if root_page? + at_css('h1').content = 'Phalcon' + end + + css('#what-is-phalcon', '#other-formats').remove + + css('#methods > p > strong, #constants > p > strong').each do |node| + node.parent.name = 'h3' + node.parent['id'] = node.content.parameterize + node.parent['class'] = 'method-signature' + node.parent.inner_html = node.parent.inner_html.sub(/inherited from .*/, '\0') + end + + css('.headerlink').each do |node| + id = node['href'][1..-1] + node.parent['id'] ||= id + node.remove + end + + css('div[class^="highlight-"]').each do |node| + code = node.at_css('pre').content + code.remove! %r{\A\s*<\?php\s*} unless code.include?(' ?>') + node.content = code + node.name = 'pre' + end + + css('.section').each do |node| + node.before(node.children).remove + end - # Add id for constants and methods - css('#constants strong', '#methods strong').each do |node| - node.parent['id'] = node.content.strip + css('table[border]').each do |node| + node.remove_attribute('border') end doc diff --git a/lib/docs/filters/phalcon/entries.rb b/lib/docs/filters/phalcon/entries.rb index 3eab0f61..288b63c7 100644 --- a/lib/docs/filters/phalcon/entries.rb +++ b/lib/docs/filters/phalcon/entries.rb @@ -1,31 +1,28 @@ module Docs class Phalcon class EntriesFilter < Docs::EntriesFilter - def get_name - node = css('h1').first - name = node.content.strip - node.remove - name + (at_css('h1 > strong') || at_css('h1')).content.strip.remove('Phalcon\\') end def get_type - if slug.start_with? 'reference' + if slug.start_with?('reference') 'Guides' else - 'Classes' + path = name.split('\\') + path[1] == 'Mvc' ? path[1..2].join('\\') : path[1] 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'] + css('.method-signature').each do |node| + next if node.content.include?('inherited from') || node.content.include?('protected ') || node.content.include?('private ') + name = node.at_css('strong').content.strip + next if name == '__construct' || name == '__toString' + name.prepend "#{self.name}::" + entries << [name, node['id']] end entries diff --git a/lib/docs/scrapers/phalcon.rb b/lib/docs/scrapers/phalcon.rb index abb29205..1eb992e7 100644 --- a/lib/docs/scrapers/phalcon.rb +++ b/lib/docs/scrapers/phalcon.rb @@ -1,8 +1,7 @@ module Docs class Phalcon < UrlScraper - self.name = 'Phalcon' - self.slug = 'phalcon' self.type = 'phalcon' + self.version = '2.0.6' self.base_url = 'https://docs.phalconphp.com/en/latest/' self.root_path = 'index.html' self.links = { @@ -10,14 +9,16 @@ module Docs code: 'https://github.com/phalcon/cphalcon/' } - html_filters.push 'phalcon/clean_html', 'phalcon/entries', 'title' + html_filters.push 'phalcon/clean_html', 'phalcon/entries' options[:root_title] = 'Phalcon' options[:only_patterns] = [/reference\//, /api\//] - options[:skip_patterns] = [/api\/index/] + options[:skip] = %w( + api/index.html + reference/license.html) options[:attribution] = <<-HTML - © 2012–2015 the Phalcon Team
+ © 2011–2015 Phalcon Framework Team
Licensed under the Creative Commons Attribution License 3.0. HTML end diff --git a/public/icons/docs/phalcon/16.png b/public/icons/docs/phalcon/16.png index ef92e6ba969e208b9f2b0697fe17910e2d06ac16..3a13007dbc29f7d63990af49a64f6f0d243cfaa7 100644 GIT binary patch delta 690 zcmV;j0!{s-3BLu98Gi-<001VGPC5Vp0)|OMK~#7Fh0_CI>slB9;6G{FdDpgW+qP}n zvu)e9ZQHhOqdw2~&HJKb2PTu*T(&B!x%}Fn4-P{RlT_OL=SQW7(Vx^sVTAt~?m2Vn z^in{uoS2}}@jpM>11#FQF2+Ekzm~)7(rI3{&Z6(H7M- zH`In(d-hf5lsJ;e#J1^MmPO4wv84@%A#z(QDSv)GVmNNl-rczFuXzM38_bSn|>mp$& z)npG2Lmzv$*MeWrW1)}ey`e0U2r@@{aqh?_%#-RK8K73wT{rFbc6<*oT!2`t{qs5a z4$|jy?Ok|bH_Vta73OkI0Un$J7zP74nXtroD9UT6EPw3$U6I{Ob(%4A##&AincCOe zH;tgPff!&y9kmq(se?@nDov}gt;NvbfnW~|fp@2umu;A{PRBQGJoWiyx_J&+xC!QEGG{in|I~uUGrxqQt?0i3=(XzLXfzk47&T_dA($q)%BZC zAK);S(wuWzJtqNNd54U zjJHoPO!2V}&5r+d?&_syPxQp*PxyD>1gVkM(IP(ZdwXAac_(B^!}%At&E++VHcu_sH2L)XtN;K1UvqwM-;TwHKHl1Y^`tu( zxH-AZ{BR1W>%z;sKm;-B(34A>UY!M+=I#PA5QvUGySnNAiS&{@Hy2lT7gz59KZy8+ zS9h16-eRAFOO-mQ;S-*Dwwi_Rx6m6ScxOvLb z3%lo^*}n76sof9H?Rj&hU}b;v-bHIKADDS~{lt^&I}R>u-Z?*OX=h?t&bliHkK8z$ z*IYSi>FiyXk4-qcvHje-uFD(67#N~clg!ohOf~gA{Jcx1w63|ZuWr};)YfuaLvt59 zNB@L~#90j`Tc$0#uqz@vseaFbkc4PAXBQ7|ub8TwnuCivkE~d@Z8b1#^X9ZK`G3>F z(k8i~xc=zU>8CdBzIfC#z&CzMjgzf?Oi@PpzPbA!UO069v`c_j^1SAw&#&#hea1I5 zaM{icNm*$gZtk8w-oSv$nA;i@6y)aS7LpO4HnTBjac5e2eq2RP*7WAO9doA~S=)4I z>C}r`*WNs`iBPbm@ z@yXXIqK98U{`&uUIp2IsImdOsKTTI)WZ>owy!d^WA*21s-{)ZG(iWYf_!=a1)zif>gyVX00t2&~S|O)rnwXeIf2dcK+caN4xkJg}0U<$Q zfuX_dpG{1*?%G;f^7RX^LyWWXV>#jA&2h!t-U|JPPwiS?f9Qzk+7d)ALp9aA9S++&k$$F)^=dQg9)zP&W8^v z|6py{G%@g^;l@JmN5VprCpF#?aa?$1%a@*|r;RpmYK%z~Y@2gu&!48Jt*%D}#HUZ0 zHZ?pXEcCj=jzwEbzw-9_o=pmBq^H00)|WTsW())4&Z$0VQz wNstY}`DrEPiAAXljw$&`sS2LCiRr09sfj6-g(p*iMF#_er>mdKI;Vst09vpPNdN!< diff --git a/public/icons/docs/phalcon/16@2x.png b/public/icons/docs/phalcon/16@2x.png index 6356d3adc615ee9401e26b84c631f86a5b5cfd31..d04e2973224f70d3ab98ce84d6304b4d27325669 100644 GIT binary patch delta 1736 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 O0000