Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move contributors-name-mapping to YAML data file, and inline into relevant HTML files #233

Merged
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 100 additions & 0 deletions _data/contributors-name-mapping.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
abrin: Adam Brin
adamw: Adam Warski
ajaybhat: Ajay Bhat
ajf8: Alan F
alesj: Aleš Justin
alexsnaps: Alex Snaps
alhafoudh: Ahmed Al Hafoudh
altus34: David Avenante
anistor: Adrian Nistor
barreiro: Luis Barreiro
bayerls: Sebastian Bayerl
beikov: Christian Beikov
benson-basis: Benson Margulies
BrentDouglas: Brent Douglas
brmeyer: Brett Meyer
causton81: Chris
civanyp: Christian Ivan
DavideD: Davide D'Alto
davidedisomma: Davide Di Somma
denistiago: Denis Tiago
dernasherbrezon: dernasherbrezon
djydewang:
DMasherov:
dreab8: Andrea Boriero
edalquist: Eric Dalquist
Elmervc: Elmer van Chastelet
emmanuelbernard: Emmanuel Bernard
flibbertigibbet: Kathryn Killebrew
francoisledroff: Francois Le Droff
frekele: Leandro Kersting de Freitas
gavinking: Gavin King
galderz: Galder Zamarreño
gastaldi: George Gastaldi
gbadner: Gail Badner
gfouquet: Grégory Fouquet
golovnin: Andrej Golovnin
gscheibel: Guillaume Scheibel
gsmet: Guillaume Smet
gunnarmorling: Gunnar Morling
gustavonalle: Gustavo Fernandes
hferentschik: Hardy Ferentschik
hholierhoek:
Hilmerc:
jhalliday:
JiriBilek: Jiri Bilek
jmartisk: Jan Martiska
joexner:
jonathanwood: Jonathan Wood
jpav: John Verhaeg
jrnt30: Justin Nauman
julien-may: Julien May
jwillebrands: Jan-Willem Willebrands
kadishmal: Esen Sagynov
kariem: Kariem Hussein
kevinpollet: Kevin Pollet
khalidq: Khalid
koentsje: Koen Aers
lalmeras: Laurent
lordofthejars: Alex Soto
lucamolteni: Luca Molteni
lukasz-antoniak: Lukasz Antoniak
maesenka: Karel Maesen
maniksurtani: Manik Surtani
marko-bekhta: Marko Bekhta
mathpere: Mathieu Perez
mbladel: Marco Belladelli
mbppower: Marcel Barbosa Pinto
michael-simons: Michael Simons
mincong-h: Mincong Huang
mp911de: Mark Paluch
Naros: Chris Cranford
nicolaferraro: Nicola Ferraro
nicolashelleringer: Nicolas Helleringer
ozoli: Oliver Carr
pb00068: Günther Demetz
pemmasanikrishna: Radhakrishna Pemmasani
plentz: Diego Plentz
pmuir: Pete Muir
ppitonak: Pavol Pitonak
rvansa: Radim Vansa
s4ke: Martin Braun
Sanne: Sanne Grinovero
schernolyas: Sergey Chernolyas
scottmarlow: Scott Marlow
sebersole: Steve Ebersole
shahramgoodarzi:
sharathjreddy:
simkam: Martin Simka
slorber: Sébastien Lorber
stliu: Strong Liu (刘少壮)
tonit: Toni Menzel
ttretter: Timo Tretter
valotas: Georgios Valotasios
victor-rds: Victor Rezende dos Santos
vladmihalcea: Vlad Mihalcea
wolfc: Carlo de Wolf
yrodiere: Yoann Rodière
zackurey: Zach Kurey
zbbfufu: Julien Furgerot
Zuchos: Lukasz Zuchowski
27 changes: 27 additions & 0 deletions _ext/data_file_parser.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
require 'fileutils'
require 'json'

