From 138ee09fc97ee30f3ae9eaaccf14b6b2f6985d6a Mon Sep 17 00:00:00 2001 From: Thibaut Date: Sun, 16 Mar 2014 17:01:10 -0400 Subject: [PATCH] Improve and complete Yii documentation --- assets/images/icons.png | Bin 15730 -> 16326 bytes assets/images/icons@2x.png | Bin 41494 -> 43277 bytes .../templates/pages/about_tmpl.coffee | 5 ++ .../templates/pages/news_tmpl.coffee | 5 +- assets/javascripts/views/pages/yii.coffee | 15 ++++++ assets/stylesheets/application.css.scss | 3 +- assets/stylesheets/global/_icons.scss | 1 + assets/stylesheets/pages/_yii.scss | 24 +++++++++ lib/docs/filters/yii/clean_html.rb | 51 +++++++----------- lib/docs/filters/yii/entries.rb | 23 +++----- lib/docs/scrapers/yii.rb | 7 ++- public/icons/docs/yii/16.png | Bin 890 -> 725 bytes public/icons/docs/yii/16@2x.png | Bin 2050 -> 1549 bytes public/icons/docs/yii/SOURCE | 1 + 14 files changed, 82 insertions(+), 53 deletions(-) create mode 100644 assets/javascripts/views/pages/yii.coffee create mode 100644 assets/stylesheets/pages/_yii.scss create mode 100644 public/icons/docs/yii/SOURCE diff --git a/assets/images/icons.png b/assets/images/icons.png index cc9920acfb886ecff33e0b95366907c161aa8e88..18d8741b6b9f8ae8878f60659868adddd6d51ed8 100644 GIT binary patch delta 6604 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 diff --git a/assets/images/icons@2x.png b/assets/images/icons@2x.png index 7e066a908467016e4f3070ee9518295cf87c3457..c97d2f6be524375dd29b322d0c7369c2d84e1601 100644 GIT binary patch delta 12786 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 delta 10989 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 bn={@3jdW3KtmsPh00000NkvXXu0mjf%8Oer diff --git a/assets/javascripts/templates/pages/about_tmpl.coffee b/assets/javascripts/templates/pages/about_tmpl.coffee index 9f6ea9e3..59722d81 100644 --- a/assets/javascripts/templates/pages/about_tmpl.coffee +++ b/assets/javascripts/templates/pages/about_tmpl.coffee @@ -200,5 +200,10 @@ credits = [ '2009-2014 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors', 'MIT', 'https://raw.github.com/jashkenas/underscore/master/LICENSE' + ], [ + 'Yii', + '2008-2014 by Yii Software LLC', + 'BSD', + 'https://raw.github.com/yiisoft/yii/master/LICENSE' ] ] diff --git a/assets/javascripts/templates/pages/news_tmpl.coffee b/assets/javascripts/templates/pages/news_tmpl.coffee index 21d4106a..d2efaf0e 100644 --- a/assets/javascripts/templates/pages/news_tmpl.coffee +++ b/assets/javascripts/templates/pages/news_tmpl.coffee @@ -24,7 +24,10 @@ newsItem = (date, news) -> result app.news = [ - [ 1394236800000, # March 8, 2014 + [ 1394928000000, # March 16, 2013 + """ New Yii documentation """, + ], [ + 1394236800000, # March 8, 2014 """ Added path bar. """, ], [ 1393027200000, # February 22, 2014 diff --git a/assets/javascripts/views/pages/yii.coffee b/assets/javascripts/views/pages/yii.coffee new file mode 100644 index 00000000..3efeec2a --- /dev/null +++ b/assets/javascripts/views/pages/yii.coffee @@ -0,0 +1,15 @@ +#= require views/pages/base + +class app.views.YiiPage extends app.views.BasePage + @events: + click: 'onClick' + + onClick: (event) -> + return unless event.target.classList.contains 'show' + $.stopEvent(event) + + source = $ '.code', event.target.parentNode.parentNode + isShown = source.style.display is 'block' + + source.style.display = if isShown then 'none' else 'block' + event.target.textContent = if isShown then 'show' else 'hide' diff --git a/assets/stylesheets/application.css.scss b/assets/stylesheets/application.css.scss index 479aff8b..33e74c4c 100644 --- a/assets/stylesheets/application.css.scss +++ b/assets/stylesheets/application.css.scss @@ -48,4 +48,5 @@ 'pages/rfc', 'pages/sphinx', 'pages/underscore', - 'pages/yard'; + 'pages/yard', + 'pages/yii'; diff --git a/assets/stylesheets/global/_icons.scss b/assets/stylesheets/global/_icons.scss index 3310fae3..898d99ce 100644 --- a/assets/stylesheets/global/_icons.scss +++ b/assets/stylesheets/global/_icons.scss @@ -50,3 +50,4 @@ ._icon-moment:before { background-position: -1rem -7rem; } ._icon-c:before { background-position: -2rem -7rem; } %icon-path { background-position: -3rem -7rem; } +._icon-yii:before { background-position: -4rem -7rem; } diff --git a/assets/stylesheets/pages/_yii.scss b/assets/stylesheets/pages/_yii.scss new file mode 100644 index 00000000..b6625ba2 --- /dev/null +++ b/assets/stylesheets/pages/_yii.scss @@ -0,0 +1,24 @@ +._yii { + h2 { @extend %block-heading; } + > h3 { @extend %block-label, %label-blue; } + + .paramNameCol { font-weight: bold; } + .signature2 { margin: .4em 0; } + .sourceCode { margin-bottom: 1em; } + .sourceCode > .code { display: none; } + + .SeeAlso { + > h4 { + margin-bottom: 1em; + font-size: inherit; + } + + > ul { margin-top: 0; } + } + + .summaryTable td:first-child[rowspan] { + border-right: 1px solid #e5e5e5; + + + td { border-left: 0; } + } +} diff --git a/lib/docs/filters/yii/clean_html.rb b/lib/docs/filters/yii/clean_html.rb index 5adebcc6..72291edc 100644 --- a/lib/docs/filters/yii/clean_html.rb +++ b/lib/docs/filters/yii/clean_html.rb @@ -2,47 +2,32 @@ module Docs class Yii class CleanHtmlFilter < Filter def call + at_css('h1').content = 'Yii PHP Framework' if root_page? - #remove irrelevant content - css('div').each do |node| - if node['class'] == "layout-main-header" - node.remove - elsif node['class'] == "layout-main-submenu" - node.remove - elsif node['class'] == "layout-main-shortcuts" - node.remove - elsif node['class'] == "layout-main-footer" - node.remove - elsif node['class'] == "grid_3 alpha" - node.remove - elsif node['class'] == "comments" - node.remove - elsif node['class'] == "api-suggest clearfix" - node.remove - elsif node['id'] == "comments" - node.remove - elsif node['id'] == "nav" - node.remove - else - end - end + css('.api-suggest', '.google-ad', '.g-plusone', '#nav', '#comments').remove - # Put code blocks in
 tags
-        css('.code').each do |node|
+        css('.summary > p > .toggle').each do |node|
+          node.parent.remove
+        end
+
+        css('.signature', '.signature2').each do |node|
           node.name = 'pre'
+          node.inner_html = node.inner_html.strip
+        end
+
+        css('div.detailHeader').each do |node|
+          node.name = 'h3'
         end
 
-        #remove Hide inherited methods / properties and show links
-        css('a').each do |node|
-          if node['class'] == 'toggle'
-            node.remove
-          elsif node['class'] == 'show'
-            node.remove
-          end
+        css('.sourceCode > .code > code').each do |node|
+          parent = node.parent
+          parent.name = 'pre'
+          node.remove
+          parent.inner_html = node.first_element_child.inner_html.strip
         end
 
         doc
       end
     end
   end
-end
\ No newline at end of file
+end
diff --git a/lib/docs/filters/yii/entries.rb b/lib/docs/filters/yii/entries.rb
index 803d32be..0bd2551a 100644
--- a/lib/docs/filters/yii/entries.rb
+++ b/lib/docs/filters/yii/entries.rb
@@ -1,30 +1,21 @@
 module Docs
   class Yii
     class EntriesFilter < Docs::EntriesFilter
-
       def get_name
-        #class names exist in the 

content. - name = at_css('h1').content.strip + at_css('h1').content.strip end def get_type - #need to get the table with a class of summaryTable. Then we need the content of the first td in the first tr. - type = css('table.summaryTable td')[0].content - type + css('.summaryTable td').first.content end def additional_entries - css('table.summaryTable tr[id]').inject [] do |entries,node| - #need to ignore inherited methods and properties - if (node['class'] != 'inherited' and node.parent().parent()['class'] == "summary docMethod") - #name should be Class.method() id will take you to the link in the summary block. - name = slug + "." + node['id'] + "()" - entries << [name, node['id']] - end - entries + css('.detailHeader').inject [] do |entries, node| + name = node.child.content.strip + name.prepend self.name + (node.next_element.content.include?('public static') ? '::' : '->') + entries << [name, node['id']] end end - end end -end \ No newline at end of file +end diff --git a/lib/docs/scrapers/yii.rb b/lib/docs/scrapers/yii.rb index 4467319b..3bec938d 100755 --- a/lib/docs/scrapers/yii.rb +++ b/lib/docs/scrapers/yii.rb @@ -1,12 +1,15 @@ module Docs class Yii < UrlScraper - self.name = 'Yii' - self.slug = 'yii' self.type = 'yii' self.version = '1.1.14' self.base_url = 'http://www.yiiframework.com/doc/api/1.1/' html_filters.push 'yii/clean_html', 'yii/entries' + options[:container] = '.grid_9' + options[:attribution] = <<-HTML + © 2008–2014 by Yii Software LLC
+ Licensed under the three clause BSD license. + HTML end end diff --git a/public/icons/docs/yii/16.png b/public/icons/docs/yii/16.png index 85a6ad44c49fede8a90fd1a6321b71b6fa32eae8..9b391bc001f2821e0b0aca486a31c18d5fadb583 100644 GIT binary patch delta 702 zcmV;v0zv)y2Gs?SBYy&%NkldFjf+Hl^|NX_yFiH1U<0fxw}z#l<>&|g4F`BN_cPG+mMwH2Pn zv-5rD+xfmjBCVn9->{AC^3tkuLGs7RIrXm9CRS6Hug{{tAAe5?K@69}$1qm@bH`{O zop3qHe}d;6s9%NPl&Pqf0=K!L@PJ1*;m!pgk~ThAqY2*(+S6MBN%IFoP9RL(3<8Xm zpma`a{C^R2EADhx4n_iVAOartABP`AQe#&V3B8}$tc~6RNb=5~;DR79mmY+fN(#)@ zMdHgQX{d*AlYiM_#$w}e4AhFEph`f4$9yXEswih*h&9Rxa7$*MeCN97Ge?rs9Tw;yJh zN5E1`g}GK5*g4U#z>fo~;!&SrmV2pRkpexVXQ5RR4}bNdXu@C>hy6Yht`;1#G-iCj zs*e)Z<`XdA6$J|eaezw_VN#q;SS=F9@aIg=J7p?#eoBCDd5+5MagqPB%7fcBEKLl= z;&Nt#Lww${q)Y~tv;efa_E#EXiA1PQUr~|d!oI5Z{nvNG<6NgVii&yS8W6~y;fT4Z zW>A$z=zlTJMX!S6Sa$o|jcH4>XL*svq_HSE2`bxHNsLtby^$)_m3=QkQ)g#@-`x7d2+XvA8+mLyc7!6%D3 kyz)+2-t4?%{l8|v1FK+}7(^b delta 868 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 TKYceY00000NkvXXu0mjfVOr10 diff --git a/public/icons/docs/yii/SOURCE b/public/icons/docs/yii/SOURCE new file mode 100644 index 00000000..e9482791 --- /dev/null +++ b/public/icons/docs/yii/SOURCE @@ -0,0 +1 @@ +http://www.yiiframework.com/logo/