Skip to content

Commit 111e711

Browse files
committed
Added the members & friends page
1 parent 6b9c519 commit 111e711

7 files changed

Lines changed: 275 additions & 169 deletions

File tree

_config.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,26 @@ permalink: /posts/:title
44
auto: true
55
rdiscount:
66
extensions: [smart]
7+
8+
## Add yourself as a member of the community below :-)
9+
members:
10+
- name: Kalvir Sandhu
11+
12+
blurb: "A creative developer building things for the web & mobile with Node.js & Ruby. Brit living in Canada building @caliper. Organizer of Vancouver ruby meetup."
13+
twitter: kalv
14+
url: https://caliper.io
15+
- name: Godfrey Chan
16+
17+
blurb: "A web and software developer who is passionate about building innovative, powerful and yet easy-to-use software to help users solve everyday problems."
18+
twitter: ChanCanCode
19+
url: https://caliper.io
20+
- name: Loki Meyburg
21+
22+
blurb: "Building @Medeo. Internet denizen."
23+
twitter: LokiMeyburg
24+
url: https://medeo.ca
25+
- name: Charles Ellery Bergeron
26+
27+
blurb: Web monkey
28+
twitter: CharlesEllery
29+
url: https://medeo.ca

_layouts/layout.html

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
<!-- Loading Flat UI -->
1313
<link href="/css/flat-ui.css" rel="stylesheet">
14+
<link href="/css/vanruby.css" rel="stylesheet">
1415

1516
<link rel="shortcut icon" href="images/favicon.ico">
1617

@@ -27,10 +28,10 @@
2728
<div class="container">
2829
<button type="button" class="btn btn-navbar" data-toggle="collapse" data-target="#nav-collapse-03">
2930
</button>
30-
<a href="#fakelink" class="brand">VanRuby</a>
31+
<a href="/" class="brand">VanRuby</a>
3132
<div class="nav-collapse collapse" id="nav-collapse-03">
3233
<ul class="nav">
33-
<!-- <li><a href="proxy.php?url=https%3A%2F%2Fgithub.com%2F%3Cspan+class%3D"x x-first x-last">#fakelink">Friends</a></li> -->
34+
<li><a href="/friends.html">Members & Friends</a></li>
3435
</ul> <!-- /nav -->
3536
</div><!--/.nav-collapse -->
3637
</div>
@@ -59,16 +60,17 @@
5960
</div>
6061

6162
<div class="span2">
62-
<ul class="bottom-icons pull-right">
63+
<!-- <ul class="bottom-icons pull-right">
6364
<li><a href="#fakelink" class="fui-twitter"></a></li>
64-
</ul>
65+
</ul> -->
6566
</div>
6667
</div>
6768
</div>
6869
</div>
6970

7071

7172
<!-- Mmmm... Javascript.... -->
73+
<script src="js/md5-function.js"></script>
7274
<script src="js/jquery-1.8.3.min.js"></script>
7375
<script src="js/jquery-ui-1.10.3.custom.min.js"></script>
7476
<script src="js/jquery.ui.touch-punch.min.js"></script>

friends.html

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
layout: layout
3+
title: "VanRuby - Vancouver Ruby on Rails Group"
4+
---
5+
6+
<div class="container" style="margin-top: 50px; margin-bottom: 50px;">
7+
<div class="row">
8+
<div class="span12">
9+
10+
<h4>Friends and members</h4>
11+
<p>We hope to curate a list of those dear to our community. Yes, yes, it's super incomplete at the moment - but we're just getting started. <a href="http://www.youtube.com/watch?v=NQ-8IuUkJJc&feature=youtu.be&t=1m45s" target="_blank">The complete list has to be at least three times bigger than this.</a></p>
12+
13+
{% for member in site.members %}
14+
<div class="media well">
15+
<img class="media-object pull-left" data-gravatar-email="{{ member.gravatar }}" src="images/blank-avatar.png">
16+
<div class="media-body">
17+
<strong class="media-heading">{{ member.name }}</strong> <br />
18+
{{ member.blurb }}
19+
<div>
20+
<a href="https://twitter.com/{{ member.twitter }}"><span class="fui-twitter"></span> {{ member.twitter }}</a>
21+
&#183;
22+
<a href="{{ member.url }}"><span class="fui-link"></span> {{ member.url }}</a>
23+
</div>
24+
</div>
25+
</div>
26+
{% endfor %}
27+
28+
29+
30+
</div>
31+
</div>
32+
</div>