module Awestruct
module Extensions
# Parses _data/*.yml files and makes them available under site.* (as a hash) and site.data_json.* (as a JSON string)
# Release info parsing is more complex and handled in release_file_parser.rb instead.
class DataFileParser

def initialize(data_dir="_data")
@data_dir = data_dir
end

def watch(watched_dirs)
watched_dirs << @data_dir
end

def execute(site)
Dir[ "#{site.dir}/#{@data_dir}/*.yml" ].each do |file_name|
data = site.engine.load_yaml( file_name )
site.data_json ||= Hash.new
site.data_json[File.basename(file_name, '.yml')] = data.to_json
end
end
end
end
end
2 changes: 2 additions & 0 deletions _ext/pipeline.rb
Original file line number Diff line number Diff line change
@@ -5,6 +5,7 @@
require 'relative'
require 'releases'
require 'release_file_parser'
require 'data_file_parser'
require 'redirect_creator'
require 'directory_listing'
require 'links'
@@ -45,6 +46,7 @@

# register extensions and transformers
extension Awestruct::Extensions::ReleaseFileParser.new
extension Awestruct::Extensions::DataFileParser.new
transformer Awestruct::Extensions::JsMinifier.new
transformer Awestruct::Extensions::CssMinifier.new
transformer Awestruct::Extensions::HtmlMinifier.new
40 changes: 16 additions & 24 deletions _layouts/community/community-contributors.html.haml
Original file line number Diff line number Diff line change
@@ -24,30 +24,22 @@ layout: community-standard

:javascript
$(document).ready(function() {
});


:javascript
$(document).ready(function() {
var contributorsNameMapping;
$.getJSON( "/community/contributors/contributors-name-mapping.json", function( data ) {
contributorsNameMapping = data;
$.getJSON( "https://api.github.com/repos/hibernate/#{project_description.github.project}/contributors", function( data ) {
var items = [];
data.forEach( function( contributor ) {
var contributorName = contributorsNameMapping ? (contributorsNameMapping[contributor.login] ? contributorsNameMapping[contributor.login] : contributor.login) : contributor.login;

items.push(
$( '<div class="ui card contributor"/>' )
.append( $( '<div class="image"/>' ).append( $('<img src="' + contributor.avatar_url + '" />' ) ) )
.append( $( '<div class="content" />' ).append( $( '<div class="header" />' ).append( $( '<a href="' + contributor.html_url + '" />' ).text( contributorName ) ) ) )
.append( $( '<div class="extra content" />' ).append( $( '<span class="right floated" />' ).text( contributor.contributions + ' commit' + ( contributor.contributions > 1 ? 's' : '' ) ) ) )
);
});

$( '#contributor-list' ).append( items );
$( '#contributor-loader' ).hide();
$( '#contributor-list' ).fadeIn();
var contributorsNameMapping = #{site.data_json['contributors-name-mapping']}
$.getJSON( "https://api.github.com/repos/hibernate/#{project_description.github.project}/contributors", function( data ) {
var items = [];
data.forEach( function( contributor ) {
var contributorName = contributorsNameMapping[contributor.login] ? contributorsNameMapping[contributor.login] : contributor.login;

items.push(
$( '<div class="ui card contributor"/>' )
.append( $( '<div class="image"/>' ).append( $('<img src="' + contributor.avatar_url + '" />' ) ) )
.append( $( '<div class="content" />' ).append( $( '<div class="header" />' ).append( $( '<a href="' + contributor.html_url + '" />' ).text( contributorName ) ) ) )
.append( $( '<div class="extra content" />' ).append( $( '<span class="right floated" />' ).text( contributor.contributions + ' commit' + ( contributor.contributions > 1 ? 's' : '' ) ) ) )
);
});

$( '#contributor-list' ).append( items );
$( '#contributor-loader' ).hide();
$( '#contributor-list' ).fadeIn();
});
});
102 changes: 0 additions & 102 deletions community/contributors/contributors-name-mapping.json

This file was deleted.