mirror of
https://github.com/KevinMidboe/zoff.git
synced 2025-12-08 20:48:48 +00:00
Display and hide on frontpage only not working
This commit is contained in:
@@ -1,10 +1,10 @@
|
|||||||
var adminTogg = false;
|
var adminTogg = false;
|
||||||
var pass_corr = "";
|
var pass_corr = "";
|
||||||
|
|
||||||
socket.on("success_settings", function()
|
socket.on("success_settings", function(msg)
|
||||||
{
|
{
|
||||||
pass_corr = "correct";
|
pass_corr = "correct";
|
||||||
document.getElementById("sBar").innerHTML = "Successfully applied settings.";
|
document.getElementById("sBar").innerHTML = msg;
|
||||||
$("#sBar").addClass("opacityFull");
|
$("#sBar").addClass("opacityFull");
|
||||||
document.getElementById("passbox").value = "";
|
document.getElementById("passbox").value = "";
|
||||||
remove_bar();
|
remove_bar();
|
||||||
@@ -106,6 +106,7 @@ function remove_bar()
|
|||||||
function shuffle(form)
|
function shuffle(form)
|
||||||
{
|
{
|
||||||
console.log(adminpass);
|
console.log(adminpass);
|
||||||
|
socket.emit('shuffle', adminpass);
|
||||||
/*
|
/*
|
||||||
confRes = $.ajax({
|
confRes = $.ajax({
|
||||||
type: "GET",
|
type: "GET",
|
||||||
|
|||||||
@@ -186,7 +186,14 @@ function submitAndClose(id,title){
|
|||||||
|
|
||||||
function submit(id,title,type){
|
function submit(id,title,type){
|
||||||
|
|
||||||
socket.emit("add", [id, title, adminpass]);
|
socket.emit("add", [id, decodeURI(title), adminpass]);
|
||||||
|
if(type){
|
||||||
|
document.getElementById("search").value = "";
|
||||||
|
$("#results").html = "";
|
||||||
|
$(".main").removeClass("blurT");
|
||||||
|
$("#controls").removeClass("blurT");
|
||||||
|
$(".main").removeClass("clickthrough");
|
||||||
|
}
|
||||||
/*
|
/*
|
||||||
serverAns = $.ajax({
|
serverAns = $.ajax({
|
||||||
type: "GET",
|
type: "GET",
|
||||||
|
|||||||
@@ -55,10 +55,9 @@ socket.on(chan.toLowerCase()+",np", function(obj)
|
|||||||
console.log(seekTo);
|
console.log(seekTo);
|
||||||
if(player_ready)
|
if(player_ready)
|
||||||
{
|
{
|
||||||
if(!playing){
|
if(ytplayer.getVideoUrl().split('v=')[1] != video_id)
|
||||||
ytplayer.loadVideoById(video_id);
|
ytplayer.loadVideoById(video_id);
|
||||||
ytplayer.playVideo();
|
ytplayer.playVideo();
|
||||||
}
|
|
||||||
ytplayer.seekTo(seekTo);
|
ytplayer.seekTo(seekTo);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ foreach($fil as $files){
|
|||||||
$time_lasted = time() - filemtime($files);
|
$time_lasted = time() - filemtime($files);
|
||||||
if($time_lasted > $to)
|
if($time_lasted > $to)
|
||||||
{
|
{
|
||||||
$file = file_get_contents($files);
|
$file = file_get_contents($files);
|
||||||
$data = json_decode($file, TRUE);
|
$data = json_decode($file, TRUE);
|
||||||
$q = array_values($data["nowPlaying"]);
|
$q = array_values($data["nowPlaying"]);
|
||||||
/*if($q[0]["id"] == "30H2Z8Lr-4c");
|
/*if($q[0]["id"] == "30H2Z8Lr-4c");
|
||||||
@@ -54,6 +54,8 @@ foreach($fil as $files){
|
|||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<?php include("header.php"); ?>
|
<?php include("header.php"); ?>
|
||||||
|
<script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
|
||||||
|
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="bgimage" id="bgimage"></div>
|
<div class="bgimage" id="bgimage"></div>
|
||||||
@@ -72,7 +74,7 @@ foreach($fil as $files){
|
|||||||
</div>
|
</div>
|
||||||
<center>
|
<center>
|
||||||
<div class="channels" id="channels">Active Channels<br>
|
<div class="channels" id="channels">Active Channels<br>
|
||||||
<?php foreach($channels as $channel){echo "<a class='channel' href='./".htmlspecialchars($channel)."' title='Viewers: ~".$viewers[$v]."'>".htmlspecialchars($channel)."</a>"; $v++;} ?>
|
<div id="fp-chans"></div>
|
||||||
</div>
|
</div>
|
||||||
</center>
|
</center>
|
||||||
</div>
|
</div>
|
||||||
@@ -84,8 +86,8 @@ foreach($fil as $files){
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
© <?php echo date("Y"); ?>
|
© <?php echo date("Y"); ?>
|
||||||
<a class="anim" href="//nixo.no">Nixo</a> &
|
<a class="anim" href="//nixo.no">Nixo</a> &
|
||||||
<a class="anim" href="//kasperrt.no">KasperRT</a>
|
<a class="anim" href="//kasperrt.no">KasperRT</a>
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var deg = 0;
|
var deg = 0;
|
||||||
@@ -144,6 +146,46 @@ foreach($fil as $files){
|
|||||||
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
|
g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
|
||||||
})();
|
})();
|
||||||
</script>
|
</script>
|
||||||
|
<script>
|
||||||
|
var socket = io.connect('http://localhost:3000');
|
||||||
|
var playlists = [];
|
||||||
|
socket.emit('frontpage_lists');
|
||||||
|
socket.on('playlists', function(msg){
|
||||||
|
populate_channels(msg);
|
||||||
|
})
|
||||||
|
|
||||||
|
function populate_channels(lists)
|
||||||
|
{
|
||||||
|
var output = "";
|
||||||
|
|
||||||
|
lists.sort(sortFunction);
|
||||||
|
|
||||||
|
for(x in lists)
|
||||||
|
{
|
||||||
|
var id = lists[x][1];
|
||||||
|
var title = lists[x][2];
|
||||||
|
var name = lists[x][3];
|
||||||
|
var viewers = lists[x][0];
|
||||||
|
//console.log("Channel name: "+name+", viewers: "+viewers);
|
||||||
|
output += "<a class='channel' href='./"+name+"' title='Viewer(s): "+viewers+"'>"+name.capitalizeFirstLetter()+"</a>";
|
||||||
|
}
|
||||||
|
document.getElementById("fp-chans").innerHTML = output;
|
||||||
|
}
|
||||||
|
|
||||||
|
String.prototype.capitalizeFirstLetter = function() {
|
||||||
|
return this.charAt(0).toUpperCase() + this.slice(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function sortFunction(a, b) {
|
||||||
|
if (a[0] === b[0]) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return (a[0] < b[0]) ? 1 : -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
<noscript><p><img src="//zoff.no/analyse/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript>
|
<noscript><p><img src="//zoff.no/analyse/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript>
|
||||||
<!-- End Piwik Code -->
|
<!-- End Piwik Code -->
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
155
server/server.js
155
server/server.js
@@ -23,9 +23,52 @@ io.on('connection', function(socket){
|
|||||||
|
|
||||||
var coll;
|
var coll;
|
||||||
var guid;
|
var guid;
|
||||||
|
var tot_lists = [];
|
||||||
|
var in_list = false;
|
||||||
|
|
||||||
|
socket.on('frontpage_lists', function()
|
||||||
|
{
|
||||||
|
var playlists_to_send = [];
|
||||||
|
var i = 0;
|
||||||
|
var playlists_to_send = [];
|
||||||
|
in_list = false;
|
||||||
|
|
||||||
|
db.getCollectionNames(function(err, colNames){
|
||||||
|
colNames.forEach(function(name){
|
||||||
|
if(name != "system.indexes")
|
||||||
|
{
|
||||||
|
db.collection(name).find({now_playing:true}, function(err, np){
|
||||||
|
complete(np, i, colNames.length-2, name);
|
||||||
|
i++;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
var complete = function(list, curr, tot, name)
|
||||||
|
{
|
||||||
|
console.log("inside");
|
||||||
|
if(list.length > 0)
|
||||||
|
{
|
||||||
|
var id = list[0]["id"];
|
||||||
|
var title = list[0]["title"];
|
||||||
|
try{
|
||||||
|
var viewers = lists[name].length;
|
||||||
|
}catch(err){console.log("no viewers"); var viewers = 0;}
|
||||||
|
var to_push = [viewers, id, title, name];
|
||||||
|
playlists_to_send.push(to_push);
|
||||||
|
}
|
||||||
|
if(curr == tot)
|
||||||
|
{
|
||||||
|
socket.emit("playlists", playlists_to_send);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
socket.on('list', function(list)
|
socket.on('list', function(list)
|
||||||
{
|
{
|
||||||
|
in_list = true;
|
||||||
list = list.split(',');
|
list = list.split(',');
|
||||||
coll = list[0].toLowerCase();
|
coll = list[0].toLowerCase();
|
||||||
guid = list[1];
|
guid = list[1];
|
||||||
@@ -110,7 +153,7 @@ io.on('connection', function(socket){
|
|||||||
{
|
{
|
||||||
var id = msg[1];
|
var id = msg[1];
|
||||||
guid = msg[3];
|
guid = msg[3];
|
||||||
var hash = has_pass(msg[4]);
|
var hash = hash_pass(msg[4]);
|
||||||
db.collection(coll).find({views:{$exists:true}}, function(err, docs)
|
db.collection(coll).find({views:{$exists:true}}, function(err, docs)
|
||||||
{
|
{
|
||||||
if((docs[0]["vote"] == "true" && (hash == docs[0]["adminpass"] || docs[0]["adminpass"] == "")) || docs[0]["vote"] == "false")
|
if((docs[0]["vote"] == "true" && (hash == docs[0]["adminpass"] || docs[0]["adminpass"] == "")) || docs[0]["vote"] == "false")
|
||||||
@@ -174,7 +217,7 @@ io.on('connection', function(socket){
|
|||||||
shuffle:shuffling,
|
shuffle:shuffling,
|
||||||
longsongs:longsongs,
|
longsongs:longsongs,
|
||||||
adminpass:hash}}, function(err, docs){
|
adminpass:hash}}, function(err, docs){
|
||||||
socket.emit("success_settings");
|
socket.emit("success_settings", "Successfully applied settings!");
|
||||||
sort_list(coll,undefined,false);
|
sort_list(coll,undefined,false);
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -185,14 +228,37 @@ io.on('connection', function(socket){
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
socket.on('shuffle', function(pass){
|
||||||
|
var hash = hash_pass(pass);
|
||||||
|
db.collection(coll).find({views:{$exists:true}}, function(err, docs){
|
||||||
|
if((docs[0]["adminpass"] == hash || docs[0]["adminpass"] == "") || docs[0]["shuffle"] == "true")
|
||||||
|
{
|
||||||
|
db.collection(coll).find({now_playing:false}).forEach(function(err, docs){
|
||||||
|
if(!docs){
|
||||||
|
sort_list(coll, undefined, false);
|
||||||
|
return;
|
||||||
|
}else{
|
||||||
|
console.log(docs);
|
||||||
|
num = Math.floor(Math.random()*1000000);
|
||||||
|
db.collection(coll).update({id:docs["id"]}, {$set:{added:num}}, function(err, d)
|
||||||
|
{});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
socket.on('disconnect', function()
|
socket.on('disconnect', function()
|
||||||
{
|
{
|
||||||
try
|
if(in_list)
|
||||||
{
|
{
|
||||||
var index = lists[coll].indexOf(guid);
|
try
|
||||||
lists[coll].splice(index, 1);
|
{
|
||||||
io.sockets.emit(coll+",viewers", lists[coll].length);
|
var index = lists[coll].indexOf(guid);
|
||||||
}catch(err){}
|
lists[coll].splice(index, 1);
|
||||||
|
io.sockets.emit(coll+",viewers", lists[coll].length);
|
||||||
|
}catch(err){}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
socket.on('pos', function()
|
socket.on('pos', function()
|
||||||
@@ -200,14 +266,16 @@ io.on('connection', function(socket){
|
|||||||
console.log("EMITTED");
|
console.log("EMITTED");
|
||||||
send_play(coll, socket);
|
send_play(coll, socket);
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function del(params)
|
function del(params)
|
||||||
{
|
{
|
||||||
db.collection(coll).find({adminpass:hash_pass(params[4])}, function(err, docs){
|
var coll = params[0].toLowerCase();
|
||||||
if(docs.length == 1)
|
db.collection(coll).find({views:{$exists:true}}, function(err, docs){
|
||||||
|
console.log(docs);
|
||||||
|
if(docs[0]["adminpass"] == hash_pass(params[4]))
|
||||||
{
|
{
|
||||||
|
console.log("del");
|
||||||
db.collection(coll).remove({id:params[1]}, function(err, docs){
|
db.collection(coll).remove({id:params[1]}, function(err, docs){
|
||||||
sort_list(coll, undefined, false);
|
sort_list(coll, undefined, false);
|
||||||
})
|
})
|
||||||
@@ -227,41 +295,58 @@ function vote(coll, id, guid)
|
|||||||
{
|
{
|
||||||
db.collection(coll).update({id:id}, {$inc:{votes:1}, $set:{added:get_time()}}, function(err, docs)
|
db.collection(coll).update({id:id}, {$inc:{votes:1}, $set:{added:get_time()}}, function(err, docs)
|
||||||
{
|
{
|
||||||
/*db.collection(coll).update({id:id}, {$push :{guids: guid}}, function(err, docs)
|
db.collection(coll).update({id:id}, {$push :{guids: guid}}, function(err, docs)
|
||||||
{
|
{
|
||||||
sort_list(coll, undefined, false);
|
sort_list(coll, undefined, false);
|
||||||
});*/
|
});
|
||||||
sort_list(coll, undefined, false);
|
//sort_list(coll, undefined, false);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function change_song(coll)
|
function change_song(coll)
|
||||||
{
|
{
|
||||||
db.collection(coll).update({now_playing:true},
|
db.collection(coll).find({views:{$exists:true}}, function(err, docs){
|
||||||
{$set:{
|
if(docs[0]["removeplay"] == "true")
|
||||||
now_playing:false,
|
|
||||||
votes:0,
|
|
||||||
guids:[]
|
|
||||||
}}, function(err, docs)
|
|
||||||
{
|
{
|
||||||
db.collection(coll).aggregate([
|
db.collection(coll).remove({now_playing:true}, function(err, docs)
|
||||||
{$match:{now_playing:false}},
|
{
|
||||||
{$sort:{votes:-1, added:1}},
|
change_song_post(coll);
|
||||||
{$limit:1}], function(err, docs){
|
})
|
||||||
db.collection(coll).update({id:docs[0]["id"]},
|
}else
|
||||||
{$set:{
|
{
|
||||||
now_playing:true,
|
db.collection(coll).update({now_playing:true},
|
||||||
votes:0,
|
{$set:{
|
||||||
guids:[],
|
now_playing:false,
|
||||||
added:get_time()}}, function(err, docs){
|
votes:0,
|
||||||
db.collection(coll).update({views:{$exists:true}},
|
guids:[]
|
||||||
{$set:{startTime:get_time()}}, function(err, docs){
|
}}, function(err, docs)
|
||||||
sort_list(coll,undefined,true);
|
{
|
||||||
});
|
change_song_post(coll);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
function change_song_post(coll)
|
||||||
|
{
|
||||||
|
db.collection(coll).aggregate([
|
||||||
|
{$match:{now_playing:false}},
|
||||||
|
{$sort:{votes:-1, added:1}},
|
||||||
|
{$limit:1}], function(err, docs){
|
||||||
|
db.collection(coll).update({id:docs[0]["id"]},
|
||||||
|
{$set:{
|
||||||
|
now_playing:true,
|
||||||
|
votes:0,
|
||||||
|
guids:[],
|
||||||
|
added:get_time()}}, function(err, docs){
|
||||||
|
db.collection(coll).update({views:{$exists:true}},
|
||||||
|
{$set:{startTime:get_time()}}, function(err, docs){
|
||||||
|
sort_list(coll,undefined,true);
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user