open_conference_ware 1.0.0.pre3 → 1.0.0.pre4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. data.tar.gz.sig +0 -0
  2. data/.travis.yml +6 -0
  3. data/CHANGES.md +13 -0
  4. data/app/assets/javascripts/open_conference_ware/application.js +2 -0
  5. data/app/assets/javascripts/open_conference_ware/proposals.js +8 -12
  6. data/app/assets/stylesheets/open_conference_ware/application.css +1 -0
  7. data/app/controllers/open_conference_ware/application_controller.rb +8 -6
  8. data/app/controllers/open_conference_ware/authentications_controller.rb +1 -1
  9. data/app/controllers/open_conference_ware/events_controller.rb +5 -1
  10. data/app/controllers/open_conference_ware/proposals_controller.rb +9 -8
  11. data/app/controllers/open_conference_ware/session_types_controller.rb +2 -2
  12. data/app/mixins/open_conference_ware/public_attributes_mixin.rb +1 -1
  13. data/app/models/open_conference_ware/event.rb +7 -4
  14. data/app/models/open_conference_ware/room.rb +4 -0
  15. data/app/models/open_conference_ware/track.rb +3 -0
  16. data/app/models/open_conference_ware/user.rb +20 -10
  17. data/app/views/layouts/open_conference_ware/_header.html.erb +3 -0
  18. data/app/views/layouts/open_conference_ware/application.html.erb +1 -22
  19. data/app/views/open_conference_ware/authentications/_openid.html.erb +24 -10
  20. data/app/views/open_conference_ware/proposals/_admin_controls.html.erb +1 -1
  21. data/app/views/open_conference_ware/proposals/_form.html.erb +2 -2
  22. data/app/views/open_conference_ware/proposals/_list_concise.html.erb +2 -2
  23. data/app/views/open_conference_ware/proposals/_selector_voting.html.erb +52 -0
  24. data/app/views/open_conference_ware/proposals/_sub_list.html.erb +1 -1
  25. data/app/views/open_conference_ware/proposals/_sub_list_for_kind.html.erb +1 -1
  26. data/app/views/open_conference_ware/proposals/create.html.erb +2 -25
  27. data/app/views/open_conference_ware/proposals/show.html.erb +1 -53
  28. data/app/views/open_conference_ware/proposals/stats.html.erb +1 -1
  29. data/app/views/open_conference_ware/selector_votes/index.html.erb +3 -1
  30. data/app/views/open_conference_ware/tracks/_form.html.erb +2 -2
  31. data/app/views/open_conference_ware/users/_account_box.html.erb +1 -1
  32. data/config/routes.rb +1 -1
  33. data/gem-public_cert.pem +20 -20
  34. data/lib/open_conference_ware/version.rb +1 -1
  35. data/lib/tasks/export.rake +1 -1
  36. data/open_conference_ware.gemspec +7 -7
  37. data/spec/controllers/open_conference_ware/proposals_controller_spec.rb +1 -1
  38. data/util/README.md +3 -0
  39. data/util/assign_rooms.rb +40 -0
  40. data/util/seed_schedule.rb +2 -2
  41. data/util/user_favorites_contention_report.rb +2 -2
  42. data/vendor/assets/images/openid-selector/openid-providers-en.png +0 -0
  43. data/vendor/assets/javascripts/openid-selector/openid-en.js +61 -0
  44. data/vendor/assets/javascripts/openid-selector/openid-jquery.js +201 -0
  45. data/vendor/assets/stylesheets/openid-selector/openid.css.scss +79 -0
  46. metadata +55 -61
  47. metadata.gz.sig +0 -0
  48. data/vendor/assets/images/idselector/aol.ico +0 -0
  49. data/vendor/assets/images/idselector/arrow.gif +0 -0
  50. data/vendor/assets/images/idselector/arrow_white_back.png +0 -0
  51. data/vendor/assets/images/idselector/arrow_white_forward.png +0 -0
  52. data/vendor/assets/images/idselector/blogger.ico +0 -0
  53. data/vendor/assets/images/idselector/claimid.ico +0 -0
  54. data/vendor/assets/images/idselector/flickr.ico +0 -0
  55. data/vendor/assets/images/idselector/google.ico +0 -0
  56. data/vendor/assets/images/idselector/lj.ico +0 -0
  57. data/vendor/assets/images/idselector/myopenid.ico +0 -0
  58. data/vendor/assets/images/idselector/openid.ico +0 -0
  59. data/vendor/assets/images/idselector/technorati.ico +0 -0
  60. data/vendor/assets/images/idselector/verisign.ico +0 -0
  61. data/vendor/assets/images/idselector/vidoop2.ico +0 -0
  62. data/vendor/assets/images/idselector/vox.ico +0 -0
  63. data/vendor/assets/images/idselector/yahoo.ico +0 -0
