Class: Jekyll::FDroidPackagesGenerator
- Inherits:
-
Generator
- Object
- Generator
- Jekyll::FDroidPackagesGenerator
- Defined in:
- lib/jekyll/FDroidPackageDetailGenerator.rb
Instance Attribute Summary collapse
-
#alreadyBuilt ⇒ Object
Returns the value of attribute alreadyBuilt.
Instance Method Summary collapse
Instance Attribute Details
#alreadyBuilt ⇒ Object
Returns the value of attribute alreadyBuilt.
20 21 22 |
# File 'lib/jekyll/FDroidPackageDetailGenerator.rb', line 20 def alreadyBuilt @alreadyBuilt end |
Instance Method Details
#generate(site) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/jekyll/FDroidPackageDetailGenerator.rb', line 25 def generate(site) # generator will only run on first build, not because of auto-regeneration if @alreadyBuilt != true @alreadyBuilt = true # Add plugin's SASS directory so site's list of SASS directories if site.config["sass"].nil? || site.config["sass"].empty? site.config["sass"] = Hash.new end if site.config["sass"]["load_paths"].nil? || site.config["sass"]["load_paths"].empty? site.config["sass"]["load_paths"] = ["_sass", (File. "../../_sass", File.dirname(__FILE__))] else site.config["sass"]["load_paths"] << (File. "../../_sass", File.dirname(__FILE__)) end # Enable pagination if site.config["pagination"].nil? || site.config["pagination"].empty? site.config["pagination"] = Hash.new end site.config["pagination"]["enabled"] = true index = FDroid::IndexV1.download(site.config["fdroid-repo"], site.active_lang || 'en_US') Jekyll::LunrJsSearch::Indexer.new.generate(site, index.apps) # Generate detail page for every package site.collections["packages"] = Collection.new(site, "packages") index.apps.each do |package| # This page needs to be created twice, once for site.pages, and once for site.collections. # If not, then the i18n code in jekyll-polyglot will end up processing the page twice, as # it iterates over all pages and all packages. The end result is a double prefix for "/en/en" # for any links in the page. # https://gitlab.com/fdroid/jekyll-fdroid/issues/38 site.pages << FDroidPackageDetailPage.new(site, site.source, package) site.collections["packages"].docs << FDroidPackageDetailPage.new(site, site.source, package) end # Generate browsing pages site.includes_load_paths << (File. "../../_includes", File.dirname(__FILE__)) site.pages << FDroidBrowsingPage.new(site, site.source) end end |