Ticket #2301: mythgallery.patch
File mythgallery.patch, 29.3 KB (added by , 18 years ago) |
---|
-
includes/images.php
1 <?php 2 3 class Image { 4 5 function Image( $_class,$_subtype,$_filename ) { 6 $this->class = $_class; 7 $thumb_max_w = 600; 8 $thumb_max_h = 120; 9 $full_max_w = 600; 10 $full_max_h = 550; 11 $icon_max_w = 32; 12 $icon_max_h = 44; 13 $video_max_h = 100; 14 $video_max_w = 100; 15 $path = 'data/gallery/'; 16 $missing = skin_url."images/missing.gif"; 17 $missing_cache = "data/cache/gallery/other/missing.gif"; 18 19 switch($_class) { 20 case "gallery-thumb": 21 $file = basename($_filename); 22 $outfile = 'data/cache/gallery/'.$_subtype.'/'.$file; 23 $max_w = $thumb_max_w; 24 $max_h = $thumb_max_h; 25 $this->uri = '?show_image='.urldecode($file.'&moverse='.$_subtype); 26 $this->src = urldecode($outfile); 27 $this->alt = $file; 28 break; 29 case "gallery-folder": 30 $file = basename($_filename); 31 $outfile='data/cache/gallery/'.$_subtype.'/'.$file.'.jpg'; 32 $max_w = $thumb_max_w; 33 $max_h = $thumb_max_h; 34 if ($_subtype=="") {$uri = $file;} 35 else {$uri = $_subtype.'/'.$file;} 36 $this->uri = '?moverse='.urldecode($uri); 37 $this->alt = $file.'.jpg'; 38 $thumbfile = $path.'/'.$_subtype.'/.thumbcache/'.$file; 39 if ( !file_exists( $thumbfile ) ) { 40 $_filename = $missing; 41 $this->src = $missing_cache; 42 $outfile = $missing_cache; 43 $_subtype = "other"; 44 } else { 45 $_filename = $thumbfile; 46 $this->src = urldecode($outfile); 47 } 48 break; 49 case "gallery-fullsize": 50 $file = basename($_filename); 51 $outfile = 'data/cache/gallery/'.$_subtype.'/fullsize/'.$file; 52 $this->src = urldecode($outfile); 53 $this->alt = $file; 54 #uri points to raw (real full size) image for save as link 55 $this->uri = $path.$_subtype.'/'.$file; 56 $max_w = $full_max_w; 57 $max_h = $full_max_h; 58 break; 59 case "gallery-video": 60 $file = basename($_filename); 61 $outfile = 'data/cache/gallery/'.$_subtype.'/'.$file; 62 copy($_filename,$outfile); #Block attempting a cache 63 $this->uri = urldecode('data/cache/gallery/'.$_subtype.'/'.$file); 64 $this->alt = $file; 65 $this->src = skin_url.'img/video.png'; 66 $max_w = $video_max_w; 67 $max_h = $video_max_h; 68 break; 69 case "icon": 70 $outfile = 'data/cache/icons/'.basename($_filename); 71 $max_w = $icon_max_w; 72 $max_h = $icon_max_h; 73 break; 74 case "video": 75 $outfile = 'data/cache/video/'.basename($_filename); 76 $max_w = $video_max_w; 77 $max_h = $video_max_h; 78 break; 79 } 80 if (!file_exists($outfile)) $this->cache_image($outfile,$max_w,$max_h,$_filename); 81 } 82 83 84 function cache_image($_outfile, $max_w, $max_h, $_infile) { 85 list($width, $height, $imgtype, $attr) = getimagesize($_infile); 86 87 if (($imgtype==2) || ($imgtype==1) || ($imgtype==3) || ($imgtype==6)) 88 { 89 if ($imgtype == 6)$im = @imagecreatefrombmp($_infile); 90 if ($imgtype == 3)$im = @imagecreatefrompng($_infile); 91 if ($imgtype == 2)$im = @imagecreatefromjpeg($_infile); 92 if ($imgtype == 1)$im = @imagecreatefromgif($_infile); 93 if (!$im) { /* See if it failed */ 94 $im = imagecreate($max_w, $max_h); /* Create a blank image */ 95 $bgc = imagecolorallocate($im, 255, 255, 255); 96 $tc = imagecolorallocate($im, 0, 0, 0); 97 imagefilledrectangle($im, 0, 0, 150, 30, $bgc); 98 imagestring($im, 1, 5, 5, "Error opening image!", $tc); 99 } 100 else 101 { 102 if (($height/$width)<($max_h/$max_w)){ 103 // constrain by width 104 $new_height = $height*$max_w/$width; 105 $new_width = $max_w; 106 } else { 107 $new_width = $width*$max_h/$height; 108 $new_height = $max_h; 109 } 110 $tim = imagecreatetruecolor($new_width,$new_height); 111 } 112 imagecopyresampled($tim,$im,0,0,0,0,$new_width,$new_height,$width,$height); 113 $directory = dirname($_outfile); 114 if (!is_dir(dirname($_outfile))) mkdir(dirname($_outfile)); 115 switch ($imgtype) { 116 case 2: 117 imagejpeg($tim,$_outfile,100); 118 break; 119 case 1: 120 imagegif($tim,$_outfile,100); 121 break; 122 case 3: 123 imagepng($tim,$_outfile,100); 124 break; 125 case 6: 126 imagebmp($tim,$_outfile,100); 127 break; 128 } 129 imagedestroy($tim); 130 imagedestroy($im); 131 } 132 } 133 } 134 135 ?> -
includes/db_update.php
Property changes on: includes/images.php ___________________________________________________________________ Name: svn:executable + *
18 18 // What version does the database think it is? 19 19 $db_vers = setting('WebDBSchemaVer'); 20 20 21 // The database is too new22 if ($db_vers > db_version)23 trigger_error("Current database version of $db_vers is newer than"24 ." the code base version ".db_version,25 FATAL);26 27 // Older database that needs to be upgraded28 if ($db_vers < db_version) {29 switch ($db_vers) {30 // No version, no database31 case 0:32 $db->query('CREATE TABLE mythweb_sessions (33 id VARCHAR(128) PRIMARY KEY NOT NULL DEFAULT "",34 modified TIMESTAMP,35 data BLOB NOT NULL DEFAULT "",36 INDEX (modified)37 )');38 setting('WebDBSchemaVer', null, ++$db_vers);39 // Moving settings into the database40 case 1:41 setting('WebPrefer_Channum', null, 1);42 setting('WebDBSchemaVer', null, ++$db_vers);43 // All other numbers should run their changes sequentially44 #case 2:45 # # do something to upgrade the database here46 # $db_vers++;47 }48 }49 -
skins/default/gallery.css
1 .gallery-folder { 2 float: left; 3 margin: 9px; 4 padding: 16px; 5 border: 3px outset black; 6 -moz-border-radius: 9px; 7 background: #347; 8 text-align: center; 9 font-size: 10pt; 10 font-weight: bold; 11 } 12 .gallery-folder a { 13 border: none; 14 } 15 .gallery-folder a:hover { 16 background-color: #458; 17 } 18 19 .gallery-thumb { 20 float: left; 21 margin: 9px; 22 padding: 18px; 23 border: 1px outset black; 24 -moz-border-radius: 9px; 25 background: #347; 26 text-align: center; 27 font-size: 10pt; 28 } 29 30 .gallery-fullsize { 31 32 margin: 14px; 33 padding: 20px; 34 text-align: center; 35 font-size: 12pt; 36 } 37 .gallery-video { 38 float: left; 39 margin: 9px; 40 padding: 18px; 41 border: 1px outset black; 42 -moz-border-radius: 9px; 43 background: #347; 44 text-align: center; 45 font-size: 10pt; 46 } 47 .image img { 48 border: 2px solid black; 49 display: inline !important; 50 } 51 52 div.clearer {clear: left; line-height: 0; height: 0;} 53 54 .page_start { } 55 56 #page_content { 57 margin-left: 15px; 58 margin-right: 15px; 59 margin-bottom: 15px; 60 background-color: #002030; 61 border-top: 2px solid #002520; 62 border-right: 2px solid #002520; 63 border-bottom: 2px solid #002630; 64 border-left: 2px solid #002630; 65 padding: 10px; 66 font-size: 8pt; 67 min-width: 800px; 68 color: white; 69 } 70 71 72 #images { 73 margin: 0px 10px; 74 padding: 10px; 75 white-space: nowrap; 76 } 77 #images a { 78 float: left; 79 margin: 0px 5px; 80 padding: 5px; 81 background-color: #347; 82 border-top: 1px solid #999; 83 border-right: 1px solid #003; 84 border-bottom: 1px solid #000; 85 border-left: 1px solid #AAA; 86 -moz-border-radius: 8px; 87 text-align: center; 88 } 89 #images a:hover { 90 background-color: #458; 91 } 92 #mainimg { 93 display: inline !important; 94 margin: 0px 2px; 95 padding: 17px; 96 -moz-border-radius: 9px; 97 background-color: #236; 98 } 99 #images img { 100 border: none; 101 display: inline !important; 102 } 103 104 .toolbar { 105 border: none; 106 padding: 0px; 107 margin: 0px; 108 font-size: 10pt; 109 min-width: 786px; 110 vertical-align: top; 111 color: white; 112 } 113 .toolbar a { 114 border: none; 115 padding: 0px; 116 margin: 0px; 117 font-size: 10pt; 118 color: white; 119 vertical-align: top; 120 } 121 122 .toolbar img { 123 border: none; 124 padding: 0px; 125 margin: 0px; 126 vertical-align: top; 127 behavior: url("js/pngbehavior.htc"); 128 } 129 130 .toolbar-up { 131 float: left; 132 border: none; 133 padding: 0px; 134 margin: 0px; 135 font-size: 10pt; 136 color: white; 137 min-width: 16px; 138 vertical-align: top; 139 } 140 141 .toolbar-mid { 142 float: left; 143 border: none; 144 padding: 0px; 145 margin: 0px; 146 font-size: 10pt; 147 vertical-align: top; 148 width: 70%; 149 text-align: center; 150 } 151 152 .toolbar-spacer { 153 float: left; 154 border: none; 155 border-color: white; 156 padding: 0px; 157 margin: 0px; 158 font-size: 10pt; 159 color: white; 160 vertical-align: top; 161 width: 14%; 162 } -
skins/grey/gallery.css
1 .gallery-folder { 2 float: left; 3 margin: 9px; 4 padding: 16px; 5 border: 3px outset black; 6 -moz-border-radius: 9px; 7 background: #555; 8 text-align: center; 9 font-size: 10pt; 10 font-weight: bold; 11 } 12 .gallery-folder a { 13 border: none; 14 } 15 .gallery-folder a:hover { 16 background-color: #555; 17 } 18 19 .gallery-thumb { 20 float: left; 21 margin: 9px; 22 padding: 18px; 23 border: 1px outset black; 24 -moz-border-radius: 9px; 25 background: #555; 26 text-align: center; 27 font-size: 10pt; 28 } 29 30 .gallery-fullsize { 31 32 margin: 14px; 33 padding: 20px; 34 text-align: center; 35 font-size: 12pt; 36 } 37 .gallery-video { 38 float: left; 39 margin: 9px; 40 padding: 18px; 41 border: 1px outset black; 42 -moz-border-radius: 9px; 43 background: #555; 44 text-align: center; 45 font-size: 10pt; 46 } 47 .image img { 48 border: 2px solid black; 49 display: inline !important; 50 } 51 52 div.clearer {clear: left; line-height: 0; height: 0;} 53 54 .page_start { } 55 56 #page_content { 57 margin-left: 15px; 58 margin-right: 15px; 59 margin-bottom: 15px; 60 background-color: #222; 61 border-top: 2px solid #333222; 62 border-right: 2px solid #333222; 63 border-bottom: 2px solid #333333; 64 border-left: 2px solid #333333; 65 padding: 10px; 66 font-size: 8pt; 67 min-width: 800px; 68 color: white; 69 } 70 71 72 #images { 73 margin: 0px 10px; 74 padding: 10px; 75 white-space: nowrap; 76 } 77 #images a { 78 float: left; 79 margin: 0px 5px; 80 padding: 5px; 81 background-color: #444; 82 border-top: 1px solid #999; 83 border-right: 1px solid #003; 84 border-bottom: 1px solid #000; 85 border-left: 1px solid #AAA; 86 -moz-border-radius: 8px; 87 text-align: center; 88 } 89 #images a:hover { 90 background-color: #666; 91 } 92 #mainimg { 93 display: inline !important; 94 margin: 0px 2px; 95 padding: 17px; 96 -moz-border-radius: 9px; 97 background-color: #444; 98 } 99 #images img { 100 border: none; 101 display: inline !important; 102 } 103 104 .toolbar { 105 border: none; 106 padding: 0px; 107 margin: 0px; 108 font-size: 10pt; 109 min-width: 786px; 110 vertical-align: top; 111 color: white; 112 } 113 .toolbar a { 114 border: none; 115 padding: 0px; 116 margin: 0px; 117 font-size: 10pt; 118 color: white; 119 vertical-align: top; 120 } 121 122 .toolbar img { 123 border: none; 124 padding: 0px; 125 margin: 0px; 126 vertical-align: top; 127 behavior: url("js/pngbehavior.htc"); 128 } 129 130 .toolbar-up { 131 float: left; 132 border: none; 133 padding: 0px; 134 margin: 0px; 135 font-size: 10pt; 136 color: white; 137 min-width: 16px; 138 vertical-align: top; 139 } 140 141 .toolbar-mid { 142 float: left; 143 border: none; 144 padding: 0px; 145 margin: 0px; 146 font-size: 10pt; 147 vertical-align: top; 148 width: 70%; 149 text-align: center; 150 } 151 152 .toolbar-spacer { 153 float: left; 154 border: none; 155 border-color: white; 156 padding: 0px; 157 margin: 0px; 158 font-size: 10pt; 159 color: white; 160 vertical-align: top; 161 width: 14%; 162 } 163 No newline at end of file -
modules/gallery/handler.php
1 <?php 2 /*** ***\ 3 mythgalley.php Last Updated: 2005.03.01 (sg_m_dev) 4 5 main configuration index 6 \*** ***/ 7 8 // Which section are we in? 9 define('section', 'gallery'); 10 11 // Initialize the script, database, etc. 12 //require_once "includes/init.php"; 13 require_once "includes/images.php"; 14 15 $path = "data/gallery"; 16 17 // Symlink to mythgallery photo storage directory 18 19 if ( ! file_exists($path)) { 20 $gallery_dir = get_backend_setting('GalleryDir'); 21 custom_error('Error: before using please run this in your mythweb directory: ln -s '.$gallery_dir.' '.$path); 22 } 23 24 25 $moverse = $_GET['moverse']; 26 $show_image = $_GET['show_image']; 27 28 $realpath = realpath($path.'/'.$moverse); 29 $moverse = str_replace($realpath,'',$moverse); 30 31 if($moverse) { 32 if (strpos($moverse,"\'")) { // This corrects a uri that includes single quote(s), which I think gets messed up by GET 33 $moverse = str_replace("\'","'",$moverse); 34 } 35 } 36 37 $handle=opendir($path.'/'.$moverse); 38 $Images = array(); 39 40 while ($file = readdir($handle)) { 41 if(is_dir($path.'/'.$moverse.'/'.$file) && $file != ".") { 42 // A directory 43 if (($file == ".." && $moverse == "") || $file == ".thumbcache" || $file == "." ) { 44 // Skip directory 45 } else { 46 if ( $file == ".." ) { 47 // Do nothing 48 } else { 49 if ($moverse!="") { 50 $fullfile=$path.'/'.$moverse.'/'.$file; 51 } else { 52 $fullfile=$path.'/'.$file; 53 } 54 $entery = new Image('gallery-folder',$moverse,$fullfile); 55 $Images[] = &$entery; 56 unset($entery); 57 } 58 } 59 } else if ($file != "." && $file != "index.php" && ( ("jpg"==substr($file,-3)) || ("JPG"==substr($file,-3)) ) ) { 60 if (isset($show_image)) { 61 $entery = new Image('gallery-fullsize',$moverse,$path.'/'.$moverse.'/'.$file); 62 $Images[] = &$entery; 63 unset($entery); 64 } else { 65 $entery = new Image('gallery-thumb',$moverse,$path.'/'.$moverse.'/'.$file); 66 $Images[] = &$entery; 67 unset($entery); 68 } 69 } else if ($file != "." && $file != "index.php" && ( ("avi"==substr($file,-3)) || ("AVI"==substr($file,-3)) ) ) { 70 if (!isset($show_image)) { 71 $entery = new Image('gallery-video',$moverse,$path.'/'.$moverse.'/'.$file); 72 $Images[] = &$entery; 73 unset($entery); 74 } 75 } 76 } 77 78 array_multisort( $Images ); 79 80 // Print the status page template 81 require_once tmpl_dir.'gallery.php';; 82 83 84 unset($Images); 85 // Exit 86 exit; 87 88 ?> -
modules/gallery/init.php
1 <?php 2 /** 3 * Initialization routines for the MythWeb Gallery module 4 * 5 * @url $URL: http://svn.mythtv.org/svn/trunk/mythplugins/mythweb/modules/gallery/init.php $ 6 * @date $Date: 2005-12-22 05:13:45 +0000 (Thu, 22 Dec 2005) $ 7 * @version $Revision: 8344 $ 8 * @author $Author: irish $ 9 * @license GPL 10 * 11 * @package MythWeb 12 * @subpackage Gallery 13 * 14 /**/ 15 16 // If video is enabled, add it to the list. 17 // if ($has_gallery) 18 $Modules['gallery'] = array('path' => 'gallery', 19 'sort' => 5, 20 'name' => t('Gallery'), 21 'description' => t('') 22 ); 23 24 -
modules/gallery/tmpl/default/welcome.php
1 <?php 2 3 // Open with a div and an image 4 echo '<div id="info_gallery" class="hidden">', 5 '<img src="', skin_url, '/img/gallery.png" class="module_icon" />', 6 7 // Print a basic overview of what this module does 8 t('welcome: gallery'), 9 10 // Next, print a list of possible subsectons 11 #### 12 13 // Close the div 14 "</div>\n"; -
modules/gallery/tmpl/default/gallery.php
Property changes on: modules/gallery/tmpl/default/welcome.php ___________________________________________________________________ Name: svn:executable + *
1 <?php 2 /*** ***\ 3 mythgalley.php Last Updated: 2006.03.22 (irish) 4 5 gallery default theme 6 \*** ***/ 7 8 $curr_image; 9 10 // Load this page's custom stylesheet 11 $headers[] = '<link rel="stylesheet" type="text/css" href="'.skin_url.'/gallery.css" />'; 12 // Print the page header 13 require 'modules/_shared/tmpl/'.tmpl.'/header.php'; 14 require_once "includes/css.php"; 15 require_once "includes/mouseovers.php"; 16 17 print_menu_content(); 18 ?> 19 20 <div id="page_content" class="clearfix"> 21 <div id="images"> 22 23 <?php 24 $found=0; 25 26 if (isset($show_image)){ 27 28 echo ' <div class="'.$curr_image->class.'">'; 29 $img_name = str_replace(".jpg","",$curr_image->alt); 30 $img_name = str_replace(".JPG","",$img_name); 31 $img_name = str_replace(".gif","",$img_name); 32 $img_name = str_replace(".GIF","",$img_name); 33 echo '<img id="mainimg" alt="'.$curr_image->alt.'" src="'.$curr_image->src.'">'; 34 echo "</div></div>\n"; 35 echo '<div><a href="'.$curr_image->uri.'">Download full size image (warning: VERY large!) Right click and select \'save as\' </a>'; 36 echo number_format(filesize($curr_image->uri)/1000).' KBytes</a></div>'; 37 } else { 38 foreach( $Images as $image ) { 39 echo '<div class="'.$image->class.'">'; 40 $img_name = str_replace(".jpg","",$image->alt); 41 $img_name = str_replace(".JPG","",$img_name); 42 $img_name = str_replace(".gif","",$img_name); 43 $img_name = str_replace(".GIF","",$img_name); 44 echo ' '.$img_name.' <br>'; 45 if ($image->uri) echo '<a href="'.$image->uri.'">'; 46 if ($image->src) echo '<img alt="'.$image->alt.'" src="'.$image->src.'">'; 47 echo "</a></div>\n"; 48 } 49 } 50 echo " </div>\n"; 51 echo "</div>\n"; 52 // Print the page footer 53 require 'modules/_shared/tmpl/'.tmpl.'/footer.php'; 54 55 function print_menu_content() { 56 57 global $show_image; 58 global $moverse; 59 global $Images; 60 global $curr_image; 61 62 63 if ($moverse) { 64 $header = '<div class="toolbar">'; 65 // $header += '<table border="0" cellspacing="0" cellpadding="0"><tr><td width="1%"><div class="toolbar">'; 66 $header .= '<div class="toolbar-up">'; 67 if ($show_image) { 68 $header .= '<a href="?moverse='.$moverse.'">'; 69 $header .= '<img alt="Up" src="'.skin_dir.'/img/up.png" height="16">'; 70 $header .= '</a></div>'; 71 $header .= '<div class="toolbar-spacer"> </div>'; 72 //</td><td width="99%" align="center"><div class="toolbar">'; 73 $header .= '<div class="toolbar-mid">'; 74 $found=0; 75 foreach( $Images as $image ) { 76 if ($found>0){ 77 $header .= '<a href="?show_image='.$image->alt.'&moverse='.$moverse.'">'; 78 $header .= '<img alt="Next" src="'.skin_dir.'/img/next.png" height="16"></a></div>'; 79 // $header .= '</div><div class="toolbar-spacer"> </div>'; 80 break; 81 } 82 if ($image->alt===$show_image) { 83 $curr_image = $image; 84 $found=1; 85 if ($myprev){ 86 $header .= '<a href="?show_image='.$myprev->alt.'&moverse='.$moverse.'">'; 87 $header .= '<img alt="Prev" src="'.skin_dir.'/img/previous.png" height="16"></a> '; 88 } 89 $header .= '<b>Image: '; 90 $parts = explode('/', $moverse); 91 $rebuilt_path = ''; 92 $header .= '<a href="?moverse=">/</a>'; 93 foreach ($parts as $part) { 94 $header .= '<a href="?moverse='.$rebuilt_path.$part.'">'.$part.'/</a>'; 95 $rebuilt_path .= $part.'/'; 96 } 97 $header .= $image->alt.'</b> '; 98 continue; 99 } else { 100 $myprev = $image; 101 continue; 102 } 103 } 104 echo $header.' </div>'; 105 } else { 106 $header .= '<a href="?moverse='; 107 $dir_up = dirname($moverse); 108 if ($dir_up!=".") $header .= $dir_up; 109 $header .= '">'; 110 $header .= '<img alt="Up" src="'.skin_dir.'/img/up.png" height="16">'; 111 $header .= "</a>"; 112 $header .= '</div><div class="toolbar-spacer"> '; 113 echo $header.'</div><div class="toolbar-mid"><b>Folder: /'.$moverse.'</b></div> </div>'; 114 } 115 116 } else { 117 echo '<div class="toolbar-up"> </div><div class="toolbar-spacer"> </div><div class="toolbar-mid"><b>Folder: /'.$moverse.'</b></div> '; 118 } 119 } 120 121 ?> -
modules/_shared/lang/English_GB.lang
Property changes on: modules/gallery/tmpl/default/gallery.php ___________________________________________________________________ Name: svn:executable + *
218 218 "MythVideo Artwork Dir" 219 219 "MythVideo Dir" 220 220 "MythVideo on the web." 221 "MythWeb Gallery." 221 222 "MythWeb Global Defaults" 222 223 "MythWeb session settings" 223 224 "MythWeb Session Settings" … … 494 495 "Video URL" 495 496 "videofilters" 496 497 "Videos" 498 "Gallery" 497 499 "Visibility" 498 500 "visible" 499 501 "Visit $1" … … 512 514 See what's on tv, schedule recordings and manage shows that you've already recorded. Please see the following choices: 513 515 "welcome: video" 514 516 Browse your video collection. 517 "welcome: gallery" 518 Browse the image gallery. 515 519 "welcome: weather" 516 520 Get the local weather forecast. 517 521 "What else is on at this time?" -
modules/_shared/lang/English.lang
209 209 "MythVideo Artwork Dir" 210 210 "MythVideo Dir" 211 211 "MythVideo on the web." 212 "MythWeb Gallery." 212 213 "MythWeb Global Defaults" 213 214 "MythWeb session settings" 214 215 "MythWeb Session Settings" … … 473 474 "Video URL" 474 475 "videofilters" 475 476 "Videos" 477 "Gallery" 476 478 "Visibility" 477 479 "visible" 478 480 "Visit $1" … … 493 495 recorded. Please see the following choices: 494 496 "welcome: video" 495 497 Browse your video collection. 498 "welcome: gallery" 499 Browse the image gallery. 496 500 "welcome: weather" 497 501 Get the local weather forecast. 498 502 "What else is on at this time?" -
modules/_shared/tmpl/default/header.php
80 80 </a> 81 81 <?php 82 82 } 83 if ($Modules['gallery']) { 83 84 ?> 85 <a id="gallery_link"<?php if ($Path[0] == 'gallery') echo ' class="current_section"' ?> href="<?php echo root ?>gallery" onmouseover="return help_text('<?php echo str_replace("'", "\\'", t('MythWeb Gallery.')) ?>')" onmouseout="return help_text()"> 86 <img src="<?php echo skin_url ?>img/gallery.png" width="48" height="48" class="alpha_png" alt="MythGallery" /> 87 </a> 88 <?php 89 } 90 ?> 84 91 <a id="settings_link"<?php if ($Path[0] == 'settings') echo ' class="current_section"' ?> href="<?php echo root ?>settings" onmouseover="return help_text('<?php echo str_replace("'", "\\'", t('Edit MythWeb and some MythTV settings.')) ?>')" onmouseout="return help_text()"> 85 92 <img src="<?php echo skin_url ?>img/settings.png" width="48" height="48" class="alpha_png" alt="<?php echo t('Settings') ?>" /> 86 93 </a> … … 115 122 <td colspan="2" class="menu menu_border_t menu_border_b"><table class="body" width="100%" border="0" cellspacing="2" cellpadding="2"> 116 123 <tr> 117 124 <td><div id="command_choices"> 118 <a href="<?php echo root ?>" id="category_legend" onmouseover="popup('category_legend'); return true;"> MythTV:</a> 125 <a href="<?php echo root ?>" id="category_legend" onmouseover="popup('category_legend'); return true;">Key</a></td><td align=center> 119 126 <a href="<?php echo root ?>tv/list"><?php echo t('Listings') ?></a> 120 127 | 121 128 <a href="<?php echo root ?>tv/searches"><?php echo t('Searches') ?></a>