Skip to content

Commit

Permalink
v0.0.5
Browse files Browse the repository at this point in the history
  • Loading branch information
schorschii committed Mar 12, 2018
1 parent f266ace commit 9852d89
Show file tree
Hide file tree
Showing 26 changed files with 776 additions and 72 deletions.
10 changes: 8 additions & 2 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,13 @@
v0.0.5
- [new] play mode: repeat playlist, repeat track, do not repeat
- [fix] correct escaping of quotes in html's "title" attribute
- [new] statistics
- [new] new volume slider
- [new] new library view: recently added
- [new] scan.php saves track playtime
- [fix] buzzsaw logo is now always centered, also on small displays
- [new] scan.php now removes deleted tracks from the database
- [new] scan.php now scans file size and genre
- [fix] "files" library view is now limited to the media root dir, so that the user can't view other files on the system
- [new] you can now disable the download-feature by setting the flag in global.php

v0.0.4
- [new] scan.php finds correct next free cover image number for file name in music_thumb
Expand Down
2 changes: 1 addition & 1 deletion CURRENTVERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.0.4
0.0.5
57 changes: 27 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,30 @@
| B U Z Z S A W |
|:-------------------------------------------:|
| html multimedia server - library and player |
| (c) 2017 Georg Sieber - georg-sieber.de |
# B U Z Z S A W
Your private music streaming cloud
html multimedia server - library and player

| License: GPLv2 (see LICENSE.txt) |
|:-------------------------------------------:|
| View source and fork me on GitHub: |
| https://github.com/schorschii/buzzsaw |


