From 850edbb1f20ce3cfd8be5f6fe93207ba9a56db3a Mon Sep 17 00:00:00 2001 From: Karl 'vollmerk' Vollmer Date: Mon, 31 Dec 2007 08:38:12 +0000 Subject: first vestiages of edit localplay instance and test localplay instance support --- images/icon_server_lightning.png | Bin 0 -> 729 bytes lib/class/localplay.class.php | 12 ++++++ localplay.php | 57 +++++++++++-------------- templates/show_localplay_edit_instance.inc.php | 37 ++++++++++++++++ templates/show_localplay_instances.inc.php | 3 +- templates/sidebar_localplay.inc.php | 1 - 6 files changed, 75 insertions(+), 35 deletions(-) create mode 100644 images/icon_server_lightning.png create mode 100644 templates/show_localplay_edit_instance.inc.php diff --git a/images/icon_server_lightning.png b/images/icon_server_lightning.png new file mode 100644 index 00000000..b0f4e46c Binary files /dev/null and b/images/icon_server_lightning.png differ diff --git a/lib/class/localplay.class.php b/lib/class/localplay.class.php index 15f945f2..43d4bca1 100644 --- a/lib/class/localplay.class.php +++ b/lib/class/localplay.class.php @@ -539,6 +539,18 @@ class Localplay { } // get_instance + /** + * update_instance + * This updates the specified instance with a named array of data (_POST most likely) + */ + public function update_instance($uid,$data) { + + $data = $this->_player->update_instance($uid); + + return $data; + + } // update_instance + /** * add_instance * This adds a new instance for the current controller type diff --git a/localplay.php b/localplay.php index d2fc1217..989f75e9 100644 --- a/localplay.php +++ b/localplay.php @@ -32,7 +32,7 @@ if (!Config::get('allow_localplay_playback') || !$GLOBALS['user']->has_access('2 switch ($_REQUEST['action']) { case 'show_add_instance': // This requires 50 or better - if (!$GLOBALS['user']->has_access('50')) { access_denied(); break; } + if (!Access::check('localplay','75')) { access_denied(); break; } // Get the current localplay fields $localplay = new Localplay($GLOBALS['user']->prefs['localplay_controller']); @@ -41,20 +41,42 @@ switch ($_REQUEST['action']) { break; case 'add_instance': // This requires 50 or better! - if (!$GLOBALS['user']->has_access('50')) { access_denied(); break; } + if (!Access::check('localplay','75')) { access_denied(); break; } // Setup the object $localplay = new Localplay($GLOBALS['user']->prefs['localplay_controller']); $localplay->add_instance($_POST); break; + case 'update_instance': + // Make sure they gots them rights + if (!Access::check('localplay','75')) { access_denied(); break; } + $localplay = new Localplay($GLOBALS['user']->prefs['localplay_controller']); + $localplay->update_instance($_REQUEST['instance'],$_POST); + header("Location:" . Config::get('web_path') . "/localplay.php?action=show_instances"); + break; + case 'edit_instance': + // Check to make sure they've got the access + if (!Access::check('localplay','75')) { access_denied(); break; } + $localplay = new Localplay($GLOBALS['user']->prefs['localplay_controller']); + $instance = $localplay->get_instance($_REQUEST['instance']); + $fields = $localplay->get_instance_fields(); + require_once Config::get('prefix') . '/templates/show_localplay_edit_instance.inc.php'; + break; + case 'test_instance': + // Check to make sure they've got the rights + if (!Access::check('localplay','75')) { access_denied(); break; } + break; case 'show_instances': // First build the localplay object and then get the instances + if (!Access::check('localplay','5')) { access_denied(); break; } $localplay = new Localplay($GLOBALS['user']->prefs['localplay_controller']); $instances = $localplay->get_instances(); $fields = $localplay->get_instance_fields(); require_once Config::get('prefix') . '/templates/show_localplay_instances.inc.php'; break; + default: case 'show_playlist': + if (!Access::check('localplay','5')) { access_denied(); break; } // Init and then connect to our localplay instance $localplay = new Localplay($GLOBALS['user']->prefs['localplay_controller']); $localplay->connect(); @@ -64,37 +86,6 @@ switch ($_REQUEST['action']) { require_once Config::get('prefix') . '/templates/show_localplay_status.inc.php'; require_once Config::get('prefix') . '/templates/show_localplay_playlist.inc.php'; break; - case 'delete_song': - $song_id = scrub_in($_REQUEST['song_id']); - $songs = array($song_id); - $localplay = init_localplay(); - $localplay->delete($songs); - $url = $web_path . '/localplay.php'; - $title = _('Song(s) Removed from Playlist'); - $body = ''; - show_confirmation($title,$body,$url); - break; - case 'delete_all': - $localplay = init_localplay(); - $localplay->delete_all(); - $url = $web_path . '/localplay.php'; - $title = _('Song(s) Removed from Playlist'); - $body = ''; - show_confirmation($title,$body,$url); - break; - case 'repeat': - $localplay = init_localplay(); - $localplay->repeat(make_bool($_REQUEST['value'])); - require_once (conf('prefix') . '/templates/show_localplay.inc.php'); - break; - case 'random': - $localplay = init_localplay(); - $localplay->random(make_bool($_REQUEST['value'])); - require_once (conf('prefix') . '/templates/show_localplay.inc.php'); - break; - default: - // Rien a faire? - break; } // end switch action diff --git a/templates/show_localplay_edit_instance.inc.php b/templates/show_localplay_edit_instance.inc.php new file mode 100644 index 00000000..b6060671 --- /dev/null +++ b/templates/show_localplay_edit_instance.inc.php @@ -0,0 +1,37 @@ + + +
+ +$field) { ?> + + + + + +
+
+ +
+
+ diff --git a/templates/show_localplay_instances.inc.php b/templates/show_localplay_instances.inc.php index 4c519392..ef9b84c1 100644 --- a/templates/show_localplay_instances.inc.php +++ b/templates/show_localplay_instances.inc.php @@ -36,8 +36,9 @@ + + - diff --git a/templates/sidebar_localplay.inc.php b/templates/sidebar_localplay.inc.php index 01c198ee..92371b16 100644 --- a/templates/sidebar_localplay.inc.php +++ b/templates/sidebar_localplay.inc.php @@ -29,7 +29,6 @@ if ($uid == $current_instance) { $class = ' class="active_instance"'; } - i ?>
  • >
  • -- cgit