History

Add CodeIgniter Documentation

Phil Scherer committed 10 years ago

Commit 8232a051 parent 578ba0a11 files · +119 −-1Browse files

Unified · Split

11 files
  1. assets/javascripts/views/pages/codeigniter.coffee +6 −0
  2. assets/stylesheets/application-dark.css.scss +1 −0
  3. assets/stylesheets/application.css.scss +1 −0
  4. assets/stylesheets/pages/_codeigniter.scss +6 −0
  5. assets/stylesheets/pages/_sphinx.scss +5 −1
  6. lib/docs/filters/codeigniter/clean_html.rb +24 −0
  7. lib/docs/filters/codeigniter/entries.rb +42 −0
  8. lib/docs/scrapers/codeigniter.rb +35 −0
  9. public/icons/docs/codeigniter/16.png +0 −0
  10. public/icons/docs/codeigniter/16@2.png +0 −0
  11. public/icons/docs/codeigniter/SOURCE +1 −0
assets/javascripts/views/pages/codeigniter.coffee+6−0
@@ -0,0 +1,6 @@
1+#= require views/pages/base
2+
3+class app.views.CodeigniterPage extends app.views.BasePage
4+ prepare: ->
5+ @highlightCode @findAllByTag('pre'), 'php'
6+ return
assets/stylesheets/application-dark.css.scss+1−0
@@ -36,6 +36,7 @@ · 35 unmodified lines
3636 'pages/cakephp',
3737 'pages/chai',
3838 'pages/clojure',
39+ 'pages/codeigniter',
3940 'pages/coffeescript',
4041 'pages/d3',
4142 'pages/dojo',
assets/stylesheets/application.css.scss+1−0
@@ -36,6 +36,7 @@ · 35 unmodified lines
3636 'pages/cakephp',
3737 'pages/chai',
3838 'pages/clojure',
39+ 'pages/codeigniter',
3940 'pages/coffeescript',
4041 'pages/d3',
4142 'pages/dojo',
assets/stylesheets/pages/_codeigniter.scss+6−0
@@ -0,0 +1,6 @@
1+._codeigniter {
2+ @extend %sphinx;
3+
4+ .important { @extend %note-orange; }
5+ .warning { @extend %note-red; }
6+}
assets/stylesheets/pages/_sphinx.scss+5−1
@@ -1,4 +1,4 @@
1−._sphinx {
1+%sphinx {
22 h2, h3 { @extend %block-heading; }
33 dl:not(.docutils) > dt { @extend %block-label, %label-blue; }
44 dt + dt { margin-top: -.5em; }
@@ -24,3 +24,7 @@ · 19 unmodified lines
2424
2525 ul.simple { margin: 1em 0; }
2626 }
27+
28+._sphinx {
29+ @extend %sphinx
30+}
lib/docs/filters/codeigniter/clean_html.rb+24−0
@@ -0,0 +1,24 @@
1+module Docs
2+ class Codeigniter
3+ class CleanHtmlFilter < Filter
4+ def call
5+ css('.headerlink').remove
6+
7+ css('h1', 'h2', 'h3', 'h4', 'h5', 'pre').each do |node|
8+ node.content = node.content
9+ end
10+
11+ css('table').each do |node|
12+ node.remove_attribute 'border'
13+ end
14+
15+ css('.section > h2', '.section > h3', '.section > h4', '.section > h5').each do |node|
16+ node['id'] = node.parent['id']
17+ node.parent.remove_attribute 'id'
18+ end
19+
20+ doc.children
21+ end
22+ end
23+ end
24+end
lib/docs/filters/codeigniter/entries.rb+42−0
@@ -0,0 +1,42 @@
1+module Docs
2+ class Codeigniter
3+ class EntriesFilter < Docs::EntriesFilter
4+ def include_default_entry?
5+ not slug.ends_with? 'index'
6+ end
7+
8+ def get_name
9+ at_css('h1').content.strip
10+ end
11+
12+ def get_type
13+ slug.split('/')[0].capitalize
14+ end
15+
16+ def additional_entries
17+ entries = []
18+
19+ css('.class').each do |c_node|
20+ c_name = c_node.at_css('dt > .descname').content
21+ c_id = c_node.at_css('dt')['id']
22+ entries << [c_name, c_id, get_type]
23+
24+ c_node.css('.method').each do |node|
25+ m_name = node.at_css('.descname').content
26+ name = c_name + '::' + m_name + '()'
27+ id = node.at_css('dt')['id']
28+ entries << [name, id, get_type]
29+ end
30+ end
31+
32+ css('.function').each do |node|
33+ name = node.at_css('.descname').content + '()'
34+ id = node.at_css('dt')['id']
35+ entries << [name, id, get_type]
36+ end
37+
38+ entries
39+ end
40+ end
41+ end
42+end
lib/docs/scrapers/codeigniter.rb+35−0
@@ -0,0 +1,35 @@
1+module Docs
2+ class Codeigniter < UrlScraper
3+ self.name = 'CodeIgniter'
4+ self.type = 'codeigniter'
5+ self.release = '3.0'
6+ self.base_url = 'http://www.codeigniter.com/user_guide/'
7+ self.root_path = 'index.html'
8+ self.links = {
9+ home: 'http://codeigniter.com/',
10+ code: 'https://github.com/bcit-ci/CodeIgniter'
11+ }
12+
13+ html_filters.push 'codeigniter/clean_html', 'codeigniter/entries'
14+
15+ options[:container] = '.document'
16+
17+ options[:only_patterns] = [
18+ /\Ageneral/,
19+ /\Alibraries/,
20+ /\Adatabase/,
21+ /\Ahelpers/
22+ ]
23+
24+ options[:skip] = %w(
25+ general/welcome.html
26+ general/requirements.html
27+ general/credits.html
28+ )
29+
30+ options[:attribution] = <<-HTML
31+ &copy; British Columbia Institute of Technology<br>
32+ Licensed under the MIT License.
33+ HTML
34+ end
35+end
public/icons/docs/codeigniter/16.png+0−0

Binary file not shown.

public/icons/docs/codeigniter/16@2.png+0−0

Binary file not shown.

public/icons/docs/codeigniter/SOURCE+1−0
@@ -0,0 +1 @@
1+http://www.codeigniter.com/assets/data/ci-logo.zip

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t