2 Commits

View File

@@ -1,7 +1,7 @@
<? <?
/* /*
* LMBrowse - Langueur Monotone Browser * LMBrowse - Langueur Monotone Browser
* Copyright (C) 2012-2025 Arnaud G. GIBERT * Copyright (C) 2012-2026 Arnaud G. GIBERT
* mailto:arnaud@rx3.net * mailto:arnaud@rx3.net
* http://www.rx3.org/dvp/lmbrowse * http://www.rx3.org/dvp/lmbrowse
* *
@@ -37,9 +37,7 @@ $time_start = microtime_float();
include "lmbrowse_config.inc"; include "lmbrowse_config.inc";
$lmb_myname="LMBrowse"; $lmb_myname="LMBrowse";
$lmb_tag_tab=explode( " ", "\$Name: lmbrowse-1_8_0-1 $"); $lmb_myver="1.9.0-1";
$lmb_tag_tab=explode( "-", $lmb_tag_tab[1]);
$lmb_myver=strtr( "$lmb_tag_tab[1]-$lmb_tag_tab[2]", "_", ".");
@@ -443,7 +441,7 @@ function lmb_play_validate( $play_type, $play_id, $play_priority)
/* Make Tab */ /* Make Tab */
/*--------------------------------------------------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------------------------------------------------*/
function lmb_make_tab( $tab_id, $css_id, $tab_side, $logo_path, $data, $skin_path) function lmb_make_tab( $tab_id, $css_id, $tab_side, $logo_path, $img_path, $data, $skin_path)
{ {
$tab_class = "sprite-tab-{$tab_id}-{$tab_side}"; $tab_class = "sprite-tab-{$tab_id}-{$tab_side}";
@@ -459,9 +457,16 @@ function lmb_make_tab( $tab_id, $css_id, $tab_side, $logo_path, $data, $skin_pat
$tab_tag = "<td class=\"{$css_id}0\"><div class=\"{$tab_class}\"></div></td>"; $tab_tag = "<td class=\"{$css_id}0\"><div class=\"{$tab_class}\"></div></td>";
if( $logo_path[0] == "/") if( $logo_path[0] == "/")
{
if( $img_path[0] == "/")
{
$logo_tag = "<td class=\"logo-{$logo_side}\" style=\"width: 20%;\"><img class=\"button-item\" src=\"{$logo_path}\" alt=\"\" onclick=\"openModal('{$img_path}')\" style=\"cursor:pointer\"/></td>";
}
else
{ {
$logo_tag = "<td class=\"logo-{$logo_side}\" style=\"width: 20%;\"><img src=\"{$logo_path}\" alt=\"\"/></td>"; $logo_tag = "<td class=\"logo-{$logo_side}\" style=\"width: 20%;\"><img src=\"{$logo_path}\" alt=\"\"/></td>";
} }
}
else else
{ {
$logo_tag = "<td class=\"logo-{$logo_side}\" style=\"width: 20%;\"><div class=\"{$logo_path}\"></div></td>"; $logo_tag = "<td class=\"logo-{$logo_side}\" style=\"width: 20%;\"><div class=\"{$logo_path}\"></div></td>";
@@ -699,6 +704,40 @@ function lmb_header( $page_id, $page_name, $page_title, $description, $keywords,
echo " <body style=\"background-image:url(''); background-repeat:repeat;\"> echo " <body style=\"background-image:url(''); background-repeat:repeat;\">
"; ";
/* Modal Window */
echo " <script type=\"text/javascript\" class=\"init\">
function openModal(src)
{
document.getElementById('modal-img').src = src;
document.getElementById('overlay').style.display = 'block';
}
function closeModal()
{
document.getElementById('overlay').style.display = 'none';
}
// Close when clicking the dark backdrop
document.getElementById('overlay').addEventListener('click', function(e)
{
if (e.target === this) closeModal();
});
// Close with Escape key
document.addEventListener('keydown', e =>
{
if (e.key === 'Escape') closeModal();
});
</script>
";
echo " <div id=\"overlay\" class=\"overlay\">
<div class=\"modal\">
<button class=\"modal\" onclick=\"closeModal()\">✕</button>
<img id=\"modal-img\" class=\"modal\" src=\"\" alt=\"\">
</div>
</div>
";
echo " <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"{$mw_tag}\"> echo " <table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"{$mw_tag}\">
<tbody> <tbody>
@@ -924,7 +963,7 @@ function lmb_welcome_tab( $skin_path)
$data = ob_get_contents(); $data = ob_get_contents();
ob_end_clean(); ob_end_clean();
lmb_make_tab( "welcome", "welcome", "l", "{$skin_path}/images/lm-logo1-border-220.png", $data, $skin_path); lmb_make_tab( "welcome", "welcome", "l", "{$skin_path}/images/lm-logo1-border-220.png", "", $data, $skin_path);
} }
@@ -1090,7 +1129,7 @@ function lmb_news_tab( $skin_path)
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "news", "news", "r", "{$skin_path}/images/lm_logo2-border-220.png", $data, $skin_path); // lmb_make_tab( "news", "news", "r", "{$skin_path}/images/lm_logo2-border-220.png", $data, $skin_path);
lmb_make_tab( "news", "news", "r", "sprite-lm-logo2-border-220", $data, $skin_path); lmb_make_tab( "news", "news", "r", "sprite-lm-logo2-border-220", "", $data, $skin_path);
} }
@@ -1447,7 +1486,7 @@ function lmb_about_tab( $skin_path)
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "about", "about", "l", "{$skin_path}/images/lm_logo2-border-220.png", $data, $skin_path); // lmb_make_tab( "about", "about", "l", "{$skin_path}/images/lm_logo2-border-220.png", $data, $skin_path);
lmb_make_tab( "about", "about", "l", "sprite-lm-logo2-border-220", $data, $skin_path); lmb_make_tab( "about", "about", "l", "sprite-lm-logo2-border-220", "", $data, $skin_path);
} }
@@ -1494,7 +1533,7 @@ function lmb_history_tab( $skin_path)
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "history", "history", "r", "{$skin_path}/images/lm_logo1-border-220.png", $data, $skin_path); // lmb_make_tab( "history", "history", "r", "{$skin_path}/images/lm_logo1-border-220.png", $data, $skin_path);
lmb_make_tab( "history", "history", "r", "sprite-lm-logo1-border-220", $data, $skin_path); lmb_make_tab( "history", "history", "r", "sprite-lm-logo1-border-220", "", $data, $skin_path);
} }
@@ -1658,7 +1697,7 @@ function lmb_playlist( $play_type, $side, $skin_path)
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "{$play_type}", "play", $side, "{$skin_path}/images/lm_logo1-96.png", $data, $skin_path); // lmb_make_tab( "{$play_type}", "play", $side, "{$skin_path}/images/lm_logo1-96.png", $data, $skin_path);
lmb_make_tab( "{$play_type}", "play", $side, "sprite-lm-logo1-96", $data, $skin_path); lmb_make_tab( "{$play_type}", "play", $side, "sprite-lm-logo1-96", "", $data, $skin_path);
} }
@@ -1728,7 +1767,7 @@ function lmb_play_intro( $play_type, $play_id, $play_priority, $skin_path)
<table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\"> <table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\">
<tbody> <tbody>
<tr> <tr>
<td class=\"cover\" style=\"width: 266px; height: 266px;\"><a href=\"{$cover_path}-1-1024.png\"><img class=\"button-item-big\" src=\"{$cover_path}-1-400.png\" alt=\"\"/></a></td> <td class=\"cover\" style=\"width: 266px; height: 266px;\"><img class=\"button-item-big\" src=\"{$cover_path}-1-400.png\" alt=\"\" onclick=\"openModal('{$cover_path}-1-1024.png')\" style=\"cursor:pointer\"/></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -1763,7 +1802,7 @@ function lmb_play_intro( $play_type, $play_id, $play_priority, $skin_path)
<table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\"> <table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\">
<tbody> <tbody>
<tr> <tr>
<td class=\"logo\"><img src=\"{$logo_path}-1-128.png\" alt=\"\"/><br/></td> <td class=\"logo\"><img class=\"button-item\" src=\"{$logo_path}-1-128.png\" alt=\"\" onclick=\"openModal('{$logo_path}-1-1024.png')\" style=\"cursor:pointer\"/><br/></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -1772,7 +1811,7 @@ function lmb_play_intro( $play_type, $play_id, $play_priority, $skin_path)
<table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\"> <table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\">
<tbody> <tbody>
<tr> <tr>
<td class=\"cover\" style=\"width: 266px; height: 266px;\"><a href=\"{$cover_path}-2-1024.png\"><img class=\"button-item-big\" src=\"{$cover_path}-2-400.png\" alt=\"\"/></a></td> <td class=\"cover\" style=\"width: 266px; height: 266px;\"><img class=\"button-item-big\" src=\"{$cover_path}-2-400.png\" alt=\"\" onclick=\"openModal('{$cover_path}-2-1024.png')\" style=\"cursor:pointer\"/></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -2151,7 +2190,7 @@ function lmb_tracklist( $play_type, $play_id, $play_priority, $skin_path)
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "tracks", "tracks", "r", "{$skin_path}/images/lm_logo1-96.png", $data, $skin_path); // lmb_make_tab( "tracks", "tracks", "r", "{$skin_path}/images/lm_logo1-96.png", $data, $skin_path);
lmb_make_tab( "tracks", "tracks", "r", "sprite-lm-logo1-96", $data, $skin_path); lmb_make_tab( "tracks", "tracks", "r", "sprite-lm-logo1-96", "", $data, $skin_path);
} }
@@ -2305,7 +2344,7 @@ function lmb_coverlist( $play_type, $play_id, $play_priority, $skin_path)
$css_row = $i % 2 + 1; $css_row = $i % 2 + 1;
$entry_tag = " <tr class=\"covers{$css_row}\" style=\"height: {$height}px\"> $entry_tag = " <tr class=\"covers{$css_row}\" style=\"height: {$height}px\">
<td class=\"covers1\"><a href=\"{$file_tab[0]["url"]}\"><img class=\"button-item\" src=\"{$cover_path}-{$sheet_tab[$i]}-icon.png\" alt=\"\"/></a></td> <td class=\"covers1\"><img class=\"button-item\" src=\"{$cover_path}-{$sheet_tab[$i]}-icon.png\" alt=\"\" onclick=\"openModal('{$file_tab[0]["url"]}')\" style=\"cursor:pointer\"/></td>
<td class=\"covers2\">&nbsp;{$sheet_name}&nbsp;</td>"; <td class=\"covers2\">&nbsp;{$sheet_name}&nbsp;</td>";
lmb_file_entry_print( $file_tab, "covers3", "covers4", "{$entry_tag}", count( $file_tab)); lmb_file_entry_print( $file_tab, "covers3", "covers4", "{$entry_tag}", count( $file_tab));
@@ -2316,7 +2355,7 @@ function lmb_coverlist( $play_type, $play_id, $play_priority, $skin_path)
$data = ob_get_contents(); $data = ob_get_contents();
ob_end_clean(); ob_end_clean();
lmb_make_tab( "covers", "covers", "l", "/{$logo_path}-2-128.png", $data, $skin_path); lmb_make_tab( "covers", "covers", "l", "/{$logo_path}-2-128.png", "/{$logo_path}-2-1024.png", $data, $skin_path);
} }
@@ -2511,7 +2550,7 @@ ${title_tag} <td class=\"videos4\">&nbs
$data = ob_get_contents(); $data = ob_get_contents();
ob_end_clean(); ob_end_clean();
lmb_make_tab( "videos", "videos", "r", "/{$logo_path}-1-128.png", $data, $skin_path); lmb_make_tab( "videos", "videos", "r", "/{$logo_path}-1-128.png", "/{$logo_path}-1-1024.png", $data, $skin_path);
} }
@@ -2642,7 +2681,7 @@ ${title_tag} <td class=\"extras4\">&nbs
$css_row = $i % 2 + 1; $css_row = $i % 2 + 1;
$entry_tag = " <tr class=\"extras{$css_row}\" style=\"height: {$height}px\"> $entry_tag = " <tr class=\"extras{$css_row}\" style=\"height: {$height}px\">
<td class=\"extras1\"><a href=\"{$file_tab[2]["url"]}\"><img class=\"button-item\" src=\"{$extra_prefix}-icon.png\" alt=\"\"/></a></td> <td class=\"extras1\"><img class=\"button-item\" src=\"{$extra_prefix}-icon.png\" alt=\"\" onclick=\"openModal('{$file_tab[array_key_last($file_tab)]["url"]}')\" style=\"cursor:pointer\"/></td>
<td class=\"extras2\">&nbsp;{$extra_type}&nbsp;</td> <td class=\"extras2\">&nbsp;{$extra_type}&nbsp;</td>
<td class=\"extras3\">&nbsp;{$extra_subid}&nbsp;</td> <td class=\"extras3\">&nbsp;{$extra_subid}&nbsp;</td>
<td class=\"extras4\">&nbsp;{$extra_format}&nbsp;</td> <td class=\"extras4\">&nbsp;{$extra_format}&nbsp;</td>
@@ -2656,7 +2695,7 @@ ${title_tag} <td class=\"extras4\">&nbs
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "extras", "extras", "l", "{$skin_path}/images/lm_logo1-96.png", $data, $skin_path); // lmb_make_tab( "extras", "extras", "l", "{$skin_path}/images/lm_logo1-96.png", $data, $skin_path);
lmb_make_tab( "extras", "extras", "l", "sprite-lm-logo1-96", $data, $skin_path); lmb_make_tab( "extras", "extras", "l", "sprite-lm-logo1-96", "", $data, $skin_path);
} }
@@ -2896,7 +2935,7 @@ function lmb_play_page( $play_type, $play_id, $play_priority)
$play_path = lmb_play_path_get( $play_type, $play_id, $play_priority); $play_path = lmb_play_path_get( $play_type, $play_id, $play_priority);
if( file_exists( $play_path)) if( file_exists( $play_path) && ( ! file_exists( "{$play_path}/.hide" ) || lmb_admin_is()))
{ {
$play_info = lmb_play_info_get( $play_type, $play_id, $play_priority); $play_info = lmb_play_info_get( $play_type, $play_id, $play_priority);
@@ -2986,7 +3025,7 @@ function lmb_tracklist_body( $skin_path)
ob_end_clean(); ob_end_clean();
// lmb_make_tab( "tracks", "tracks", "r", "{$skin_path}/images/lm_logo2-96.png", $data, $skin_path); // lmb_make_tab( "tracks", "tracks", "r", "{$skin_path}/images/lm_logo2-96.png", $data, $skin_path);
lmb_make_tab( "tracks", "tracks", "r", "sprite-lm-logo2-96", $data, $skin_path); lmb_make_tab( "tracks", "tracks", "r", "sprite-lm-logo2-96", "", $data, $skin_path);
} }
@@ -3403,7 +3442,7 @@ function lmb_track_intro( $play_type, $play_id, $play_priority, $track_id, $trac
<table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\"> <table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\">
<tbody> <tbody>
<tr> <tr>
<td class=\"cover\" style=\"width: {$border2_size}px; height: {$border2_size}px;\"><a href=\"{$cover_path}-1-1024.png\"><img class=\"button-item-big\" src=\"{$cover_path}-1-{$cover_size}.png\" alt=\"\"/></a></td> <td class=\"cover\" style=\"width: {$border2_size}px; height: {$border2_size}px;\"><img class=\"button-item-big\" src=\"{$cover_path}-1-{$cover_size}.png\" alt=\"\" onclick=\"openModal('{$cover_path}-1-1024.png')\" style=\"cursor:pointer\"/></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -3474,7 +3513,7 @@ function lmb_track_intro( $play_type, $play_id, $play_priority, $track_id, $trac
<table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\"> <table class=\"list\" border=\"0\" cellpadding=\"0\" cellspacing=\"10\" style=\"\">
<tbody> <tbody>
<tr> <tr>
<td class=\"cover\" style=\"width: {$border2_size}px; height: {$border2_size}px;\"><a href=\"{$cover_path}-2-1024.png\"><img class=\"button-item-big\" src=\"{$cover_path}-2-{$cover_size}.png\" alt=\"\"/></a></td> <td class=\"cover\" style=\"width: {$border2_size}px; height: {$border2_size}px;\"><img class=\"button-item-big\" src=\"{$cover_path}-2-{$cover_size}.png\" alt=\"\" onclick=\"openModal('{$cover_path}-2-1024.png')\" style=\"cursor:pointer\"/></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -3626,7 +3665,7 @@ Your browser does not support the video tag.
$data = ob_get_contents(); $data = ob_get_contents();
ob_end_clean(); ob_end_clean();
lmb_make_tab( "video", "videos", "r", "/{$logo_path}-1-128.png", $data, $skin_path); lmb_make_tab( "video", "videos", "r", "/{$logo_path}-1-128.png", "/{$logo_path}-1-1024.png", $data, $skin_path);
echo " </tr> echo " </tr>
<tr><td><br/><br/><br/><br/><br/></td></tr> <tr><td><br/><br/><br/><br/><br/></td></tr>
@@ -3817,6 +3856,9 @@ function lmb_track_page( $play_type, $play_id, $play_priority, $track_id)
$play_path = lmb_play_path_get( $play_type, $play_id, $play_priority); $play_path = lmb_play_path_get( $play_type, $play_id, $play_priority);
if( file_exists( $play_path) && ( ! file_exists( "{$play_path}/.hide" ) || lmb_admin_is()))
{
$skin_path = "{$play_path}/skin"; $skin_path = "{$play_path}/skin";
$track_title = lmb_title_get( $play_type, $play_id, $play_priority, $track_id); $track_title = lmb_title_get( $play_type, $play_id, $play_priority, $track_id);
$track_fulltitle = lmb_fulltitle_get( $play_type, $play_id, $play_priority, $track_id); $track_fulltitle = lmb_fulltitle_get( $play_type, $play_id, $play_priority, $track_id);
@@ -3825,6 +3867,11 @@ function lmb_track_page( $play_type, $play_id, $play_priority, $track_id)
lmb_track_body( $play_type, $play_id, $play_priority, $track_id, $skin_path); lmb_track_body( $play_type, $play_id, $play_priority, $track_id, $skin_path);
lmb_footer( $skin_path); lmb_footer( $skin_path);
} }
else
{
lmb_redirect_page( "");
}
}