# 1. About
# About
BUZZSAW is a web application for playing music and videos and
organizing them in a library. It is designed to listen your music
anywhere, without syncing your mobile devices. It is written in
html (who'd have thought?), PHP, JS and CSS.
html (who'd have thought?), PHP, JS and CSS.

## Highlights:
## Highlights
- playlists
- audio visualization
- showing id3 tags and cover images from file
- remote player functionality
- optimized for mobile devices

## Screenshots:
## Screenshots
![Player with visualization](https://raw.githubusercontent.com/schorschii/buzzsaw/master/img/screenshot/1_player.png)
![Library: Artists](https://raw.githubusercontent.com/schorschii/buzzsaw/master/img/screenshot/2_artists.png)
![Library: Albums](https://raw.githubusercontent.com/schorschii/buzzsaw/master/img/screenshot/3_albums.png)
![Library: Tracks](https://raw.githubusercontent.com/schorschii/buzzsaw/master/img/screenshot/4_tracks.png)
![Current playlists and options](https://raw.githubusercontent.com/schorschii/buzzsaw/master/img/screenshot/5_current.png)


# 2. Requirements
# Requirements
BUZZSAW was tested with the following software environment. Please
note that there will be no support for other environments!

Expand All @@ -39,13 +33,12 @@ note that there will be no support for other environments!
- Apache 2
- PHP 5 (only with "mysqlnd" package) or 7
- MySQL or MariaDB
- fast connection to the client;
best experience if client is running on the same machine
- fast connection to the client; best experience if client is running on the same machine

## Client (desktop)
- Google Chrome v60+
or other webkit based browsers
not tested with Safari
- Google Chrome v60+
or other webkit based browsers
not tested with Safari
- Mozilla Firefox v55+
- NOT running in IE

Expand All @@ -55,14 +48,14 @@ note that there will be no support for other environments!
with some limitations


# 3. Installation
# Installation

## Upgrade from old version
1. Delete all files from the buzzsaw directory, except: "database.php", "music" and "music_thumb" directory.
2. Copy all files from this archive to your buzzsaw directory, again except "database.php", "music" and "music_thumb" directory.
3. That's it. If you encounter some problems, clear your browser cache and/or execute file scan again (Menu -> "Options" -> "Scan filesystem").

## Setup up a new BUZZSAW installation
## Setup up a new installation
1. Setup up a web server with PHP interpreter and a mysql server.

For Debian <= 8 or current Raspian
Expand All @@ -84,8 +77,10 @@ note that there will be no support for other environments!
Enjoy your music! :-)


# 4. License
GNU General Public License - see LICENSE.txt
# License
GNU General Public License - see LICENSE.txt
&copy; 2017-2018 Georg Sieber - [georg-sieber.de][1]
view source and fork me on [GitHub][2]

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
Expand All @@ -103,18 +98,20 @@ Free Software Foundation, Inc.
59 Temple Place - Suite 330
Boston, MA 02111-1307, USA.

[1]: [https://georg-sieber.de]
[2]: [https://github.com/schorschii/buzzsaw]

# 5. Libraries
This program uses the getid3() library v1.9.14
# Libraries
This program uses the [getid3()][3] library v1.9.14
© 2017 James Heinrich
Licensed under the terms of the GPLv2

[3]: [http://getid3.sourceforge.net]


# 6. Support
Found a bug? Great!
Please report it (preferably with a ready-to-use fix for it ;-) ) on GitHub.
Questions, ideas and feature requests are also welcome.
# Support
Found a bug? Great! Please report it (preferably with a ready-to-use fix for it ;-) ) on GitHub. Questions, ideas and feature requests are also welcome.


# 7. ToDo and planned features
# ToDo and planned features
Visit the GitHub page for more information.
28 changes: 28 additions & 0 deletions css/library.css
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,15 @@ p:last-child {
color: red;
}

table.statistics th {
text-align: left;
padding-right: 10px;
}
table.statistics tr > * {
padding-top: 5px;
padding-bottom: 5px;
}

.right {
float: right;
}
Expand All @@ -220,6 +229,12 @@ p:last-child {
background-repeat: no-repeat;
background-size: 30px 30px;
}
.btnTrash {
background-image: url('../img/trash.svg');
background-position: center center;
background-repeat: no-repeat;
background-size: 30px 30px;
}
.btnMoveUp {
background-image: url('../img/up.svg');
background-position: center center;
Expand All @@ -239,3 +254,16 @@ p:last-child {
padding-right: 10px;
width: auto;
}

#libraryContextMenu {
position: fixed;
background-color: rgb(40,40,40);
border-radius: 2px;
padding: 10px;
z-index: 1000;
box-shadow: 0px 0px 20px black;
}
#libraryContextMenu > div {
margin-top: 5px;
margin-bottom: 5px;
}
8 changes: 7 additions & 1 deletion css/player.css
Original file line number Diff line number Diff line change
Expand Up @@ -404,8 +404,14 @@ input[type=range]#volumeBar::-webkit-slider-thumb {
width: 20px; height: 20px;
}
/* for mozilla browser */
@-moz-document url-prefix() {
input[type=range]#volumeBar {
margin: 8px 8px 8px 8px;
height: 25px;
}
}
input[type=range]#volumeBar::-moz-range-thumb {
width: 20px; height: 20px;
width: 18px; height: 18px;
}


Expand Down
27 changes: 25 additions & 2 deletions global.php
Original file line number Diff line number Diff line change
@@ -1,9 +1,22 @@
<?php

$CVERSION = trim(file_get_contents("CURRENTVERSION.txt"));
$NVERSION = "";
// ------------------------------
// flags
const MEDIAROOT = "music";
const ALLOW_DOWNLOADS = true;
const LOG_DOWNLOADS = true;
// ------------------------------

function is_sub_dir($path, $parent_folder) {
#echo "$path | ".realpath($path)."<br>"; // debug
#echo "$parent_folder | ".realpath($parent_folder)."<br>"; // debug
$path = realpath($path);
$parent_folder = realpath($parent_folder);
return (startsWith($path, $parent_folder));
}

$CVERSION = trim(file_get_contents("CURRENTVERSION.txt"));
$NVERSION = "";
function isUpdateAvail() {
global $CVERSION;
global $NVERSION;
Expand Down Expand Up @@ -59,4 +72,14 @@ function shortText($longtext) {
return strlen($longtext) > $maxlength ? substr($longtext,0,$maxlength)."..." : $longtext;
}

function startsWith($haystack, $needle) {
$length = strlen($needle);
return (substr($haystack, 0, $length) === $needle);
}

function endsWith($haystack, $needle) {
$length = strlen($needle);
return $length === 0 || (substr($haystack, -$length) === $needle);
}

?>
78 changes: 78 additions & 0 deletions img/more.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
78 changes: 78 additions & 0 deletions img/more_b.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 9852d89

Please sign in to comment.