diff options
author | Karl 'vollmerk' Vollmer <vollmer@ampache.org> | 2006-10-23 08:00:34 +0000 |
---|---|---|
committer | Karl 'vollmerk' Vollmer <vollmer@ampache.org> | 2006-10-23 08:00:34 +0000 |
commit | f283e4040e0dea301c94278470515ca6472af8c2 (patch) | |
tree | 72ddc03245026420fe128c5cd149fa9fa8103d80 | |
parent | 2faea5f7b345ba0d9319d4466261b52c7bff0325 (diff) | |
download | ampache-f283e4040e0dea301c94278470515ca6472af8c2.tar.gz ampache-f283e4040e0dea301c94278470515ca6472af8c2.tar.bz2 ampache-f283e4040e0dea301c94278470515ca6472af8c2.zip |
few more tweaks and some work on the tv pages
-rw-r--r-- | lib/class/tmp_playlist.class.php | 14 | ||||
-rw-r--r-- | lib/preferences.php | 3 | ||||
-rw-r--r-- | lib/ui.lib.php | 48 | ||||
-rw-r--r-- | server/ajax.server.php | 21 | ||||
-rw-r--r-- | server/xml.server.php | 2 | ||||
-rw-r--r-- | templates/javascript_refresh.inc.php | 2 | ||||
-rw-r--r-- | templates/menu.inc | 86 | ||||
-rw-r--r-- | templates/show_tv.inc.php | 58 | ||||
-rw-r--r-- | templates/show_tv_adminctl.inc.php | 34 | ||||
-rw-r--r-- | tv.php | 47 |
10 files changed, 156 insertions, 159 deletions
diff --git a/lib/class/tmp_playlist.class.php b/lib/class/tmp_playlist.class.php index 2bf4cd4a..8829c41e 100644 --- a/lib/class/tmp_playlist.class.php +++ b/lib/class/tmp_playlist.class.php @@ -191,6 +191,20 @@ class tmpPlaylist { } // has_vote /** + * vote_active + * This checks to see if this playlist is a voting playlist + * and if it is active + */ + function vote_active() { + + /* Going to do a little more here later */ + if ($this->type == 'vote') { return true; } + + return false; + + } // vote_active + + /** * delete_track * This deletes a track and any assoicated votes, we only check for * votes if it's a -1 session diff --git a/lib/preferences.php b/lib/preferences.php index bf995e4c..8bd01020 100644 --- a/lib/preferences.php +++ b/lib/preferences.php @@ -264,6 +264,7 @@ function create_preference_input($name,$value) { case 'play_type': if ($value == 'downsample') { $is_down = 'selected="selected"'; } elseif ($value == 'localplay') { $is_local = 'selected="selected"'; } + elseif ($value == 'democratic') { $is_vote = 'selected="selected"'; } else { $is_stream = "selected=\"selected\""; } echo "<select name=\"$name\">\n"; echo "\t<option value=\"\">" . _('None') . "</option>\n"; @@ -274,7 +275,7 @@ function create_preference_input($name,$value) { echo "\t<option value=\"downsample\" $is_down>" . _('Downsample') . "</option>\n"; } if (conf('allow_democratic_playback')) { - echo "\t<option value=\"democratic\" $is_demo>" . _('Democratic') . "</option>\n"; + echo "\t<option value=\"democratic\" $is_vote>" . _('Democratic') . "</option>\n"; } if (conf('allow_localplay_playback')) { echo "\t<option value=\"localplay\" $is_local>" . _('Localplay') . "</option>\n"; diff --git a/lib/ui.lib.php b/lib/ui.lib.php index f4f5e3bd..9fdd2cdb 100644 --- a/lib/ui.lib.php +++ b/lib/ui.lib.php @@ -76,7 +76,7 @@ function flip_class($array=0) { */ function clear_now_playing() { - $sql = "DELETE FROM now_playing"; + $sql = "TRUNCATE TABLE now_playing"; $db_results = mysql_query($sql, dbh()); return true; @@ -84,31 +84,6 @@ function clear_now_playing() { } // clear_now_playing /** - * show_menu_items - * shows menu items - */ -function show_menu_items ($high) { - - include(conf('prefix') . "/templates/menu.inc"); - -} // show_menu_items - -/** - * Show Browse Menu - * Shows the menu used by the browse page - * @package Web Interface - * @cataogry Menu - * @author Karl Vollmer - */ -function show_browse_menu($highlight) { - - $highlight = ucfirst($highlight); - - include(conf('prefix'). "/templates/show_browse_menu.inc"); - -} // show_browse_menu - -/** * _ * checks to see if the alias _ is defined * if it isn't it defines it as a simple return @@ -1355,30 +1330,11 @@ function xml_from_array($array,$callback=0) { } // end foreach elements if (!$callback) { - $string = "<root>\n" . $string . "</root>\n"; + $string = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n<root>\n" . $string . "</root>\n"; } return $string; } // xml_from_array -/** - * show_ajax_js - * This displays the javascript array definition needed - * For ajax to know what it should be replacing - */ -function show_ajax_js($name,$array) { - - $elements = count($array); - - echo "<script type=\"text/javascript\" language=\"javascript\">\n"; - echo "<!--\n"; - echo "var $name = new Array($elements);\n"; - foreach ($array as $key=>$value) { - echo $name . "[$key] = \"$value\";\n"; - } - echo "-->\n</script>\n"; - -} // show_ajax_js - ?> diff --git a/server/ajax.server.php b/server/ajax.server.php index ee3578d5..5c173b10 100644 --- a/server/ajax.server.php +++ b/server/ajax.server.php @@ -34,7 +34,9 @@ $GLOBALS['user'] = new User($_REQUEST['user_id']); $action = scrub_in($_REQUEST['action']); /* Set the correct headers */ -header("Content-type: application/xhtml+xml"); +header("Content-type: text/xml; charset=utf-8"); +header("Content-Disposition: attachment; filename=ajax.xml"); +header("Cache-Control: no-cache"); switch ($action) { /* Controls Localplay */ @@ -112,6 +114,23 @@ switch ($action) { $xml_doc = xml_from_array($results); echo $xml_doc; break; + case 'tv_activate': + if (!$GLOBALS['user']->has_access(100)) { break; } + $tmp_playlist = new tmpPlaylist(); + /* Pull in the info we need */ + $base_id = scrub_in($_REQUEST['playlist_id']); + + /* create the playlist */ + $playlist_id = $tmp_playlist->create('0','vote','song',$base_id); + + $playlist = new tmpPlaylist($playlist_id); + ob_start(); + require_once(conf('prefix') . '/templates/show_tv_adminctl.inc.php'); + $results['tv_control'] = ob_get_contents(); + ob_end_clean(); + $xml_doc = xml_from_array($results); + echo $xml_doc; + break; default: echo "Default Action"; break; diff --git a/server/xml.server.php b/server/xml.server.php index 7ce510fa..352175d0 100644 --- a/server/xml.server.php +++ b/server/xml.server.php @@ -38,7 +38,7 @@ $GLOBALS['user'] = new User($_REQUEST['user_id']); $action = scrub_in($_REQUEST['action']); /* Set the correct headers */ -header("Content-type: application/xhtml+xml"); +header("Content-type: text/xml; charset=utf-8"); switch ($action) { /* Returns an array of artist information */ diff --git a/templates/javascript_refresh.inc.php b/templates/javascript_refresh.inc.php index 1da0c76b..5fa45604 100644 --- a/templates/javascript_refresh.inc.php +++ b/templates/javascript_refresh.inc.php @@ -20,7 +20,7 @@ function refresh() } // start with page-load -window.onload=doLoad(); +window.onload=doLoad; // End --> </script> diff --git a/templates/menu.inc b/templates/menu.inc deleted file mode 100644 index 54e0ba05..00000000 --- a/templates/menu.inc +++ /dev/null @@ -1,86 +0,0 @@ -<?php -/* - - Copyright (c) 2001 - 2005 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 - A template file - -*/ -$web_path = conf('web_path'); -$items = array(_("Home") => htmlspecialchars($web_path . "/index.php")); - -if ($GLOBALS['user']->prefs['play_type'] == 'mpd' && conf('localplay_menu')) { - $items += array(_("Local Play") => htmlspecialchars($web_path . "/mpd.php")); -} - -$items += array(_("Browse") => htmlspecialchars($web_path . "/browse.php"), -// _("Albums") => htmlspecialchars($web_path . "/albums.php"), -// _("Artists") => htmlspecialchars($web_path . "/artists.php"), - _("Playlists") => htmlspecialchars($web_path . "/playlist.php"), - _("Search") => htmlspecialchars($web_path . "/search.php"), - _("Preferences") => htmlspecialchars($web_path . "/preferences.php") - ); -if ($GLOBALS['user']->prefs['upload']) { - $items = array_merge($items, array(_("Upload") => $web_path . "/upload.php")); -} -?> - -<ul id="mainmenu"> -<?php -foreach (array_keys($items) as $item) { - if (_($high) == $item) { - print("\t\t<li class=\"active\"><a class=\"active\" href=\"$items[$item]\">$item</a></li>\n"); - } - else { - print("\t\t<li><a href=\"$items[$item]\">$item</a></li>\n"); - } -} // end foreach items - -if ((!conf('use_auth')) || ($GLOBALS['user']->has_access(100))) { - if ($high == 'Admin') { - print("\t\t<li class=\"active\"><a class=\"active\" href=\"" . $web_path . "/admin/\">" . _("Admin") . "</a></li>\n"); - } - else { - print("\t\t<li><a href=\"" . $web_path . "/admin/\">" . _("Admin") . "</a></li>\n"); - } -} // if we aren't using auth or 100 - -// now do the user specific stuff -if (conf('use_auth')) { - if (($high == 'Stats') || ($high == 'Profile')) { - print("\t\t<li class=\"active\">".$GLOBALS['user']->username.": <a class=\"active\" href=\"".$web_path."/user.php?action=show_edit_profile\">" . _("Account") . "</a> |". - "<a class=\"active\" href=\"".$web_path."/stats.php\">" . _("Stats") . "</a> |". - "<a class=\"active\" href=\"".$web_path."/logout.php\">" . _("Logout") . "</a> </li>\n"); - } // if stats or profile - else { - echo "\t\t<li>".$GLOBALS['user']->username.": " . - "<a href=\"".$web_path."/user.php?action=show_edit_profile\">" . _("Account") . "</a> |". - "<a href=\"".$web_path."/stats.php\">" . _("Stats") . "</a> |". - "<a href=\"".$web_path."/logout.php\">" . _("Logout") . "</a> </li>\n"; - } // else -} // if use_auth -elseif ($_SESSION['userdata']['id'] != '-1') { - print("\t\t<li><a href=\"".$web_path."/logout.php\">" . _("Logout") . "</a> </li>\n"); -} // else no user -?> -</ul> -<br /> diff --git a/templates/show_tv.inc.php b/templates/show_tv.inc.php new file mode 100644 index 00000000..ddd0beea --- /dev/null +++ b/templates/show_tv.inc.php @@ -0,0 +1,58 @@ +<?php +/* + + Copyright (c) 2001 - 2006 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. + +*/ + +$htmllang = str_replace("_","-",conf('lang')); +$location = get_location(); + +?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $htmllang; ?>" lang="<?php echo $htmllang; ?>"> + +<head> +<link rel="shortcut icon" href="<?php echo $web_path; ?>/favicon.ico" /> +<meta http-equiv="Content-Type" content="text/html; charset=<?php echo conf('site_charset'); ?>" /> +<title><?php echo conf('site_title'); ?> - <?php echo $location['title']; ?></title> +<link rel="stylesheet" href="<?php echo $web_path; ?>/templates/default.css" type="text/css" /> +<link rel="stylesheet" href="<?php echo $web_path; ?><?php echo conf('theme_path'); ?>/templates/default.css" type="text/css" /> +</head> +<body> +<script src="<?php echo $web_path; ?>/lib/general.js" language="javascript" type="text/javascript"></script> +<script src="<?php echo $web_path; ?>/modules/kajax/ajax.js" language="javascript" type="text/javascript"></script> +<!-- Control DIV --> +<div id="tv_control"> +<?php +/* If they are a admin */ +if ($GLOBALS['user']->has_access(100)) { + require_once(conf('prefix') . '/templates/show_tv_adminctl.inc.php'); +} +/* Else normal User */ +else { + +} + +?> +</div> +<!-- End Control Div --> +<div id="tv_np"> +</div> +<div id="tv_playlist"> +</div> diff --git a/templates/show_tv_adminctl.inc.php b/templates/show_tv_adminctl.inc.php new file mode 100644 index 00000000..d3bbcf5e --- /dev/null +++ b/templates/show_tv_adminctl.inc.php @@ -0,0 +1,34 @@ +<?php +/* + + Copyright (c) 2001 - 2006 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. + +*/ +?> +<h3><?php echo _('Admin Controls'); ?></h3> +<?php if (!$playlist->vote_active()) { ?> +<form id="form_playlist"> +<?php echo _('Base Playlist'); ?>: +<?php show_playlist_dropdown(); ?> +<input type="button" onclick="ajaxPost('<?php conf('ajax_url'); ?>?action=tv_activate<?php echo conf('ajax_info'); ?>','form_playlist');return true;" value="<?php echo _('Activate'); ?>" /> +</form> + +<?php } else { ?> + + +<?php } ?> @@ -25,27 +25,28 @@ require_once('lib/init.php'); $dbh = dbh(); $web_path = conf('web_path'); -$htmllang = str_replace("_","-",conf('lang')); -$location = get_location(); + +/* Make sure they have access to this */ +if (!conf('allow_democratic_playback') || $GLOBALS['user']->prefs['play_type'] != 'democratic') { + access_denied(); + exit; +} + +/* Attempt to build the temp playlist */ +$playlist = new tmpPlaylist('-1'); +$action = scrub_in($_REQUEST['action']); + + +switch ($action) { + case 'create_playlist': + + break; + default: + + require_once(conf('prefix') . '/templates/show_tv.inc.php'); + + break; +} // end switch on action + + ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $htmllang; ?>" lang="<?php echo $htmllang; ?>"> - -<head> -<link rel="shortcut icon" href="<?php echo $web_path; ?>/favicon.ico" /> -<meta http-equiv="Content-Type" content="text/html; charset=<?php echo conf('site_charset'); ?>" /> -<title><?php echo conf('site_title'); ?> - <?php echo $location['title']; ?></title> -<link rel="stylesheet" href="<?php echo $web_path; ?>/templates/default.css" type="text/css" /> -<link rel="stylesheet" href="<?php echo $web_path; ?><?php echo conf('theme_path'); ?>/templates/default.css" type="text/css" /> -</head> -<body> -<script src="<?php echo $web_path; ?>/lib/general.js" language="javascript" type="text/javascript"></script> -<script src="<?php echo $web_path; ?>/modules/kajax/ajax.js" language="javascript" type="text/javascript"></script> -<!-- Control DIV --> -<div id="tv_control"> - -</div> -<!-- End Control Div --> -<div id="tv_np"> -<div id="tv_playlist"> -</div> |