cakephp.rb 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. module Docs
  2. class Cakephp < UrlScraper
  3. self.name = 'CakePHP'
  4. self.type = 'cakephp'
  5. self.root_path = 'index.html'
  6. self.links = {
  7. home: 'https://cakephp.org/',
  8. code: 'https://github.com/cakephp/cakephp'
  9. }
  10. options[:skip_patterns] = [/\Asource-/, /\Anamespace-Cake.html/]
  11. options[:attribution] = <<-HTML
  12. &copy; 2005&ndash;present The Cake Software Foundation, Inc.<br>
  13. Licensed under the MIT License.<br>
  14. CakePHP is a registered trademark of Cake Software Foundation, Inc.<br>
  15. We are not endorsed by or affiliated with CakePHP.
  16. HTML
  17. version '4.1' do
  18. self.release = '4.1.6'
  19. self.base_url = "https://api.cakephp.org/#{self.version}/"
  20. html_filters.push 'cakephp/clean_html_39_plus', 'cakephp/entries_39_plus'
  21. options[:container] = '.page-container'
  22. end
  23. version '4.0' do
  24. self.release = '4.0.8'
  25. self.base_url = "https://api.cakephp.org/#{self.version}/"
  26. html_filters.push 'cakephp/clean_html_39_plus', 'cakephp/entries_39_plus'
  27. options[:container] = '.page-container'
  28. end
  29. version '3.9' do
  30. self.release = '3.9.4'
  31. self.base_url = "https://api.cakephp.org/#{self.version}/"
  32. html_filters.push 'cakephp/clean_html_39_plus', 'cakephp/entries_39_plus'
  33. options[:container] = '.page-container'
  34. end
  35. version '3.8' do
  36. self.release = '3.8.3'
  37. self.base_url = "https://api.cakephp.org/#{self.version}/"
  38. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  39. options[:container] = '#right'
  40. end
  41. version '3.7' do
  42. self.release = '3.7.9'
  43. self.base_url = "https://api.cakephp.org/#{self.version}/"
  44. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  45. options[:container] = '#right'
  46. end
  47. version '3.6' do
  48. self.release = '3.6.15'
  49. self.base_url = "https://api.cakephp.org/#{self.version}/"
  50. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  51. options[:container] = '#right'
  52. end
  53. version '3.5' do
  54. self.release = '3.5.15'
  55. self.base_url = "https://api.cakephp.org/#{self.version}/"
  56. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  57. options[:container] = '#right'
  58. end
  59. version '3.4' do
  60. self.release = '3.4.13'
  61. self.base_url = "https://api.cakephp.org/#{self.version}/"
  62. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  63. options[:container] = '#right'
  64. end
  65. version '3.3' do
  66. self.release = '3.3.15'
  67. self.base_url = "https://api.cakephp.org/#{self.version}/"
  68. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  69. options[:container] = '#right'
  70. end
  71. version '3.2' do
  72. self.release = '3.2.14'
  73. self.base_url = "https://api.cakephp.org/#{self.version}/"
  74. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  75. options[:container] = '#right'
  76. end
  77. version '3.1' do
  78. self.release = '3.1.13'
  79. self.base_url = "https://api.cakephp.org/#{self.version}/"
  80. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  81. options[:container] = '#right'
  82. end
  83. version '2.10' do
  84. self.release = '2.10.3'
  85. self.base_url = "https://api.cakephp.org/#{self.version}/"
  86. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  87. options[:container] = '#right'
  88. end
  89. version '2.9' do
  90. self.release = '2.9.4'
  91. self.base_url = "https://api.cakephp.org/#{self.version}/"
  92. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  93. options[:container] = '#right'
  94. end
  95. version '2.8' do
  96. self.release = '2.8.8'
  97. self.base_url = "https://api.cakephp.org/#{self.version}/"
  98. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  99. options[:container] = '#right'
  100. end
  101. version '2.7' do
  102. self.release = '2.7.11'
  103. self.base_url = "https://api.cakephp.org/#{self.version}/"
  104. html_filters.push 'cakephp/clean_html', 'cakephp/entries'
  105. options[:container] = '#right'
  106. end
  107. def get_latest_version(opts)
  108. doc = fetch_doc('https://cakephp.org', opts)
  109. doc.at_css('.title-home h1').content.scan(/\d\.\d*\.*\d*\.*\d*\.*/)[0]
  110. end
  111. private
  112. def parse(response)
  113. response.body.gsub! '<h5 class="method-name">', '<h3 class="method-name">'
  114. super
  115. end
  116. end
  117. end