summaryrefslogtreecommitdiffstats
path: root/localplay.php
blob: 9dda39cc25f4e7a77c71fee8a6d8da794ca56656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<?php
/*

 Copyright (c) 2004 Ampache.org
 All rights reserved.

 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License
 as published by the Free Software Foundation; either version 2
 of the License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

*/

/*!
        @header Song Document
        @discussion Actually play files from albums, artists or just given
        a bunch of id's.
        Special thanx goes to Mike Payson and Jon Disnard for the means
        to do this.
*/

require('modules/init.php');
/* If we are running a demo, quick while you still can! */
if (conf('demo_mode')) {
        exit();
}

$web_path = conf('web_path');

if($user->prefs['play_type'] != 'local_play') {
    show_template('header');
    echo "<span align=\"center\" class=\"fatalerror\">Localplay Currently Disabled</span>";
    show_footer();
    exit;
}

switch($_REQUEST['submit'])
{
    case ' X ':
        $action = "stop";
        break;
    case ' > ':
        $action = "play";
        break;
    case ' = ': 
        $action = "pause";
        break;
    case '|< ':
        $action = "prev";
        break;
    case ' >|':
        $action = "next";
        break;
    case (substr_count($_REQUEST['submit'],"+") == '1'):
    	$amount = trim(substr($_REQUEST['submit'],2,strlen($_REQUEST['submit']-2)));
	$action = "volplus";
	break;
    case (substr_count($_REQUEST['submit'],"-") == '1'):
    	$amount = trim(substr($_REQUEST['submit'],2,strlen($_REQUEST['submit']-2)));
	$action = "volminus";
	break; 
    case 'clear':
        $action = "clear";
        break;
    case 'start':
        $action = "start";
        break;
    case 'kill':
        $action = "kill";
        break;
    default:
        echo _("Unknown action requested") . ": '$_REQUEST[submit]'<br />";
        exit;
}
$systr = conf('localplay_'.$action);
$systr = str_replace("%AMOUNT%",$amount,$systr);
if (conf('debug')) { log_event($user->username,'localplay',"Exec: $systr"); }
@exec($systr, $output);
$web_path = conf('web_path');
if($output)
    print_r($output);
else
    header("Location: $web_path");

?>