1<?php
2/* vim:set softtabstop=4 shiftwidth=4 expandtab: */
3/**
4 *
5 * LICENSE: GNU Affero General Public License, version 3 (AGPL-3.0-or-later)
6 * Copyright 2001 - 2020 Ampache.org
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU Affero General Public License as published by
10 * the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 * GNU Affero General Public License for more details.
17 *
18 * You should have received a copy of the GNU Affero General Public License
19 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
20 *
21 */
22
23use Ampache\Config\AmpConfig;
24use Ampache\Module\Authorization\Access;
25use Ampache\Module\Api\Ajax;
26use Ampache\Module\Playback\Localplay\LocalPlay;
27use Ampache\Module\Util\Ui;
28
29?>
30<ul class="sb2" id="sb_localplay">
31<?php
32$server_allow = AmpConfig::get('allow_localplay_playback');
33$controller   = AmpConfig::get('localplay_controller');
34$access_check = Access::check('localplay', 5);
35if ($server_allow && $controller && $access_check) { ?>
36<?php
37    // Little bit of work to be done here
38    $localplay        = new LocalPlay(AmpConfig::get('localplay_controller'));
39    $current_instance = $localplay->current_instance();
40    $class            = $current_instance ? '' : ' class="active_instance"'; ?>
41<?php if (Access::check('localplay', 25)) { ?>
42    <?php if (AmpConfig::get('browse_filter')) {
43        echo "<li>";
44        Ajax::start_container('browse_filters');
45        Ajax::end_container();
46        echo "</li>";
47    } ?>
48  <li><h4 class="header"><span class="sidebar-header-title"><?php echo $t_localplay; ?></span><?php echo Ui::get_icon('all', $t_expander, 'localplay', 'header-img ' . ((filter_has_var(INPUT_COOKIE, 'sb_localplay')) ? $_COOKIE['sb_localplay'] : 'expanded')); ?></h4>
49    <ul class="sb3" id="sb_localplay_info">
50<?php if (Access::check('localplay', 75)) { ?>
51    <li id="sb_localplay_info_add_instance"><a href="<?php echo $web_path; ?>/localplay.php?action=show_add_instance"><?php echo T_('Add Instance'); ?></a></li>
52    <li id="sb_localplay_info_show_instances"><a href="<?php echo $web_path; ?>/localplay.php?action=show_instances"><?php echo T_('Show Instances'); ?></a></li>
53<?php
54        } ?>
55    <li id="sb_localplay_info_show"><a href="<?php echo $web_path; ?>/localplay.php?action=show_playlist"><?php echo T_('Show Playlist'); ?></a></li>
56    </ul>
57  </li>
58<?php
59    } ?>
60  <li><h4 class="header"><span class="sidebar-header-title"><?php echo T_('Active Instance'); ?></span><?php echo Ui::get_icon('all', $t_expander, 'active_instance', 'header-img ' . ((filter_has_var(INPUT_COOKIE, 'sb_active_instance')) ? $_COOKIE['sb_active_instance'] : 'expanded')); ?></h4>
61    <ul class="sb3" id="sb_localplay_instances">
62    <li id="sb_localplay_instances_none"<?php echo $class; ?>><?php echo Ajax::text('?page=localplay&action=set_instance&instance=0', T_('None'), 'localplay_instance_none'); ?></li>
63    <?php
64        // Requires a little work.. :(
65        $instances = $localplay->get_instances();
66    foreach ($instances as $uid => $name) {
67        $name  = scrub_out($name);
68        $class = '';
69        if ($uid == $current_instance) {
70            $class = ' class="active_instance"';
71        } ?>
72    <li id="sb_localplay_instances_<?php echo $uid; ?>"<?php echo $class; ?>><?php echo Ajax::text('?page=localplay&action=set_instance&instance=' . $uid, $name, 'localplay_instance_' . $uid); ?></li>
73    <?php
74    } ?>
75    </ul>
76  </li>
77<?php
78} else { ?>
79  <li><h4 class="header"><span class="sidebar-header-title"><?php echo T_('Localplay Disabled'); ?></span><?php echo Ui::get_icon('all', $t_expander, 'localplay_disabled', 'header-img ' . ((filter_has_var(INPUT_COOKIE, 'sb_localplay_disabled')) ? $_COOKIE['sb_localplay_disabled'] : 'expanded')); ?></h4></li>
80  <?php if (!$server_allow) { ?>
81    <li><?php echo T_('Allow Localplay Set to False'); ?></li>
82  <?php
83        } elseif (!$controller) { ?>
84    <li><?php echo T_('Localplay Controller Not Defined'); ?></li>
85  <?php
86        } elseif (!$access_check) { ?>
87    <li><?php echo T_('Access Denied'); ?></li>
88  <?php
89        } ?>
90<?php
91    } ?>
92</ul>
93