Skip to content

Commit 8d5b6b9

Browse files
committed
Add voume control closes #2
1 parent a3d107f commit 8d5b6b9

4 files changed

Lines changed: 49 additions & 15 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Listen to music generated by events happening across GitHub
55

66
__Imitation is the sincerest form of flattery.__ - *Oscar Wilde*
77

8-
But seriously, [listen-to-wikipedia](https://github.com/hatnote/listen-to-wikipedia) by [@mahmoud](https://github.com/mahmoud) is the new hotness, and this is a shameless rip off.
8+
But seriously, [listen-to-wikipedia](https://github.com/hatnote/listen-to-wikipedia) by [@mahmoud](https://github.com/mahmoud) is the hotness.
99

1010

1111
Media

app/index.html

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,11 @@
2828
<title>GitHub Audio</title>
2929
<link rel="mask-icon" href="/static/public/images/electric-guitar.svg" color="orange">
3030
<link rel="shortcut icon" type="image/png" href="/static/public/images/favicon.png"/>
31-
<link rel="stylesheet" href="/static/public/css/main.css"/>
3231
<link rel="stylesheet" href="https://cdn.jsdelivr.net/odometer/0.4.7/themes/odometer-theme-default.css" />
32+
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/themes/base/jquery-ui.min.css" />
33+
<link rel="stylesheet" href="/static/public/css/main.css"/>
3334
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
35+
<script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
3436
<script src="//cdnjs.cloudflare.com/ajax/libs/howler/2.0.0/howler.min.js"></script>
3537
<script src="//cdnjs.cloudflare.com/ajax/libs/socket.io/1.4.8/socket.io.min.js"></script>
3638
<script src="//cdn.jsdelivr.net/odometer/0.4.7/odometer.min.js"></script>
@@ -47,6 +49,7 @@
4749
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.7&appId=718063574909410";
4850
fjs.parentNode.insertBefore(js, fjs);
4951
}(document, 'script', 'facebook-jssdk'));</script>
52+
5053
<header>
5154
<h1 class="header-text">
5255
GitHub Audio&nbsp;
@@ -55,14 +58,17 @@ <h1 class="header-text">
5558
<div class="events-remaining">
5659
<span class="events-remaining-value odometer"></span>&nbsp;
5760
<span class="events-remaining-text">events remaining in queue</span>&nbsp;
61+
<div id="volumeSlider"></div>
62+
<!-- <img id="cmdMute" src="/static/public/images/speaker.svg" alt="mute/unmute"/> -->
5863
</div>
59-
<img id="cmdMute" src="/static/public/images/speaker.svg" alt="mute/unmute"/>
6064
</header>
65+
6166
<div id="area">
6267
<div class="online-users-div">
63-
<h2 class="online-users-text"><span class="possibly-text">possibly</span>&nbsp;<span class="odometer online-users-count"></span> people listening</h2>
68+
<h2 class="online-users-text"><span class="odometer online-users-count"></span> people listening</h2>
6469
</div>
6570
</div>
71+
6672
<footer>
6773
<div class="footer-left-text-block">
6874
this project is open source, you can view it on <a href="https://github.com/debugger22/github-audio" target="_blank">GitHub</a><br/>

app/public/css/main.css

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ header{
8181
.events-remaining{
8282
float:right;
8383
margin-right: 5%;
84+
margin-top: 30px;
8485
}
8586

8687
.events-remaining-text, .events-remaining-value{
@@ -98,6 +99,22 @@ header{
9899
right: 40px;
99100
}
100101

102+
#volumeSlider{
103+
cursor:pointer;
104+
position: absolute;
105+
top: 30px;
106+
right: 40px;
107+
width: 100px;
108+
opacity: 0.3;
109+
border-radius: 5px;
110+
}
111+
112+
#volumeSlider:hover{
113+
cursor:pointer;
114+
opacity: 0.9;
115+
}
116+
117+
101118
#area{
102119
width: 100%;
103120
position: relative;
@@ -122,11 +139,13 @@ circle {
122139

123140
.online-users-div{
124141
text-align: center;
125-
position: fixed;
126-
bottom: 20px;
142+
position: absolute;
143+
bottom: 60px;
127144
width: 100%;
128145
margin: 0 auto;
146+
font-size: 0.9em;
129147
z-index: 1;
148+
opacity: 0.5;
130149
}
131150

132151
.online-users-text{
@@ -135,10 +154,6 @@ circle {
135154
color: #E0E0E0;
136155
}
137156

138-
.possibly-text{
139-
visibility: false;
140-
}
141-
142157
footer{
143158
width: 100%;
144159
height: 200px;
@@ -180,14 +195,15 @@ footer{
180195

181196
.footer-right-text-block{
182197
width: 100%;
183-
margin: 0 auto;
198+
margin-left: 0 auto;
184199
line-height:1.3em;
185200
float: left;
186201
text-align: left;
187202
margin-top: 20px;
188203
}
189204

190205
.online-users-div{
206+
margin-left: 20px;
191207
text-align: left;
192208
}
193209

app/public/js/main.js

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ var drawingArea;
55
var width;
66
var height;
77
var mute = false;
8+
var volume = 0.6;
89

910
var scale_factor = 6,
1011
note_overlap = 2,
@@ -50,7 +51,6 @@ socket.on('connect', function(){
5051
$('.offline-text').css('visibility', 'hidden');
5152
$('.events-remaining-text').css('visibility', 'hidden');
5253
$('.events-remaining-value').css('visibility', 'hidden');
53-
$('.possibly-text').css('visibility', 'hidden');
5454
}
5555
});
5656

@@ -61,7 +61,6 @@ socket.on('disconnect', function(){
6161
$('.offline-text').css('visibility', 'visible');
6262
$('.events-remaining-text').css('visibility', 'visible');
6363
$('.events-remaining-value').css('visibility', 'visible');
64-
$('.possibly-text').css('visibility', 'visible');
6564

6665
}
6766
});
@@ -73,7 +72,6 @@ socket.on('error', function(){
7372
$('.offline-text').css('visibility', 'visible');
7473
$('.events-remaining-text').css('visibility', 'visible');
7574
$('.events-remaining-value').css('visibility', 'visible');
76-
$('.possibly-text').css('visibility', 'visible');
7775
}
7876
});
7977

@@ -97,6 +95,20 @@ $(function(){
9795
$('svg').css('background-color', svg_background_color_online);
9896
$('header').css('background-color', svg_background_color_online);
9997
$('svg text').css('color', svg_text_color);
98+
$('#volumeSlider').slider({
99+
'max': 100,
100+
'min': 0,
101+
'value': volume*100,
102+
'slide' : function(event, ui){
103+
volume = ui.value/100.0;
104+
Howler.volume(volume);
105+
},
106+
'change' : function(event, ui){
107+
volume = ui.value/100.0;
108+
Howler.volume(volume);
109+
}
110+
});
111+
100112

101113
// Main drawing area
102114
svg = d3.select("#area").append("svg");
@@ -167,7 +179,7 @@ $(function(){
167179
$('#cmdMute').attr('src', '/static/public/images/speaker-muted.svg');
168180
}
169181
});
170-
Howler.volume(0.6);
182+
Howler.volume(volume);
171183

172184
});
173185

0 commit comments

Comments
 (0)