name] = $r->value; } // end while sys prefs conf($results, 1); unset($results); if (!$username) { $username = $_SESSION['userdata']['username']; } $user = new User($username); $sql = "SELECT preferences.name,user_preference.value FROM preferences,user_preference WHERE user_preference.user='$user->id'" . " AND user_preference.preference=preferences.id"; $db_results = mysql_query($sql, dbh()); while ($r = mysql_fetch_object($db_results)) { $results[$r->name] = $r->value; } unset($results['user'], $results['id']); conf($results, 1); } // get_preferences /*! @function flip_class @discussion takes an array of 2 class names and flips them back and forth and then echo's out [0] */ function flip_class($array=0) { static $classes = array(); if ($array) { $classes = $array; } else { $classes = array_reverse($classes); return $classes[0]; } } // flip_class /*! @function clear_now_playing @discussion Clears the now playing information incase something has gotten stuck in there */ function clear_now_playing() { $sql = "DELETE FROM now_playing"; $db_results = mysql_query($sql, dbh()); return true; } // clear_now_playing /*! @function show_tool_box @discussion shows the toolbox */ function show_tool_box ($title, $items) { include(conf('prefix') . "/templates/tool_box.inc"); }// show_tool_box /*! @function show_box @discussion shows a generic box */ function show_box($title,$items) { include(conf('prefix') . "/templates/show_box.inc"); } // show_box /*! @function show_menu_items @discussion shows menu items */ function show_menu_items ($high) { include(conf('prefix') . "/templates/menu.inc"); } // show_menu_items /*! @function _ @discussion checks to see if the alias _ is defined if it isn't it defines it as a simple return */ if (!function_exists('_')) { function _($string) { return $string; } // _ } // if _ isn't defined /*! @function show_playlist_menu @discussion playlist functions */ function show_playlist_menu () { echo "
" . _("Playlist Actions") . ": " . _("New") ." | "; echo " " . _("View All") . " | "; echo " " . _("Import") . ""; echo "

"; } // show_playlist_menu /*! @function show_admin_menu @discussion shows the admin menu */ function show_admin_menu ($admin_highlight) { include(conf('prefix') . "/templates/admin_menu.inc"); } // show_admin_menu /*! @function access_denied @discussion throws an error if they try to do something that they aren't allowed to */ function access_denied() { show_template('style'); show_footer(); echo "


"; echo "
Error Access Denied
\n"; show_footer(); exit(); } // access_denied /*! @function show_users @discussion shows all users (admin function) */ function show_users () { $dbh = dbh(); // Setup the View Ojbect $view = new View(); $view->import_session_view(); // if we are returning if ($_REQUEST['keep_view']) { $view->initialize(); } // If we aren't keeping the view then initlize it else { $sql = "SELECT username FROM user"; $db_results = mysql_query($sql, $dbh); $total_items = mysql_num_rows($db_results); if ($match != "Show_all") { $offset_limit = $_SESSION['userdata']['offset_limit']; } $view = new View($sql, 'admin/users.php','fullname',$total_items,$offset_limit); } $db_result = mysql_query($view->sql, $dbh); require(conf('prefix') . "/templates/show_users.inc"); } // show_users() /*! @function return_referer @discussion returns the script part of the referer address passed by the web browser this is not %100 accurate */ function return_referer() { $web_path = substr(conf('web_path'),0,strlen(conf('web_path'))-1-strlen($_SERVER['SERVER_PORT'])) . "/"; $next = str_replace($web_path,"",$_SERVER['HTTP_REFERER']); // If there is more than one :// we know it's fudged // and just return the index if (substr_count($next,"://") > 1) { return "index.php"; } return $next; } // return_referer /*! @function show_alphabet_list @discussion shows the A-Z,0-9 lists for albums and artist pages */ function show_alphabet_list ($type,$script="artist.php",$selected="false") { $list = array(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,1,2,3,4,5,6,7,8,9,"0"); $style_name = "style_" . strtolower($selected); ${$style_name} = "style=\"font-weight:bold;\""; echo "
"; foreach ($list as $l) { $style_name = "style_" . strtolower($l); echo "$l | \n"; } echo " " . _("Browse") . " | \n"; if ($script == "albums.php") { echo " " . _("Show w/o art") . " | \n"; } // if we are on the albums page echo " " . _("Show all") . ""; echo "
\n"; } // show_alphabet_list /*! @function show_local_control @discussion shows the controls for localplay */ function show_local_control () { require_once(conf('prefix') . "/templates/show_localplay.inc"); } // show_local_control /*! @function truncate_with_ellipse @discussion truncates a text file to specified length by adding thre dots (ellipse) to the end (Thx Nedko Arnaudov) */ function truncate_with_ellipse($text, $max=27) { /* If we want it to be shorter than three, just throw it back */ if ($max > 3) { /* Make sure the functions exist before doing the iconv mojo */ if (function_exists('iconv') && function_exists('iconv_substr') && function_exists('iconv_strlen')) { if (iconv_strlen($text, conf('site_charset')) > $max) { $text = iconv_substr($text, 0, $max-3, conf('site_charset')); $text .= iconv("ISO-8859-1", conf('site_charset'), "..."); } } /* Do normal substr if we don't have iconv */ else { if (strlen($text) > $max) { $text = substr($text,0,$max-3)."..."; } } // else no iconv } // else greater than 3 return $text; } // truncate_with_ellipse /*! @function show_footer @discussion shows the footer of the page */ function show_footer() { $class = "table-header"; echo "


 
"; } // show_footer /*! @function show_now_playing @discussion shows the now playing template */ function show_now_playing() { $dbh = dbh(); $web_path = conf('web_path'); $results = get_now_playing(); require (conf('prefix') . "/templates/show_now_playing.inc"); } // show_now_playing /*! @function show_user_registration @discussion this function is called for a new user registration @author Terry */ //function show_user_registration ($id, $username, $fullname, $email, $access, $type, $error) { //FIXME: See above function show_user_registration ($values=array()) { require (conf('prefix') . "/templates/show_user_registration.inc.php"); } // show_user_registration /*! @function show_edit_profile @discussion shows a single user profile for editing */ function show_edit_profile($username) { $this_user = new User($username); require (conf('prefix') . "/templates/show_user.inc.php"); } // show_edit_profile /*! @function show_playlist @discussion this shows the current playlist */ function show_playlist($playlist_id) { /* Create the Playlist */ $playlist = new Playlist($playlist_id); $song_ids = $playlist->get_songs(); if (count($song_ids) > 0) { show_songs($song_ids, $playlist->id); } else { echo "

" . _("No songs in this playlist.") . "

\n"; } } // show_playlist /*! @function show_play_selected @discussion this shows the playselected/add to playlist box, which includes a little javascript */ function show_play_selected() { require (conf('prefix') . "/templates/show_play_selected.inc.php"); } // show_play_selected /*! @function get_now_playing @discussion gets the now playing information */ function get_now_playing() { $sql = "SELECT song_id,user_id FROM now_playing ORDER BY start_time DESC"; $db_results = mysql_query($sql, dbh()); while ($r = mysql_fetch_assoc($db_results)) { $song = new Song($r['song_id']); $song->format_song(); $np_user = new User(0,$r['user_id']); $results[] = array('song'=>$song,'user'=>$np_user); } // end while return $results; } // get_now_playing /*! @function show_clear @discussion this is a hack because of the float mojo */ function show_clear() { echo "\n
 
\n"; } // show_clear ?>