summaryrefslogtreecommitdiffstats
path: root/lib/ui.lib.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/ui.lib.php')
-rw-r--r--lib/ui.lib.php155
1 files changed, 76 insertions, 79 deletions
diff --git a/lib/ui.lib.php b/lib/ui.lib.php
index e86aa185..a4668bc4 100644
--- a/lib/ui.lib.php
+++ b/lib/ui.lib.php
@@ -76,10 +76,8 @@ function flip_class($array=0) {
*/
function clear_now_playing() {
- $sql = "TRUNCATE TABLE now_playing";
- $db_results = mysql_query($sql, dbh());
-
- return true;
+ $sql = "TRUNCATE TABLE `now_playing`";
+ $db_results = Dba::query($sql);
} // clear_now_playing
@@ -89,11 +87,11 @@ function clear_now_playing() {
* if it isn't it defines it as a simple return
*/
if (!function_exists('_')) {
- function _($string) {
+ function _($string) {
return $string;
-
} // _
+
} // if _ isn't defined
/**
@@ -223,9 +221,9 @@ function truncate_with_ellipsis($text, $max=27) {
/* 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'), "...");
+ if (iconv_strlen($text, Config::get('site_charset')) > $max) {
+ $text = iconv_substr($text, 0, $max-3, Config::get('site_charset'));
+ $text .= iconv("ISO-8859-1", Config::get('site_charset'), "...");
}
}
@@ -247,7 +245,7 @@ function truncate_with_ellipsis($text, $max=27) {
*/
function show_footer() {
- require_once(conf('prefix') . '/templates/footer.inc');
+ require_once Config::get('prefix') . '/templates/footer.inc';
} // show_footer
@@ -257,10 +255,9 @@ function show_footer() {
*/
function show_now_playing() {
- $dbh = dbh();
- $web_path = conf('web_path');
+ $web_path = Config::get('web_path');
$results = get_now_playing();
- require (conf('prefix') . "/templates/show_now_playing.inc");
+ require Config::get('prefix') . '/templates/show_now_playing.inc';
} // show_now_playing
@@ -296,15 +293,15 @@ function show_play_selected() {
*/
function get_now_playing($filter='') {
- $sql = "SELECT song_id,user FROM now_playing ORDER BY id DESC";
- $db_results = mysql_query($sql, dbh());
+ $sql = "SELECT `song_id`,`user` FROM `now_playing` ORDER BY `id` DESC";
+ $db_results = Dba::query($sql);
$results = array();
/* While we've got stuff playing */
- while ($r = mysql_fetch_assoc($db_results)) {
+ while ($r = Dba::fetch_assoc($db_results)) {
$song = new Song($r['song_id']);
- $song->format_song();
+ $song->format();
$np_user = new User($r['user']);
$results[] = array('song'=>$song,'user'=>$np_user);
} // end while
@@ -468,7 +465,7 @@ function show_all_popular() {
$songs = get_global_popular('song');
$genres = get_global_popular('genre');
- require_once(conf('prefix') . '/templates/show_all_popular.inc.php');
+ require_once Config::get('prefix') . '/templates/show_all_popular.inc.php';
} // show_all_popular
@@ -480,12 +477,12 @@ function show_all_popular() {
* @catagory Display
* @author Karl Vollmer
*/
-function show_all_recent() {
+function show_all_recent($limit='') {
- $artists = get_newest('artist');
- $albums = get_newest('album');
+ $artists = Stats::get_newest('artist',$limit);
+ $albums = Stats::get_newest('album',$limit);
- require_once(conf('prefix') . '/templates/show_all_recent.inc.php');
+ require_once Config::get('prefix') . '/templates/show_all_recent.inc.php';
} // show_all_recent
@@ -497,47 +494,24 @@ function show_all_recent() {
*/
function show_local_catalog_info() {
- $dbh = dbh();
-
/* Before we display anything make sure that they have a catalog */
$query = "SELECT * FROM catalog";
- $db_results = mysql_query($query, $dbh);
- if (!mysql_num_rows($db_results)) {
+ $db_results = Dba::query($query);
+
+ // Make sure we have something to display
+ if (!Dba::num_rows($db_results)) {
show_box_top();
$items[] = "<span align=\"center\" class=\"error\">" . _('No Catalogs Found!') . "</span><br />";
- $items[] = "<a href=\"" . conf('web_path') . "/admin/catalog.php?action=show_add_catalog\">" ._('Add a Catalog') . "</a>";
+ $items[] = "<a href=\"" . Config::get('web_path') . "/admin/catalog.php?action=show_add_catalog\">" ._('Add a Catalog') . "</a>";
show_info_box('','catalog',$items);
show_box_bottom();
return false;
}
- $query = "SELECT count(*) AS songs, SUM(size) AS size, SUM(time) as time FROM song";
- $db_result = mysql_query($query, $dbh);
- $songs = mysql_fetch_assoc($db_result);
-
- $query = "SELECT count(*) FROM album";
- $db_result = mysql_query($query, $dbh);
- $albums = mysql_fetch_row($db_result);
-
- $query = "SELECT count(*) FROM artist";
- $db_result = mysql_query($query, $dbh);
- $artists = mysql_fetch_row($db_result);
-
- $sql = "SELECT count(*) FROM user";
- $db_result = mysql_query($sql, $dbh);
- $users = mysql_fetch_row($db_result);
+ $results = Catalog::get_stats();
- $time = time();
- $last_seen_time = $time - 1200;
- $sql = "SELECT count(DISTINCT s.username) FROM session AS s " .
- "INNER JOIN user AS u ON s.username = u.username " .
- "WHERE s.expire > " . $time . " " .
- "AND u.last_seen > " . $last_seen_time;
- $db_result = mysql_query($sql, $dbh);
- $connected_users = mysql_fetch_row($db_result);
-
- $hours = floor($songs['time']/3600);
- $size = $songs['size']/1048576;
+ $hours = floor($results['time']/3600);
+ $size = $results['size']/1048576;
$days = floor($hours/24);
$hours = $hours%24;
@@ -556,23 +530,30 @@ function show_local_catalog_info() {
$size_unit = "MB";
}
- require(conf('prefix') . "/templates/show_local_catalog_info.inc.php");
+ require Config::get('prefix') . '/templates/show_local_catalog_info.inc.php';
} // show_local_catalog_info
-/*!
- @function img_resize
- @discussion this automaticly resizes the image for thumbnail viewing
- only works on gif/jpg/png this function also checks to make
- sure php-gd is enabled
+/**
+ * img_resize
+ * this automaticly resizes the image for thumbnail viewing
+ * only works on gif/jpg/png this function also checks to make
+ * sure php-gd is enabled
*/
-function img_resize($image,$size,$type){
+function img_resize($image,$size,$type,$album_id) {
/* Make sure they even want us to resize it */
- if (!conf('resize_images')) {
- return false;
+ if (!Config::get('resize_images')) {
+ return $image['art'];
+ }
+ // Already resized
+ if ($image['resized']) {
+ debug_event('using_resized','using resized image for Album:' . $album_id,'2');
+ return $image['art'];
}
+ $image = $image['art'];
+
if (!function_exists('gd_info')) { return false; }
/* First check for php-gd */
@@ -604,6 +585,8 @@ function img_resize($image,$size,$type){
return false;
}
+ ob_start();
+
// determine image type and send it to the client
switch ($type) {
case 'jpg':
@@ -618,6 +601,21 @@ function img_resize($image,$size,$type){
break;
}
+ // Grab this image data and save it into the thumbnail
+ $data = ob_get_contents();
+ ob_end_clean();
+
+ // If our image create failed don't save it, just return
+ if (!$data) {
+ debug_event('IMG_RESIZE','Failed to resize Art from Album:' . $album_id,'3');
+ return $image;
+ }
+
+ // Save what we've got
+ Album::save_resized_art($data,'image/' . $type,$album_id);
+
+ return $data;
+
} // img_resize
/**
@@ -692,14 +690,14 @@ function show_artist_pulldown ($artist_id,$select_name='artist') {
*/
function show_catalog_pulldown ($name='catalog',$style) {
- $sql = "SELECT id,name FROM catalog ORDER BY name";
- $db_result = mysql_query($sql, dbh());
+ $sql = "SELECT `id`,`name` FROM `catalog` ORDER BY `name`";
+ $db_result = Dba::query($sql);
echo "\n<select name=\"" . $name . "\" style=\"" . $style . "\">\n";
- echo "<option value=\"-1\">All</option>\n";
+ echo "<option value=\"-1\">" . _('All') . "</option>\n";
- while ($r = mysql_fetch_assoc($db_result)) {
+ while ($r = Dba::fetch_assoc($db_result)) {
$catalog_name = scrub_out($r['name']);
if ( $catalog == $r['id'] ) {
@@ -722,7 +720,7 @@ function show_catalog_pulldown ($name='catalog',$style) {
*/
function show_submenu($items) {
- require (conf('prefix') . '/templates/subnavbar.inc.php');
+ require Config::get('prefix') . '/templates/subnavbar.inc.php';
} // show_submenu
@@ -750,7 +748,7 @@ function get_location() {
}
/* Sanatize the $_SERVER['PHP_SELF'] variable */
- $source = str_replace(conf('raw_web_path'),"",$source);
+ $source = str_replace(Config::get('raw_web_path'),"",$source);
$location['page'] = preg_replace("/^\/(.+\.php)\/?.*/","$1",$source);
switch ($location['page']) {
@@ -850,12 +848,11 @@ function show_preference_box($preferences) {
* the currently selected and then the size
*
*/
-
function show_genre_pulldown ($name,$selected='',$size=1,$width=0,$style='') {
/* Get them genre hippies */
$sql = "SELECT genre.id,genre.name FROM genre ORDER BY genre.name";
- $db_result = mysql_query($sql, dbh());
+ $db_result = Dba::query($sql);
if ($size > 0) {
$multiple_txt = "multiple=\"multiple\" size=\"$size\"";
@@ -867,7 +864,7 @@ function show_genre_pulldown ($name,$selected='',$size=1,$width=0,$style='') {
echo "<select name=\"" . $name . "[]\" $multiple_txt $style_txt>\n";
echo "\t<option value=\"-1\">" . _("All") . "</option>\n";
- while ($r = mysql_fetch_assoc($db_result)) {
+ while ($r = Dba::fetch_assoc($db_result)) {
if ($width > 0) {
$r['name'] = truncate_with_ellipsis($r['name'],$width);
@@ -1183,7 +1180,7 @@ function show_user_select($name,$selected='',$style='') {
*/
function show_box_top($title='') {
- require (conf('prefix') . '/templates/show_box_top.inc.php');
+ require Config::get('prefix') . '/templates/show_box_top.inc.php';
} // show_box_top
@@ -1194,7 +1191,7 @@ function show_box_top($title='') {
*/
function show_box_bottom() {
- require (conf('prefix') . '/templates/show_box_bottom.inc.php');
+ require Config::get('prefix') . '/templates/show_box_bottom.inc.php';
} // show_box_bottom
@@ -1224,21 +1221,21 @@ function get_user_icon($name,$hover_name='') {
$icon_name = 'icon_' . $name . '.png';
/* Build the image url */
- if (file_exists(conf('prefix') . '/themes/' . $GLOBALS['theme']['path'] . '/images/' . $icon_name)) {
- $img_url = conf('web_path') . conf('theme_path') . '/images/' . $icon_name;
+ if (file_exists(Config::get('prefix') . '/themes/' . Config::get('theme_path') . '/images/' . $icon_name)) {
+ $img_url = Config::get('web_path') . Config::get('theme_path') . '/images/' . $icon_name;
}
else {
- $img_url = conf('web_path') . '/images/' . $icon_name;
+ $img_url = Config::get('web_path') . '/images/' . $icon_name;
}
/* If Hover, then build its url */
if (!empty($hover_name)) {
$hover_icon = 'icon_' . $hover_name . '.png';
- if (file_exists(conf('prefix') . '/themes/' . $GLOBALS['theme']['path'] . '/images/' . $icon_name)) {
- $hov_url = conf('web_path') . conf('theme_path') . '/images/' . $hover_icon;
+ if (file_exists(Config::get('prefix') . '/themes/' . Config::get('theme_path') . '/images/' . $icon_name)) {
+ $hov_url = Config::get('web_path') . Config::get('theme_path') . '/images/' . $hover_icon;
}
else {
- $hov_url = conf('web_path') . '/images/' . $hover_icon;
+ $hov_url = Config::get('web_path') . '/images/' . $hover_icon;
}
$hov_txt = "onMouseOver=\"this.src='$hov_url'; return true;\" onMouseOut=\"this.src='$img_url'; return true;\"";