generate

in _plugins/project-data-plugin.rb [31:91]


    def generate(site)
      
      projects = Array.new
      
      site.data['projects'].each do | projectId, project|
        project['project_id'] = projectId
        project['project_name'] =  project.fetch("project_name", projectId.capitalize())
        project['project_name_lower'] =  project["project_name"].downcase
        project['project_longname'] = project.fetch("project_longname", project['project_name'] )
        project['project_apachename'] = "Apache " + project["project_longname"]
        project['project_domain'] =  project.fetch("project_domain", projectId + ".apache.org")
        if project['attic_issue']
          project['attic_issue_link'] =  "https://issues.apache.org/jira/browse/" + project['attic_issue']
        end
        if project['project_shortdesc'].nil?
          shortdesc = project['project_description']
          idx = shortdesc.index('.')
          if idx and idx > 0
            shortdesc = shortdesc.slice(0, idx + 1)
          end
          retired_proj = site.data['committee-retired']['retired'][projectId]
          if retired_proj
            shortdesc = retired_proj['description']
          end
          project['project_shortdesc'] =  shortdesc
        end
        if project['project_type'].nil?
          project['project_type'] = 'PMC'
        end
        projects.push(project)
      end

      site.data['project_array'] = projects.sort_by { |project| project['project_name_lower'] }
      
      
      current_year = Time.new.year
      years = Array.new
      year = Hash.new
      year['year'] = 2004.to_s
      year['projects'] = Array.new
      years.push(year)
      for i in 2009..current_year do
        year = Hash.new
        year['year'] = i.to_s
        year['projects'] = Array.new
        years.push(year)
      end
      
      
      projects = site.data['project_array'].sort_by { |project| project['retirement_date']}.reverse
      projects.each do | project|
        year = project['retirement_date'].year
        i = year - 2008
        if i < 0
          i = 0
        end
        years[i]['projects'].push(project)
      end
      site.data['years_array'] = years.sort_by { |year| year['year'] }.reverse
    end