images/blank-avatar.png

18.3 KB
Loading

js/application.js

Lines changed: 9 additions & 164 deletions
Original file line numberDiff line numberDiff line change
@@ -1,171 +1,16 @@
1-
// Some general UI pack related JS
2-
// Extend JS String with repeat method
3-
String.prototype.repeat = function(num) {
4-
return new Array(num + 1).join(this);
5-
};
6-
71
(function($) {
82

9-
// Add segments to a slider
10-
$.fn.addSliderSegments = function (amount) {
11-
return this.each(function () {
12-
var segmentGap = 100 / (amount - 1) + "%"
13-
, segment = "<div class='ui-slider-segment' style='margin-left: " + segmentGap + ";'></div>";
14-
$(this).prepend(segment.repeat(amount - 2));
15-
});
16-
};
17-
18-
$(function() {
19-
20-
// Custom Selects
21-
$("select[name='huge']").selectpicker({style: 'btn-huge btn-primary', menuStyle: 'dropdown-inverse'});
22-
$("select[name='large']").selectpicker({style: 'btn-large btn-danger'});
23-
$("select[name='info']").selectpicker({style: 'btn-info'});
24-
$("select[name='small']").selectpicker({style: 'btn-small btn-warning'});
25-
26-
// Tabs
27-
$(".nav-tabs a").on('click', function (e) {
28-
e.preventDefault();
29-
$(this).tab("show");
30-
})
31-
32-
// Tooltips
33-
$("[data-toggle=tooltip]").tooltip("show");
34-
35-
// Tags Input
36-
$(".tagsinput").tagsInput();
37-
38-
// jQuery UI Sliders
39-
var $slider = $("#slider");
40-
$slider.slider({
41-
min: 1,
42-
max: 5,
43-
value: 3,
44-
orientation: "horizontal",
45-
range: "min"
46-
}).addSliderSegments($slider.slider("option").max);
47-
48-
var $slider2 = $("#slider2");
49-
$slider2.slider({
50-
min: 1,
51-
max: 5,
52-
values: [3, 4],
53-
orientation: "horizontal",
54-
range: true
55-
}).addSliderSegments($slider2.slider("option").max);
56-
57-
var $slider3 = $("#slider3")
58-
, slider3ValueMultiplier = 100
59-
, slider3Options;
60-
$slider3.slider({
61-
min: 1,
62-
max: 5,
63-
values: [3, 4],
64-
orientation: "horizontal",
65-
range: true,
66-
slide: function(event, ui) {
67-
$slider3.find(".ui-slider-value:first").text("$" + ui.values[0] * slider3ValueMultiplier).end()
68-
.find(".ui-slider-value:last").text("$" + ui.values[1] * slider3ValueMultiplier);
69-
}
70-
});
71-
slider3Options = $slider3.slider("option");
72-
$slider3.addSliderSegments(slider3Options.max).find(".ui-slider-value:first").text("$" + slider3Options.values[0] * slider3ValueMultiplier).end()
73-
.find(".ui-slider-value:last").text("$" + slider3Options.values[1] * slider3ValueMultiplier);
74-
75-
// Add style class name to a tooltips
76-
$(".tooltip").addClass(function() {
77-
if ($(this).prev().attr("data-tooltip-style")) {
78-
return "tooltip-" + $(this).prev().attr("data-tooltip-style");
79-
}
80-
});
81-
82-
// Placeholders for input/textarea
83-
$("input, textarea").placeholder();
843

85-
// Make pagination demo work
86-
$(".pagination a").on('click', function() {
87-
$(this).parent().siblings("li").removeClass("active").end().addClass("active");
88-
});
4+
// Gravatars
5+
$('img[data-gravatar-email]').each(function(){
6+
// get the email
7+
var email = $(this).attr('data-gravatar-email');
898

90-
$(".btn-group a").on('click', function() {
91-
$(this).siblings().removeClass("active").end().addClass("active");
92-
});
93-
94-
// Disable link clicks to prevent page scrolling
95-
$('a[href="#fakelink""]').on('click', function (e) {
96-
e.preventDefault();
97-
});
98-
99-
// jQuery UI Spinner
100-
$.widget( "ui.customspinner", $.ui.spinner, {
101-
_buttonHtml: function() { // Remove arrows on the buttons
102-
return "" +
103-
"<a class='ui-spinner-button ui-spinner-up ui-corner-tr'>" +
104-
"<span class='ui-icon " + this.options.icons.up + "'></span>" +
105-
"</a>" +
106-
"<a class='ui-spinner-button ui-spinner-down ui-corner-br'>" +
107-
"<span class='ui-icon " + this.options.icons.down + "'></span>" +
108-
"</a>";
109-
}
110-
});
111-
112-
$('#spinner-01').customspinner({
113-
min: -99,
114-
max: 99
115-
}).on('focus', function () {
116-
$(this).closest('.ui-spinner').addClass('focus');
117-
}).on('blur', function () {
118-
$(this).closest('.ui-spinner').removeClass('focus');
119-
});
120-
121-
122-
// Focus state for append/prepend inputs
123-
$('.input-prepend, .input-append').on('focus', 'input', function () {
124-
$(this).closest('.control-group, form').addClass('focus');
125-
}).on('blur', 'input', function () {
126-
$(this).closest('.control-group, form').removeClass('focus');
127-
});
128-
129-
// Table: Toggle all checkboxes
130-
$('.table .toggle-all').on('click', function() {
131-
var ch = $(this).find(':checkbox').prop('checked');
132-
$(this).closest('.table').find('tbody :checkbox').checkbox(!ch ? 'check' : 'uncheck');
133-
});
134-
135-
// Table: Add class row selected
136-
$('.table tbody :checkbox').on('check uncheck toggle', function (e) {
137-
var $this = $(this)
138-
, check = $this.prop('checked')
139-
, toggle = e.type == 'toggle'
140-
, checkboxes = $('.table tbody :checkbox')
141-
, checkAll = checkboxes.length == checkboxes.filter(':checked').length
142-
143-
$this.closest('tr')[check ? 'addClass' : 'removeClass']('selected-row');
144-
if (toggle) $this.closest('.table').find('.toggle-all :checkbox').checkbox(checkAll ? 'check' : 'uncheck');
145-
});
146-
147-
// jQuery UI Datepicker
148-
$('#datepicker-01').datepicker({
149-
showOtherMonths: true,
150-
selectOtherMonths: true,
151-
dateFormat: "d MM, yy",
152-
yearRange: '-1:+1'
153-
}).prev('.btn').on('click', function (e) {
154-
e && e.preventDefault();
155-
$('#datepicker-01').focus();
156-
});
157-
$.extend($.datepicker, {_checkOffset:function(inst,offset,isFixed){return offset}});
158-
159-
// Custom checkboxes
160-
$('[data-toggle="checkbox"]').checkbox();
161-
162-
// Custom radios
163-
$('[data-toggle="radio"]').radio();
9+
// modify the source of the image
10+
if(email != '') {
11+
$(this).attr('src', 'http://www.gravatar.com/avatar/' + md5(email));
12+
}
13+
});
16414

165-
// Switch
166-
$("[data-toggle='switch']").wrap('<div class="switch" />').parent().bootstrapSwitch();
16715

168-
// Stackable tables
169-
$(".table-striped").stacktable({id: "rwd-table"});
170-
});
17116
})(jQuery);

0 commit comments

Comments
 (0)