@@ -1,6 +1,6 @@
1
1
  # Prepare
2
- event = Event.find_by_slug '2011'
3
- proposals = event.proposals.confirmed
2
+ event = OpenConferenceWare::Event.find_by_slug '2014'
3
+ proposals = event.proposals.accepted
4
4
 
5
5
  # Setup data structures
6
6
  proposal_id_pairs_with_shared_favorites = proposals.inject([]) {|s,a| proposals.each {|b| s << [a.id, b.id, (a.user_favorites.map(&:user_id) & b.user_favorites.map(&:user_id)).length] }; s}
@@ -0,0 +1,61 @@
1
+ /*
2
+ Simple OpenID Plugin
3
+ http://code.google.com/p/openid-selector/
4
+
5
+ This code is licensed under the New BSD License.
6
+ */
7
+
8
+ var providers_large = {
9
+ google: {
10
+ name : 'Google',
11
+ url : 'https://www.google.com/accounts/o8/id'
12
+ },
13
+ yahoo : {
14
+ name : 'Yahoo',
15
+ url : 'http://me.yahoo.com/'
16
+ },
17
+ openid : {
18
+ name : 'OpenID',
19
+ label : 'Enter your OpenID.',
20
+ url : null
21
+ }
22
+ };
23
+
24
+ var providers_small = {
25
+ livejournal : {
26
+ name : 'LiveJournal',
27
+ label : 'Enter your Livejournal username.',
28
+ url : 'http://{username}.livejournal.com/'
29
+ },
30
+ flickr : {
31
+ name: 'Flickr',
32
+ label: 'Enter your Flickr username.',
33
+ url: 'http://flickr.com/{username}/'
34
+ },
35
+ wordpress: {
36
+ name : 'Wordpress',
37
+ label : 'Enter your Wordpress.com username.',
38
+ url : 'http://{username}.wordpress.com/'
39
+ },
40
+ blogger : {
41
+ name : 'Blogger',
42
+ label : 'Your Blogger account',
43
+ url : 'http://{username}.blogspot.com/'
44
+ },
45
+ launchpad : {
46
+ name: 'Launchpad',
47
+ label: 'Your Launchpad username',
48
+ url: 'https://launchpad.net/~{username}'
49
+ },
50
+ aol : {
51
+ name : 'AOL',
52
+ label : 'Enter your AOL screenname.',
53
+ url : 'http://openid.aol.com/{username}'
54
+ },
55
+ };
56
+
57
+ openid.locale = 'en';
58
+ openid.sprite = 'en'; // reused in german& japan localization
59
+ openid.demo_text = 'In client demo mode. Normally would have submitted OpenID:';
60
+ openid.signin_text = 'Sign In';
61
+ openid.image_title = 'log in with {provider}';
@@ -0,0 +1,201 @@
1
+ /*
2
+ Simple OpenID Plugin
3
+ http://code.google.com/p/openid-selector/
4
+
5
+ This code is licensed under the New BSD License.
6
+ */
7
+
8
+ var providers;
9
+ var openid;
10
+ (function ($) {
11
+ openid = {
12
+ version : '1.3', // version constant
13
+ demo : false,
14
+ demo_text : null,
15
+ cookie_expires : 6 * 30, // 6 months.
16
+ cookie_name : 'openid_provider',
17
+ cookie_path : '/',
18
+
19
+ img_path : 'images/',
20
+ locale : null, // is set in openid-<locale>.js
21
+ sprite : null, // usually equals to locale, is set in
22
+ // openid-<locale>.js
23
+ signin_text : null, // text on submit button on the form
24
+ all_small : false, // output large providers w/ small icons
25
+ no_sprite : false, // don't use sprite image
26
+ image_title : '{provider}', // for image title
27
+
28
+ input_id : null,
29
+ provider_url : null,
30
+ provider_id : null,
31
+
32
+ /**
33
+ * Class constructor
34
+ *
35
+ * @return {Void}
36
+ */
37
+ init : function(input_id) {
38
+ providers = $.extend({}, providers_large, providers_small);
39
+ var openid_btns = $('#openid_btns');
40
+ this.input_id = input_id;
41
+ $('#openid_choice').show();
42
+ $('#openid_input_area').empty();
43
+ var i = 0;
44
+ // add box for each provider
45
+ for (id in providers_large) {
46
+ box = this.getBoxHTML(id, providers_large[id], (this.all_small ? 'small' : 'large'), i++);
47
+ openid_btns.append(box);
48
+ }
49
+ if (providers_small) {
50
+ openid_btns.append('<br/>');
51
+ for (id in providers_small) {
52
+ box = this.getBoxHTML(id, providers_small[id], 'small', i++);
53
+ openid_btns.append(box);
54
+ }
55
+ }
56
+ $('#openid_form').submit(this.submit);
57
+ var box_id = this.readCookie();
58
+ if (box_id) {
59
+ this.signin(box_id, true);
60
+ }
61
+ },
62
+
63
+ /**
64
+ * @return {String}
65
+ */
66
+ getBoxHTML : function(box_id, provider, box_size, index) {
67
+ if (this.no_sprite) {
68
+ var image_ext = box_size == 'small' ? '.ico.gif' : '.gif';
69
+ return '<a title="' + this.image_title.replace('{provider}', provider["name"]) + '" href="javascript:openid.signin(\'' + box_id + '\');"'
70
+ + ' style="background: #FFF url(' + this.img_path + '../images.' + box_size + '/' + box_id + image_ext + ') no-repeat center center" '
71
+ + 'class="' + box_id + ' openid_' + box_size + '_btn"></a>';
72
+ }
73
+ var x = box_size == 'small' ? -index * 24 : -index * 100;
74
+ var y = box_size == 'small' ? -60 : 0;
75
+ return '<a title="' + this.image_title.replace('{provider}', provider["name"]) + '" href="javascript:openid.signin(\'' + box_id + '\');"'
76
+ + ' style="background: #FFF url(' + this.img_path + 'openid-providers-' + this.sprite + '.png); background-position: ' + x + 'px ' + y + 'px" '
77
+ + 'class="' + box_id + ' openid_' + box_size + '_btn openid_btn"></a>';
78
+ },
79
+
80
+ /**
81
+ * Provider image click
82
+ *
83
+ * @return {Void}
84
+ */
85
+ signin : function(box_id, onload) {
86
+ var provider = providers[box_id];
87
+ if (!provider) {
88
+ return;
89
+ }
90
+ this.highlight(box_id);
91
+ this.setCookie(box_id);
92
+ this.provider_id = box_id;
93
+ this.provider_url = provider['url'];
94
+ // prompt user for input?
95
+ if (provider['label']) {
96
+ this.useInputBox(provider);
97
+ } else {
98
+ $('#openid_input_area').empty();
99
+ if (!onload) {
100
+ $('#openid_form').submit();
101
+ }
102
+ }
103
+ },
104
+
105
+ /**
106
+ * Sign-in button click
107
+ *
108
+ * @return {Boolean}
109
+ */
110
+ submit : function() {
111
+ var url = openid.provider_url;
112
+ if (url) {
113
+ url = url.replace('{username}', $('#openid_username').val());
114
+ openid.setOpenIdUrl(url);
115
+ }
116
+ if (openid.demo) {
117
+ alert(openid.demo_text + "\r\n" + document.getElementById(openid.input_id).value);
118
+ return false;
119
+ }
120
+ if (url.indexOf("javascript:") == 0) {
121
+ url = url.substr("javascript:".length);
122
+ eval(url);
123
+ return false;
124
+ }
125
+ return true;
126
+ },
127
+
128
+ /**
129
+ * @return {Void}
130
+ */
131
+ setOpenIdUrl : function(url) {
132
+ var hidden = document.getElementById(this.input_id);
133
+ if (hidden != null) {
134
+ hidden.value = url;
135
+ } else {
136
+ $('#openid_form').append('<input type="hidden" id="' + this.input_id + '" name="' + this.input_id + '" value="' + url + '"/>');
137
+ }
138
+ },
139
+
140
+ /**
141
+ * @return {Void}
142
+ */
143
+ highlight : function(box_id) {
144
+ // remove previous highlight.
145
+ var highlight = $('#openid_highlight');
146
+ if (highlight) {
147
+ highlight.replaceWith($('#openid_highlight a')[0]);
148
+ }
149
+ // add new highlight.
150
+ $('.' + box_id).wrap('<div id="openid_highlight"></div>');
151
+ },
152
+
153
+ setCookie : function(value) {
154
+ var date = new Date();
155
+ date.setTime(date.getTime() + (this.cookie_expires * 24 * 60 * 60 * 1000));
156
+ var expires = "; expires=" + date.toGMTString();
157
+ document.cookie = this.cookie_name + "=" + value + expires + "; path=" + this.cookie_path;
158
+ },
159
+
160
+ readCookie : function() {
161
+ var nameEQ = this.cookie_name + "=";
162
+ var ca = document.cookie.split(';');
163
+ for ( var i = 0; i < ca.length; i++) {
164
+ var c = ca[i];
165
+ while (c.charAt(0) == ' ')
166
+ c = c.substring(1, c.length);
167
+ if (c.indexOf(nameEQ) == 0)
168
+ return c.substring(nameEQ.length, c.length);
169
+ }
170
+ return null;
171
+ },
172
+
173
+ /**
174
+ * @return {Void}
175
+ */
176
+ useInputBox : function(provider) {
177
+ var input_area = $('#openid_input_area');
178
+ var html = '';
179
+ var id = 'openid_username';
180
+ var value = '';
181
+ var label = provider['label'];
182
+ var style = '';
183
+ if (label) {
184
+ html = '<p>' + label + '</p>';
185
+ }
186
+ if (provider['name'] == 'OpenID') {
187
+ id = this.input_id;
188
+ value = 'http://';
189
+ }
190
+ html += '<input id="' + id + '" type="text" style="' + style + '" name="' + id + '" value="' + value + '" class="openid-input form-control" />'
191
+ + '<input id="openid_submit" type="submit" value="' + this.signin_text + '" class="btn btn-default" />';
192
+ input_area.empty();
193
+ input_area.append(html);
194
+ $('#' + id).focus();
195
+ },
196
+
197
+ setDemoMode : function(demoMode) {
198
+ this.demo = demoMode;
199
+ }
200
+ };
201
+ })(jQuery);
@@ -0,0 +1,79 @@
1
+ /*
2
+ Simple OpenID Plugin
3
+ http://code.google.com/p/openid-selector/
4
+
5
+ This code is licensed under the New BSD License.
6
+ */
7
+
8
+ #openid_form {
9
+ width: 580px;
10
+ }
11
+
12
+ #openid_form legend {
13
+ font-weight: bold;
14
+ }
15
+
16
+ #openid_choice {
17
+ display: none;
18
+ }
19
+
20
+ #openid_input_area {
21
+ clear: both;
22
+ padding: 10px;
23
+ }
24
+
25
+ #openid_btns, #openid_btns br {
26
+ clear: both;
27
+ }
28
+
29
+ #openid_highlight {
30
+ padding: 3px;
31
+ background-color: #FFFCC9;
32
+ float: left;
33
+ }
34
+
35
+ .openid_btn {
36
+ background-image: image-url('openid-selector/openid-providers-en.png') !important;
37
+ }
38
+
39
+ .openid_large_btn {
40
+ width: 100px;
41
+ height: 60px;
42
+ /* fix for IE 6 only: http://en.wikipedia.org/wiki/CSS_filter#Underscore_hack */
43
+ _width: 102px;
44
+ _height: 62px;
45
+
46
+ border: 1px solid #DDD;
47
+ margin: 3px;
48
+ float: left;
49
+ }
50
+
51
+ .openid_small_btn {
52
+ width: 24px;
53
+ height: 24px;
54
+ /* fix for IE 6 only: http://en.wikipedia.org/wiki/CSS_filter#Underscore_hack */
55
+ _width: 26px;
56
+ _height: 26px;
57
+
58
+ border: 1px solid #DDD;
59
+ margin: 3px;
60
+ float: left;
61
+ }
62
+
63
+ a.openid_large_btn:focus {
64
+ outline: none;
65
+ }
66
+
67
+ a.openid_large_btn:focus {
68
+ -moz-outline-style: none;
69
+ }
70
+
71
+ .openid_selected {
72
+ border: 4px solid #DDD;
73
+ }
74
+
75
+ .openid-input {
76
+ width: 300px;
77
+ display: inline;
78
+ margin-right: .5em;
79
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: open_conference_ware
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre3
4
+ version: 1.0.0.pre4
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -14,36 +14,36 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain:
16
16
  - !binary |-
17
- LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURrakNDQW5xZ0F3SUJB
18
- Z0lCQVRBTkJna3Foa2lHOXcwQkFRVUZBREJITVF3d0NnWURWUVFEREFOblpX
19
- MHgKSWpBZ0Jnb0praWFKay9Jc1pBRVpGaEp2Y0dWdVkyOXVabVZ5Wlc1alpY
20
- ZGhjbVV4RXpBUkJnb0praWFKay9JcwpaQUVaRmdOdmNtY3dIaGNOTVRNeE1q
21
- RXlNREl5TmpNNVdoY05NVFF4TWpFeU1ESXlOak01V2pCSE1Rd3dDZ1lEClZR
22
- UUREQU5uWlcweElqQWdCZ29Ka2lhSmsvSXNaQUVaRmhKdmNHVnVZMjl1Wm1W
23
- eVpXNWpaWGRoY21VeEV6QVIKQmdvSmtpYUprL0lzWkFFWkZnTnZjbWN3Z2dF
24
- aU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQgpBUUNyS0Nq
25
- TXBhcm5JTlV2cER1aHdJVWZmZFRyQ21pcVNic3RyVUt6NThtc2hZV3FoSk5i
26
- cThMTEp2ZnhXK05wCkRXTk1qNlVnUVRISUl2OXIzcVNiK0ZwdGxlVHdoRkNI
27
- a3ltZGVpZTZmQVJpQjN0N2V5S1VYT3FrS0FDckZQQzEKeVRzQkloTmpuVklX
28
- Y2V1d3NrZEg2a3E5ZDBqZTlNVXkzR0gyN1U0eDRVd3ZaK3poV0Z5RWJheDdz
29
- SXdZbVRrRwppRjB2ajFORjRGWmNHSk1KOFFhUXoyWTBlRE5jRUk5SVNtdWRk
30
- TlU2WUthWE9GY0JyYUloMUlXNlhOWGdQZUFoCjU5TnJTWVVmWkdNdHBYblRz
31
- R3BEYkJORitRRHo4V05KS0xCK0VwWW1idU1aeHJRU0JLR3c3RENmNEtiWmxL
32
- QkYKaERNckFKYkhNY0NxQjk4ejRMYnNHYjlOQWdNQkFBR2pnWWd3Z1lVd0NR
33
- WURWUjBUQkFJd0FEQUxCZ05WSFE4RQpCQU1DQkxBd0hRWURWUjBPQkJZRUZP
34
- SlFlY0laeTE5YUdHL05DQXpVS21VdkVEemhNQ1VHQTFVZEVRUWVNQnlCCkdt
35
- ZGxiVUJ2Y0dWdVkyOXVabVZ5Wlc1alpYZGhjbVV1YjNKbk1DVUdBMVVkRWdR
36
- ZU1CeUJHbWRsYlVCdmNHVnUKWTI5dVptVnlaVzVqWlhkaGNtVXViM0puTUEw
37
- R0NTcUdTSWIzRFFFQkJRVUFBNElCQVFCaUt2YnhuSUJ6emJzVgpyeXg4SnBN
38
- MXBESzlET3c4MEdENEtxL0xvS2VKWXE1VnRWb21ISGNFWDBSaDd4QVhIdk1R
39
- LzhDU2t1a0lyTC9UCnNiWVVac29rbTVPdEVnTDJ2WDdmb3Y0MVV0akZlS2Jy
40
- SkttY1gxNFBpREZUOENIRFVvRWhDVThFeE5QTmN5c2EKak1jaWJTb1hyY2VO
41
- SFNXNHJpY1ljZ2FHbEFHZlpNNG10Ni9UNU9FU1VuZ3BxTUpoQmYxdjIweWcv
42
- amRtMGFBbQptVDYyT2JUVHQxUlpJU1ZFOU4yUGwrSUZGclVIYkhvMm5md1pP
43
- YjFvOVpmLzMrb3VkSjhYM0I3bWgwUzRwYU9rClRSeUprSllTVWtnZG5BRk1J
44
- a1k2Ky9OK1RINWdBMFB4dkJzUTJYeFRvbm9XSnJRdEZra2dkRXVZck1RU1dY
45
- eWYKMUMzdFdKSjkKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
46
- date: 2013-12-17 00:00:00.000000000 Z
17
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURqakNDQW5hZ0F3SUJB
18
+ Z0lCQVRBTkJna3Foa2lHOXcwQkFRVUZBREJHTVEwd0N3WURWUVFEREFSeVpX
19
+ bGsKTVNBd0hnWUtDWkltaVpQeUxHUUJHUllRYjNCbGJuTnZkWEpqWldKeWFX
20
+ Um5aVEVUTUJFR0NnbVNKb21UOGl4awpBUmtXQTI5eVp6QWVGdzB4TlRBeE1q
21
+ a3dNVEU0TkRSYUZ3MHhOakF4TWprd01URTRORFJhTUVZeERUQUxCZ05WCkJB
22
+ TU1CSEpsYVdReElEQWVCZ29Ka2lhSmsvSXNaQUVaRmhCdmNHVnVjMjkxY21O
23
+ bFluSnBaR2RsTVJNd0VRWUsKQ1pJbWlaUHlMR1FCR1JZRGIzSm5NSUlCSWpB
24
+ TkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQQo1MVhoOU5o
25
+ Y3RXUXovZUpYaktoUW1BL3NjV2pRVENwRzBWL29TbkRFNmlFa0Zab2xJdjBX
26
+ TmRqVlNBOTdrVGdyCitUNmhjcFUvdUhZdGFNZnN2NE55dWJJbURGdnRVRVJo
27
+ T3RrbmVXc2pacnpyYW5kanBQcExZYzlJanlmTFJERlUKNk1jSUI3dFdLa1BY
28
+ WGp5VTBPeFM2Nm1Vdk5Yc21QQ2RTWFk4NFJVY3pzRjRQcWhYeEJpUEhoNHdV
29
+ bENQMlErcwpYMVhNUlp3UjNQL1VodjZCekVDMC9xWXhuQ1lWelRZV28yb2Ro
30
+ Y1JiVmcwTjYzRlpGbFIyekNaVmplSUV3NWxpCkxvV0N2WU9iR0p6WVBGK0dC
31
+ UFUyMXYzNkJ5RWNpalUyb0tQaG13aHRETTFmdXExSnNobTR5dVBsSndjcndK
32
+ b3IKN1VyMjZJRWF1K1d5bHpmczRPK3dZUUlEQVFBQm80R0dNSUdETUFrR0Ex
33
+ VWRFd1FDTUFBd0N3WURWUjBQQkFRRApBZ1N3TUIwR0ExVWREZ1FXQkJTMGxR
34
+ Q2RMUUw2eWE5VHAxV1ROem1LVCs4MndEQWtCZ05WSFJFRUhUQWJnUmx5ClpX
35
+ bGtRRzl3Wlc1emIzVnlZMlZpY21sa1oyVXViM0puTUNRR0ExVWRFZ1FkTUJ1
36
+ QkdYSmxhV1JBYjNCbGJuTnYKZFhKalpXSnlhV1JuWlM1dmNtY3dEUVlKS29a
37
+ SWh2Y05BUUVGQlFBRGdnRUJBRVhRWGFGbW90aUE1blJidnpGOApBQjJqVGVu
38
+ ck1nMlo5enhxcWRJOEY0a2t6YzlVeWtJR1gycWN5aWpWSFJTTnBaS1dQdml5
39
+ WHczL1ltVExjWEltCnB2YnhMeDNWU0phdjlWVk9NRk9SMCtXRzY1bTNyeE1H
40
+ U1dwcjVEOWdRcVlMYkVqSC9sUmtIY0xldlhMNml5WFMKNXRlaDNRVlFlbWx6
41
+ VjdDVHpqc1oxQVV2bjRTNVlyQ3l5Mk5yYTRYMVd6Zll6RXZkNlZDMUkvYTRt
42
+ RHd0OEVYMwo3ZlA5WEdFbmtXTlFPZ1dZNm41MXp5d3pTL0lwUmtTVnpRQVNj
43
+ Q1JBZTJ5RElGcnJreGNuOG9oSDg4Yk5IeFNYCkplMkFXYmp0dUVjdXJYSG52
44
+ UmtUa2VrdlkzR24vWU9oS0VBMGdJUlV6anVjT3ovL2pkZFRlaEJXT2Z6SXdZ
45
+ bEEKQUZnPQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
46
+ date: 2015-01-29 00:00:00.000000000 Z
47
47
  dependencies:
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: rails
@@ -84,7 +84,7 @@ dependencies:
84
84
  requirements:
85
85
  - - ~>
86
86
  - !ruby/object:Gem::Version
87
- version: 1.1.4
87
+ version: 1.2.0
88
88
  type: :runtime
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
@@ -92,7 +92,7 @@ dependencies:
92
92
  requirements:
93
93
  - - ~>
94
94
  - !ruby/object:Gem::Version
95
- version: 1.1.4
95
+ version: 1.2.0
96
96
  - !ruby/object:Gem::Dependency
97
97
  name: hashery
98
98
  requirement: !ruby/object:Gem::Requirement
@@ -132,7 +132,7 @@ dependencies:
132
132
  requirements:
133
133
  - - ~>
134
134
  - !ruby/object:Gem::Version
135
- version: 3.0.0
135
+ version: 3.1.0
136
136
  type: :runtime
137
137
  prerelease: false
138
138
  version_requirements: !ruby/object:Gem::Requirement
@@ -140,7 +140,7 @@ dependencies:
140
140
  requirements:
141
141
  - - ~>
142
142
  - !ruby/object:Gem::Version
143
- version: 3.0.0
143
+ version: 3.1.0
144
144
  - !ruby/object:Gem::Dependency
145
145
  name: acts-as-taggable-on
146
146
  requirement: !ruby/object:Gem::Requirement
@@ -148,7 +148,7 @@ dependencies:
148
148
  requirements:
149
149
  - - ~>
150
150
  - !ruby/object:Gem::Version
151
- version: 2.4.1
151
+ version: 3.0.0
152
152
  type: :runtime
153
153
  prerelease: false
154
154
  version_requirements: !ruby/object:Gem::Requirement
@@ -156,7 +156,7 @@ dependencies:
156
156
  requirements:
157
157
  - - ~>
158
158
  - !ruby/object:Gem::Version
159
- version: 2.4.1
159
+ version: 3.0.0
160
160
  - !ruby/object:Gem::Dependency
161
161
  name: color
162
162
  requirement: !ruby/object:Gem::Requirement
@@ -164,7 +164,7 @@ dependencies:
164
164
  requirements:
165
165
  - - ~>
166
166
  - !ruby/object:Gem::Version
167
- version: 1.4.2
167
+ version: 1.5.1
168
168
  type: :runtime
169
169
  prerelease: false
170
170
  version_requirements: !ruby/object:Gem::Requirement
@@ -172,7 +172,7 @@ dependencies:
172
172
  requirements:
173
173
  - - ~>
174
174
  - !ruby/object:Gem::Version
175
- version: 1.4.2
175
+ version: 1.5.1
176
176
  - !ruby/object:Gem::Dependency
177
177
  name: comma
178
178
  requirement: !ruby/object:Gem::Requirement
@@ -212,7 +212,7 @@ dependencies:
212
212
  requirements:
213
213
  - - ~>
214
214
  - !ruby/object:Gem::Version
215
- version: 3.5.2
215
+ version: 4.1.0
216
216
  type: :runtime
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
@@ -220,7 +220,7 @@ dependencies:
220
220
  requirements:
221
221
  - - ~>
222
222
  - !ruby/object:Gem::Version
223
- version: 3.5.2
223
+ version: 4.1.0
224
224
  - !ruby/object:Gem::Dependency
225
225
  name: vpim
226
226
  requirement: !ruby/object:Gem::Requirement
@@ -308,7 +308,7 @@ dependencies:
308
308
  requirements:
309
309
  - - ~>
310
310
  - !ruby/object:Gem::Version
311
- version: 3.0.0
311
+ version: 3.1.0
312
312
  type: :runtime
313
313
  prerelease: false
314
314
  version_requirements: !ruby/object:Gem::Requirement
@@ -316,7 +316,7 @@ dependencies:
316
316
  requirements:
317
317
  - - ~>
318
318
  - !ruby/object:Gem::Version
319
- version: 3.0.0
319
+ version: 3.1.0
320
320
  - !ruby/object:Gem::Dependency
321
321
  name: sass-rails
322
322
  requirement: !ruby/object:Gem::Requirement
@@ -340,7 +340,7 @@ dependencies:
340
340
  requirements:
341
341
  - - ~>
342
342
  - !ruby/object:Gem::Version
343
- version: 2.3.0
343
+ version: 2.4.0
344
344
  type: :runtime
345
345
  prerelease: false
346
346
  version_requirements: !ruby/object:Gem::Requirement
@@ -348,7 +348,7 @@ dependencies:
348
348
  requirements:
349
349
  - - ~>
350
350
  - !ruby/object:Gem::Version
351
- version: 2.3.0
351
+ version: 2.4.0
352
352
  - !ruby/object:Gem::Dependency
353
353
  name: sqlite3
354
354
  requirement: !ruby/object:Gem::Requirement
@@ -684,6 +684,7 @@ files:
684
684
  - app/views/open_conference_ware/proposals/_schedule_block.html.erb
685
685
  - app/views/open_conference_ware/proposals/_schedule_control.html.erb
686
686
  - app/views/open_conference_ware/proposals/_search_speakers.html.erb
687
+ - app/views/open_conference_ware/proposals/_selector_voting.html.erb
687
688
  - app/views/open_conference_ware/proposals/_sub_list.html.erb
688
689
  - app/views/open_conference_ware/proposals/_sub_list_for_kind.html.erb
689
690
  - app/views/open_conference_ware/proposals/_transition_control.html.erb
@@ -922,7 +923,9 @@ files:
922
923
  - spec/views/open_conference_ware/tracks/show.html.erb_spec.rb
923
924
  - spec/views/open_conference_ware/user_favorites/index.html.erb_spec.rb
924
925
  - spec/views/open_conference_ware/users/index_spec.rb
926
+ - util/README.md
925
927
  - util/add_id3_tags_to_mp3.rb
928
+ - util/assign_rooms.rb
926
929
  - util/schedule_demo.rb
927
930
  - util/seed_schedule.rb
928
931
  - util/sessions_to_lanyrd.rb
@@ -937,22 +940,7 @@ files:
937
940
  - vendor/assets/images/farbtastic/marker.png
938
941
  - vendor/assets/images/farbtastic/mask.png
939
942
  - vendor/assets/images/farbtastic/wheel.png
940
- - vendor/assets/images/idselector/aol.ico
941
- - vendor/assets/images/idselector/arrow.gif
942
- - vendor/assets/images/idselector/arrow_white_back.png
943
- - vendor/assets/images/idselector/arrow_white_forward.png
944
- - vendor/assets/images/idselector/blogger.ico
945
- - vendor/assets/images/idselector/claimid.ico
946
- - vendor/assets/images/idselector/flickr.ico
947
- - vendor/assets/images/idselector/google.ico
948
- - vendor/assets/images/idselector/lj.ico
949
- - vendor/assets/images/idselector/myopenid.ico
950
- - vendor/assets/images/idselector/openid.ico
951
- - vendor/assets/images/idselector/technorati.ico
952
- - vendor/assets/images/idselector/verisign.ico
953
- - vendor/assets/images/idselector/vidoop2.ico
954
- - vendor/assets/images/idselector/vox.ico
955
- - vendor/assets/images/idselector/yahoo.ico
943
+ - vendor/assets/images/openid-selector/openid-providers-en.png
956
944
  - vendor/assets/javascripts/audiojs/audio.min.js
957
945
  - vendor/assets/javascripts/audiojs/audiojs.swf
958
946
  - vendor/assets/javascripts/audiojs/player-graphics.gif
@@ -964,10 +952,13 @@ files:
964
952
  - vendor/assets/javascripts/jquery-migrate-1.2.1.js
965
953
  - vendor/assets/javascripts/jquery.localScroll.js
966
954
  - vendor/assets/javascripts/jquery.scrollTo.js
955
+ - vendor/assets/javascripts/openid-selector/openid-en.js
956
+ - vendor/assets/javascripts/openid-selector/openid-jquery.js
967
957
  - vendor/assets/javascripts/respond.min.js
968
958
  - vendor/assets/stylesheets/bootstrap-theme.css
969
959
  - vendor/assets/stylesheets/bootstrap.css
970
960
  - vendor/assets/stylesheets/farbtastic.css.scss
961
+ - vendor/assets/stylesheets/openid-selector/openid.css.scss
971
962
  - vendor/assets/stylesheets/persona-buttons.css
972
963
  - vendor/assets/stylesheets/reset-fonts-grids.css
973
964
  homepage: http://openconferenceware.org
@@ -982,6 +973,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
982
973
  - - ! '>='
983
974
  - !ruby/object:Gem::Version
984
975
  version: '0'
976
+ segments:
977
+ - 0
978
+ hash: 3993359899607377106
985
979
  required_rubygems_version: !ruby/object:Gem::Requirement
986
980
  none: false
987
981
  requirements: