Rev 227 | Rev 231 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 227 | PointedEar | 1 | |
| 2 | <div id="LCARS"> |
||
| 210 | PointedEar | 3 | <?php /* |
| 4 | <div id="button-grid" style="position: absolute; opacity: 0.3"> |
||
| 5 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 6 | |||
| 7 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 8 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 9 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 10 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 11 | |||
| 12 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 13 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 14 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 15 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 16 | |||
| 17 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 18 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 19 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 20 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 21 | |||
| 22 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 23 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 24 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 25 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 26 | |||
| 27 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 28 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 29 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 30 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 31 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 32 | |||
| 33 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 34 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 35 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 36 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 37 | |||
| 38 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 39 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 40 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 41 | |||
| 42 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 43 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 44 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 45 | |||
| 46 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 47 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 48 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 49 | |||
| 50 | <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a> |
||
| 51 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 52 | <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a> |
||
| 53 | </div> |
||
| 54 | */ ?> |
||
| 55 | <div id="bow"> |
||
| 227 | PointedEar | 56 | <div id="bow-top"> |
| 57 | <div class="separator-left"> </div> |
||
| 58 | <div class="text"> |
||
| 59 | <span>PointedEars’ Website</span> |
||
| 60 | </div> |
||
| 61 | </div> |
||
| 62 | <div id="bow-top-left"> |
||
| 63 | <div class="concave"> </div> |
||
| 64 | <div |
||
| 65 | style="position: absolute; top: 3.2em; left: 0; background-color: black" |
||
| 66 | > |
||
| 67 | <div class="bow" |
||
| 68 | style="margin-top: 0.2em; width: 8em; height: 1em" |
||
| 69 | > </div> |
||
| 70 | </div> |
||
| 71 | </div> |
||
| 72 | <div id="bottom"> |
||
| 73 | <div id="bow-bottom"> |
||
| 74 | <div class="concave"> </div> |
||
| 75 | <div class="spacer"> </div> |
||
| 76 | </div> |
||
| 77 | </div> |
||
| 210 | PointedEar | 78 | |
| 227 | PointedEar | 79 | <div class="menu-container"> |
| 80 | <nav class="menu"> |
||
| 81 | <ul> |
||
| 210 | PointedEar | 82 | <?php foreach ($languages as $key => $name): ?> |
| 227 | PointedEar | 83 | <li><a |
| 84 | href="index.<?php echo language_key_short($key); ?>?ani=0" |
||
| 85 | lang="<?php echo $key; ?>" hreflang="<?php echo $key; ?>" |
||
| 86 | class="button<?php if ($language === $key) { ?> selected<?php } ?>" |
||
| 87 | tabindex="2" |
||
| 88 | ><span class="text"><?php echo language_name($key); ?></span></a></li> |
||
| 210 | PointedEar | 89 | <?php endforeach; ?> |
| 90 | </ul> |
||
| 227 | PointedEar | 91 | <div class="bow" style="margin-bottom: 0.4em; height: 0.4em"> </div> |
| 92 | <ul style="margin-bottom: 1.2em"> |
||
| 93 | <li><a href="<?php echo $menu['scripts']['path']; ?>" |
||
| 94 | target="_top" class="button" lang="<?php echo $language; ?>" |
||
| 95 | ><span class="text"><?php echo $menu['scripts']['text']; ?></span></a></li> |
||
| 96 | <li><a href="<?php echo $menu['es-matrix']['path']; ?>" |
||
| 97 | target="_top" class="button" |
||
| 98 | title="<?php echo $menu['es-matrix']['title']; ?>" |
||
| 99 | ><span class="text"><?php echo $menu['es-matrix']['text']; ?></span></a></li> |
||
| 100 | <li><a href="<?php echo $menu['devel']['path']; ?>" |
||
| 101 | target="_top" class="button" lang="<?php echo $language; ?>" |
||
| 102 | ><span class="text"><?php echo $menu['devel']['text']; ?></span></a></li> |
||
| 103 | </ul> |
||
| 104 | <ul style="margin-bottom: 0.2em"> |
||
| 105 | <li><a href="psf/" target="_top" class="button ancillary"><abbr |
||
| 106 | title="<?php echo tr("PointedEars' Standard Frases"); ?>" |
||
| 107 | class="text" |
||
| 108 | >psf</abbr></a></li> |
||
| 109 | <li><a href="<?php echo $menu['series']['path']; ?>" |
||
| 110 | target="_top" class="button ancillary" |
||
| 111 | title="<?php echo tr('List of recommended TV shows and episodes, with logos in CSS'); ?>" |
||
| 112 | ><span class="text"><?php echo $menu['series']['text']; ?></span></a></li> |
||
| 113 | <li><a href="<?php echo $menu['ufpdb']['path']; ?>" |
||
| 114 | target="_top" class="button database" |
||
| 115 | ><abbr title="<?php echo $menu['ufpdb']['title']; ?>" |
||
| 116 | class="text" |
||
| 117 | ><?php echo $menu['ufpdb']['text']; ?></abbr></a></li> |
||
| 118 | </ul> |
||
| 119 | <div style="position: relative; margin-bottom: 1.2em"> |
||
| 120 | <div class="bow" style="height: 0.8em"> </div> |
||
| 121 | </div> |
||
| 122 | <ul> |
||
| 123 | <li><a |
||
| 124 | href="http://climateapps2.oerc.ox.ac.uk/cpdnboinc/show_user.php?userid=648544" |
||
| 125 | target="_top" class="button secondary" |
||
| 126 | title="<?php echo tr("The world’s largest climate forecasting experiment for the 21st century"); ?>" |
||
| 127 | ><span class="text">climateprediction.net</span></a></li> |
||
| 128 | <li><a |
||
| 129 | href="http://fah-web2.stanford.edu/cgi-bin/main.py?qtype=userpage&username=Thomas_Lahn" |
||
| 130 | target="_top" class="button secondary" |
||
| 131 | title="<?php echo tr("Distributed computing to understand protein folding, protein aggregation, and related diseases"); ?>" |
||
| 132 | ><span class="text">Folding at home</span></a></li> |
||
| 133 | <li><a |
||
| 134 | href="http://lhcathomeclassic.cern.ch/sixtrack/show_user.php?userid=221181" |
||
| 135 | target="_top" class="button secondary" |
||
| 136 | title="<?php echo tr("Particle physics research with the Large Hadron Collider at CERN"); ?>" |
||
| 137 | ><span class="text">LHC at home</span></a></li> |
||
| 138 | <li><a |
||
| 139 | href="http://setiathome.berkeley.edu/show_user.php?userid=378921" |
||
| 140 | target="_top" class="button secondary" |
||
| 141 | title="<?php echo tr("The Search for Extra-Terrestrial Intelligence at HOME"); ?>" |
||
| 142 | ><span class="text">SETI at home</span></a></li> |
||
| 143 | <li><a |
||
| 144 | href="http://stackoverflow.com/users/855543/pointedears" |
||
| 145 | target="_top" class="button secondary" |
||
| 146 | title="<?php echo tr("Me on Stack Overflow"); ?>" |
||
| 147 | ><span class="text">Stack Overflow</span></a></li> |
||
| 148 | <li><a href="https://twitter.com/PointedEars2" target="_top" |
||
| 149 | class="button secondary" |
||
| 150 | title="<?php echo tr("Me on Twitter"); ?>" |
||
| 151 | ><span class="text">Twitter</span></a></li> |
||
| 152 | <li><a |
||
| 153 | href="<?php echo tr("http://en.wikipedia.org/wiki/Special:Contributions/PointedEars"); ?>" |
||
| 154 | target="_top" class="button secondary" |
||
| 155 | title="<?php echo tr("My contributions to Wikipedia"); ?>" |
||
| 156 | ><span class="text"><?php echo tr('Wikipedia'); ?></span></a></li> |
||
| 157 | </ul> |
||
| 210 | PointedEar | 158 | <?php /* |
| 159 | <script type="text/javascript"> |
||
| 160 | var sURL = location.href; |
||
| 161 | var sFavAnchorTitle = |
||
| 162 | "Klicken Sie hier, um PointedEars' Website Ihren Favoriten" |
||
| 163 | + " hinzuzufĂĽgen"; |
||
| 164 | var sOtherAnchorTitle = |
||
| 165 | "Klicken Sie hier mit der rechten Maustaste, um PointedEars' Website" |
||
| 166 | + " Ihren Lesezeichen hinzuzufĂĽgen"; |
||
| 167 | var sFavoriteTitle = "PointedEars' Website"; |
||
| 168 | |||
| 169 | if (jsx.object.isHostMethod(jsx.global.window, "external", "AddFavorite")) |
||
| 170 | { |
||
| 171 | document.write( |
||
| 172 | '<div style="position: relative; margin-top: 1em; border-bottom: 0.2em solid transparent">' |
||
| 173 | + ' <div class="bow" style="width: 8em; height: 1em"> <\/div>' |
||
| 174 | + ' <div class="bow" style="position: absolute; top: 0; left: 8.2em; width: 2em; height: 1em"> <\/div>' |
||
| 175 | + '</div>' |
||
| 176 | + '<a href="javascript:window.external.AddFavorite(' |
||
| 177 | + ' sURL, sFavoriteTitle);" title="' + sFavAnchorTitle + '"' |
||
| 178 | + ' class="button"' |
||
| 179 | + ' onclick="window.external.AddFavorite(' |
||
| 180 | + ' sURL, sFavoriteTitle); return false"' |
||
| 181 | + ' onmouseover="return setStatus(sFavAnchorTitle)"' |
||
| 182 | + ' onmouseout="return resetStatus()"' |
||
| 183 | + '><span class="text">Favorit<\/span><\/a>'); |
||
| 184 | } |
||
| 185 | </script> |
||
| 186 | */ ?> |
||
| 187 | </nav> |
||
| 227 | PointedEar | 188 | </div> |
| 189 | </div> |
||
| 190 | <div id="connectors"> |
||
| 191 | <div class="bow top left"> </div> |
||
| 192 | <div class="bow top right"> </div> |
||
| 193 | |||
| 194 | <div class="bow mid left"> </div> |
||
| 195 | <div class="bow mid right"> </div> |
||
| 196 | </div> |
||
| 197 | <div class="multi-display"> |
||
| 198 | <div class="upper"> |
||
| 199 | <div class="content"> |
||
| 200 | <div class="title" id="title" lang="<?php echo $language; ?>"> |
||
| 201 | <span class="text"><?php echo tr('Home'); ?></span> |
||
| 210 | PointedEar | 202 | </div> |
| 227 | PointedEar | 203 | <div class="analysis" id="analysis"> |
| 204 | <table> |
||
| 205 | <tr> |
||
| 206 | <th lang="<?php echo $language; ?>"><span class="text"><?php echo tr('Display'); ?>:</span></th> |
||
| 207 | <td lang="<?php echo $language; ?>"><script |
||
| 208 | type="text/javascript" |
||
| 209 | > |
||
| 210 | PointedEar | 210 | var _addEventListener = jsx.dom.addEventListener; |
| 211 | var _runAsync = jsx.dom.timeout.runAsync; |
||
| 212 | var ID_SCREEN_DIM = 'screenDim'; |
||
| 213 | var ID_AVAIL_DIM = 'availDim'; |
||
| 214 | var ID_INNER_DIM = 'innerDim'; |
||
| 215 | |||
| 216 | var dim = (function () { |
||
| 217 | var screenInfo = jsx.dom.window.screenInfo; |
||
| 218 | |||
| 219 | return { |
||
| 220 | getScreenText: function () { |
||
| 221 | var screenDim = screenInfo.getDim(); |
||
| 222 | return screenDim.width + "Ă—" + screenDim.height; |
||
| 223 | }, |
||
| 224 | |||
| 225 | getAvailText: function () { |
||
| 226 | var availDim = screenInfo.getAvailDim(); |
||
| 227 | return <?php echo sprintf(tr('%s + "x" + %s + " available"'), 'availDim.width', 'availDim.height'); ?>; |
||
| 228 | }, |
||
| 229 | |||
| 230 | getInnerText: function () { |
||
| 231 | var innerDim = screenInfo.getInnerDim(); |
||
| 232 | return ", " + <?php echo sprintf(tr('%s + "x" + %s + " used"'), 'innerDim.width', 'innerDim.height'); ?>; |
||
| 233 | }, |
||
| 234 | |||
| 235 | getColorDepthText: function () { |
||
| 236 | var colorDepth = screenInfo.getColorDepth(); |
||
| 237 | return colorDepth |
||
| 238 | ? '2<sup>' + colorDepth + "<\/sup> <?php echo tr('colors'); ?>" |
||
| 239 | : ""; |
||
| 240 | } |
||
| 241 | }; |
||
| 242 | }()); |
||
| 243 | |||
| 244 | (function () { |
||
| 245 | var screenDimText = dim.getScreenText(); |
||
| 246 | var availDimText = dim.getAvailText(); |
||
| 247 | var innerDimText = dim.getInnerText(); |
||
| 248 | var colorDepthText = dim.getColorDepthText(); |
||
| 249 | var displayInfo = (screenDimText || availDimText || innerDimText || colorDepthText) |
||
| 250 | ? (screenDimText ? <?php echo sprintf("'" . tr('%s pixels') . "'", "<span id=\"' + ID_SCREEN_DIM + '\">' + screenDimText + '<\/span>' + '"); ?> : "") |
||
| 251 | + (availDimText ? ' (<span id="' + ID_AVAIL_DIM + '">' + availDimText + "<\/span>" : "") |
||
| 252 | + (innerDimText ? '<span id="' + ID_INNER_DIM + '">' + innerDimText + "<\/span>)" : "") |
||
| 253 | + (colorDepthText ? ' Ă— <span id="colorDepth">' + colorDepthText + "<\/span>" : "") |
||
| 254 | : TEXT_NOT_AVAILABLE; |
||
| 255 | |||
| 256 | /* FIXME: Convert HTML to text, update whole title text */ |
||
| 257 | document.write('<span class="text">' + displayInfo + '<\/span>'); |
||
| 258 | |||
| 259 | var oColorDepth; |
||
| 260 | var tColor = _runAsync(function () { |
||
| 261 | if (typeof oColorDepth == "undefined") |
||
| 262 | { |
||
| 263 | oColorDepth = document.getElementById("colorDepth"); |
||
| 264 | } |
||
| 265 | |||
| 266 | if (oColorDepth) |
||
| 267 | { |
||
| 268 | var colorDepthText = dim.getColorDepthText(); |
||
| 269 | <?php /* FIXME: Also update title attribute value */ ?> |
||
| 270 | if (oColorDepth.innerHTML != colorDepthText) |
||
| 271 | { |
||
| 272 | oColorDepth.innerHTML = colorDepthText; |
||
| 273 | } |
||
| 274 | } |
||
| 275 | |||
| 276 | tColor = this.run(); |
||
| 277 | }, 1000); |
||
| 278 | |||
| 279 | _addEventListener(document, "unload", function () { |
||
| 280 | tColor.unset(); |
||
| 281 | tColor = null; |
||
| 282 | }); |
||
| 283 | }()); |
||
| 227 | PointedEar | 284 | </script> |
| 285 | <noscript><?php echo tr('N/A'); ?></noscript></td> |
||
| 286 | </tr> |
||
| 287 | <tr> |
||
| 288 | <th lang="<?php echo $language; ?>"><span class="text"><?php echo tr('User Agent'); ?>:</span></th> |
||
| 289 | <td><script type="text/javascript" |
||
| 290 | src="application/scripts/ua.js" |
||
| 291 | ></script> |
||
| 292 | <noscript><?php |
||
| 210 | PointedEar | 293 | echo tr('N/A'); ?></noscript></td> |
| 227 | PointedEar | 294 | </tr> |
| 295 | <tr> |
||
| 296 | <th lang="<?php echo $language; ?>"><span class="text"><?php echo tr('Features'); ?>:</span></th> |
||
| 297 | <td><script type="text/javascript"> |
||
| 210 | PointedEar | 298 | var fullscreen = jsx.dom.window.fullscreen; |
| 299 | |||
| 300 | (function () { |
||
| 301 | function getFeatures () |
||
| 302 | { |
||
| 303 | var features = []; |
||
| 304 | if (typeof document.cookie != "undefined") |
||
| 305 | { |
||
| 306 | var cookiesText = "<?php echo tr('Cookies'); ?>" |
||
| 307 | if (navigator.cookieEnabled) |
||
| 308 | { |
||
| 309 | if (document.cookie) |
||
| 310 | { |
||
| 311 | var cookies = document.cookie; |
||
| 312 | cookies = cookies.split(/\s*;\s*/); |
||
| 313 | features.push('<a href="#" title="' |
||
| 314 | + cookies.join(" ") |
||
| 315 | + '"' |
||
| 316 | + ' onclick="window.alert(\'<?php echo tr('Cookies for'); ?> ' + document.domain + '\\n\\n' + cookies.join("\\n") + '\'); return false">' + cookiesText + '<\/a>'); |
||
| 317 | } |
||
| 318 | else |
||
| 319 | { |
||
| 320 | features.push('<span class="unavailable"' |
||
| 321 | + ' title="<?php echo tr('Cookies supported, but no data for this site'); ?>"' |
||
| 322 | + '>' + cookiesText + '<\/span>'); |
||
| 323 | } |
||
| 324 | } |
||
| 325 | else |
||
| 326 | { |
||
| 327 | features.push('<span class="offline"' |
||
| 328 | + ' title="<?php echo tr('Cookies supported, but disabled'); ?>"' |
||
| 329 | + '>' + cookiesText + '<\/span>'); |
||
| 330 | } |
||
| 331 | } |
||
| 332 | |||
| 333 | if (fullscreen.isSupportedBy(document.documentElement)) |
||
| 334 | { |
||
| 335 | features.push("<span lang='<?php echo $language; ?>'><span class='text'><?php echo tr('Fullscreen'); ?><\/span><\/span>"); |
||
| 336 | } |
||
| 337 | |||
| 338 | if (navigator.webkitGetGamepads && navigator.webkitGetGamepads().length) |
||
| 339 | { |
||
| 340 | features.push("<?php echo tr('Gamepad'); ?>"); |
||
| 341 | } |
||
| 342 | |||
| 343 | if (jsx.dom.geolocation.isAvailable()) |
||
| 344 | { |
||
| 227 | PointedEar | 345 | features.push('<a href="#" title="<?php echo htmlspecialchars(tr('Get location'), ENT_QUOTES); ?>"' |
| 346 | + ' lang="<?php echo $language; ?>"' |
||
| 347 | + ' onclick=\'return lcars.multiDisplay.geolocate("<?php echo htmlspecialchars(tr('Geolocation'), ENT_QUOTES); ?>", "<?php echo $language; ?>")\'' |
||
| 348 | + '><span class="text"><?php echo htmlspecialchars(tr('Geolocation'), ENT_QUOTES); ?><\/span><\/a>'); |
||
| 210 | PointedEar | 349 | } |
| 350 | |||
| 351 | if (typeof navigator.javaEnabled != "undefined" && navigator.javaEnabled()) |
||
| 352 | { |
||
| 353 | features.push("Java"); |
||
| 354 | } |
||
| 355 | |||
| 356 | var storage = jsx.dom.storage; |
||
| 357 | if (storage.localStorage.isSupported()) features.push("Local Storage"); |
||
| 358 | |||
| 359 | if (navigator.plugins) |
||
| 360 | { |
||
| 361 | if (navigator.plugins.length > 0) |
||
| 362 | { |
||
| 363 | features.push('<span title="' |
||
| 364 | + navigator.plugins.length |
||
| 365 | + ' <?php echo tr('plugins installed'); ?>">Plugins<\/span>'); |
||
| 366 | } |
||
| 367 | else |
||
| 368 | { |
||
| 369 | features.push('<span class="unavailable"' |
||
| 370 | + ' title="<?php echo tr('Plugins supported, but none detected'); ?>"' |
||
| 371 | + '>Plugins<\/span>'); |
||
| 372 | } |
||
| 373 | } |
||
| 374 | |||
| 375 | if (storage.sessionStorage.isSupported()) |
||
| 376 | { |
||
| 377 | features.push("Session Storage"); |
||
| 378 | } |
||
| 379 | |||
| 380 | if (typeof window.ontouchstart != "undefined") features.push("Touch"); |
||
| 381 | return features.join(" • "); |
||
| 382 | } |
||
| 383 | |||
| 384 | function stripTags (s) |
||
| 385 | { |
||
| 386 | return s.replace(/<[^>]+>/g, ""); |
||
| 387 | } |
||
| 388 | |||
| 389 | var sFeatures = getFeatures(); |
||
| 390 | document.write('<span id="features" title="' + stripTags(sFeatures) + '">' + sFeatures + '<\/span>'); |
||
| 391 | |||
| 392 | var oFeatures; |
||
| 393 | var oFeaturesHtml; |
||
| 394 | var tFeatures = _runAsync(function () { |
||
| 395 | if (typeof oFeatures == "undefined") |
||
| 396 | { |
||
| 397 | oFeatures = document.getElementById("features"); |
||
| 398 | } |
||
| 399 | |||
| 400 | if (oFeatures) |
||
| 401 | { |
||
| 402 | var sNewFeatures = getFeatures(); |
||
| 403 | |||
| 404 | if (!oFeaturesHtml) |
||
| 405 | { |
||
| 406 | oFeaturesHtml = document.createElement("span"); |
||
| 407 | } |
||
| 408 | |||
| 409 | if (oFeaturesHtml) |
||
| 410 | { |
||
| 411 | oFeaturesHtml.innerHTML = sNewFeatures; |
||
| 412 | sNewFeatures = oFeaturesHtml.innerHTML; |
||
| 413 | } |
||
| 414 | |||
| 415 | if (oFeatures.innerHTML != sNewFeatures) |
||
| 416 | { |
||
| 417 | oFeatures.innerHTML = sNewFeatures; |
||
| 418 | } |
||
| 419 | |||
| 420 | /* Converts CREs */ |
||
| 421 | var newTitle = stripTags(oFeatures.innerHTML) |
||
| 422 | if (oFeatures.title != newTitle) |
||
| 423 | { |
||
| 424 | oFeatures.title = newTitle; |
||
| 425 | } |
||
| 426 | } |
||
| 427 | |||
| 428 | tFeatures = this.run(); |
||
| 429 | }, 1000); |
||
| 430 | }()); |
||
| 431 | |||
| 432 | _addEventListener(document, "unload", function () { |
||
| 433 | tFeatures.unset(); |
||
| 434 | tFeatures = null; |
||
| 435 | }); |
||
| 436 | |||
| 437 | var windowText = "<?php echo tr("Window"); ?>"; |
||
| 227 | PointedEar | 438 | </script> |
| 439 | <noscript><?php echo tr('N/A'); ?></noscript></td> |
||
| 440 | </tr> |
||
| 441 | </table> |
||
| 442 | </div> |
||
| 443 | <ul class="commands"> |
||
| 444 | <li id="cmd1"><a href="index.php" title="Language selection" |
||
| 445 | tabindex="1" class="button left right" |
||
| 446 | onmouseover="return setStatus(this.title + ': ' + this.href)" |
||
| 447 | onmouseout="return resetStatus()" |
||
| 448 | onfocus="return this.onmouseover()" |
||
| 449 | onblur="return this.onmouseout()" |
||
| 450 | ><abbr class="text" title="Language selection">Language</abbr></a></li> |
||
| 451 | <li id="cmd2"><a |
||
| 452 | href="index.<?php echo $language; ?>?printable=1" |
||
| 453 | title="<?php echo tr('Printable version'); ?>" tabindex="1" |
||
| 454 | class="button left right" |
||
| 455 | onmouseover="return setStatus(this.title + ': ' + this.href)" |
||
| 456 | onmouseout="return resetStatus()" |
||
| 457 | onfocus="return this.onmouseover()" |
||
| 458 | onblur="return this.onmouseout()" |
||
| 459 | lang="<?php echo $language; ?>" |
||
| 460 | ><span class="text"><?php echo tr("Printable"); ?></span></a></li> |
||
| 461 | <li id="cmd3"><div class="button left right" |
||
| 462 | style="cursor: not-allowed !important" |
||
| 463 | onclick="fullscreen.requestOn(document.documentElement, this)" |
||
| 464 | onkeyup="if (event.keyCode == 13) { this.onclick(); }" |
||
| 465 | lang="<?php echo $language; ?>" |
||
| 466 | ><span class="text"><script type="text/javascript"> |
||
| 210 | PointedEar | 467 | var cmd3; |
| 468 | if (fullscreen.isSupportedBy(document.documentElement)) |
||
| 469 | { |
||
| 470 | _addEventListener(window, "load", function () { |
||
| 471 | if (typeof cmd3 == "undefined") |
||
| 472 | { |
||
| 473 | cmd3 = jsx.dom.getElementById("cmd3"); |
||
| 474 | } |
||
| 475 | |||
| 476 | if (cmd3) |
||
| 477 | { |
||
| 478 | cmd3.firstChild.tabIndex = "1"; |
||
| 479 | } |
||
| 480 | }); |
||
| 481 | |||
| 482 | var fullscreenText = "<?php echo tr("Fullscreen"); ?>"; |
||
| 483 | document.write(fullscreenText); |
||
| 484 | } |
||
| 485 | |||
| 486 | var oScreenDim; |
||
| 487 | var oAvailDim; |
||
| 488 | var oInnerDim; |
||
| 489 | var _gEBI = jsx.dom.getElementById; |
||
| 490 | var previousIsFullscreen; |
||
| 491 | var oldHandler; |
||
| 492 | |||
| 493 | _addEventListener(window, "resize", function () { |
||
| 494 | <?php /* FIXME: Also update title attribute value */ ?> |
||
| 495 | if (typeof oScreenDim == "undefined") oScreenDim = _gEBI(ID_SCREEN_DIM); |
||
| 496 | if (oScreenDim) oScreenDim.innerHTML = dim.getScreenText(); |
||
| 497 | |||
| 498 | if (typeof oAvailDim == "undefined") oAvailDim = _gEBI(ID_AVAIL_DIM); |
||
| 499 | if (oAvailDim) oAvailDim.innerHTML = dim.getAvailText(); |
||
| 500 | |||
| 501 | if (typeof oInnerDim == "undefined") oInnerDim = _gEBI(ID_INNER_DIM); |
||
| 502 | if (oInnerDim) oInnerDim.innerHTML = dim.getInnerText(); |
||
| 503 | |||
| 504 | if (fullscreen.isSupportedBy(document.documentElement)) |
||
| 505 | { |
||
| 506 | var nowIsFullscreen = fullscreen.isFullscreen(); |
||
| 507 | if (nowIsFullscreen != previousIsFullscreen) |
||
| 508 | { |
||
| 509 | if (typeof cmd3 == "undefined") |
||
| 510 | { |
||
| 511 | cmd3 = document.getElementById("cmd3"); |
||
| 512 | } |
||
| 513 | |||
| 514 | var target = cmd3.firstChild; |
||
| 515 | var textTarget = target.firstChild; |
||
| 516 | if (nowIsFullscreen) |
||
| 517 | { |
||
| 227 | PointedEar | 518 | /* FIXME: Do not override event listeners, use the state instead */ |
| 210 | PointedEar | 519 | oldHandler = target.onclick; |
| 520 | target.onclick = function () { |
||
| 521 | fullscreen.cancel(); |
||
| 522 | }; |
||
| 523 | textTarget.textContent = "<?php echo tr("Window"); ?>"; |
||
| 524 | } |
||
| 525 | else |
||
| 526 | { |
||
| 527 | target.onclick = oldHandler; |
||
| 528 | textTarget.textContent = fullscreenText; |
||
| 529 | } |
||
| 530 | |||
| 531 | previousIsFullscreen = nowIsFullscreen; |
||
| 532 | } |
||
| 533 | } |
||
| 534 | }); |
||
| 227 | PointedEar | 535 | </script></span> |
| 536 | </div></li> |
||
| 537 | <li id="cmd4"><script type="text/javascript"> |
||
| 538 | var LANG_KLINGON = "<?php echo $klingon; ?>"; |
||
| 210 | PointedEar | 539 | var LANG_VULCAN = "<?php echo $vulcan; ?>"; |
| 228 | PointedEar | 540 | lcars.language = "<?php echo $language; ?>"; |
| 227 | PointedEar | 541 | </script> |
| 228 | PointedEar | 542 | <script type="text/javascript" src="application/scripts/klingon.js"></script> |
| 543 | <script type="text/javascript" src="application/scripts/vulcan-media-script.js"></script> |
||
| 544 | <script type="text/javascript"> |
||
| 545 | function toggleScript (button) |
||
| 227 | PointedEar | 546 | { |
| 228 | PointedEar | 547 | var is_alien_language = (lcars.language == LANG_KLINGON |
| 548 | || lcars.language == LANG_VULCAN); |
||
| 549 | |||
| 550 | if (media_script_used) |
||
| 227 | PointedEar | 551 | { |
| 228 | PointedEar | 552 | klingonLatinScript(button); |
| 553 | latinScript(button); |
||
| 554 | |||
| 555 | if (!is_alien_language) |
||
| 556 | { |
||
| 557 | button.firstChild.textContent = button.getAttribute("data-caption"); |
||
| 558 | } |
||
| 227 | PointedEar | 559 | } |
| 228 | PointedEar | 560 | else |
| 561 | { |
||
| 562 | pIqaD(button); |
||
| 563 | mediaScript(button); |
||
| 564 | |||
| 565 | if (!is_alien_language) |
||
| 566 | { |
||
| 567 | button.setAttribute("data-caption", button.firstChild.textContent); |
||
| 568 | button.firstChild.textContent = "Latin"; |
||
| 569 | } |
||
| 570 | } |
||
| 227 | PointedEar | 571 | } |
| 228 | PointedEar | 572 | </script> |
| 573 | <div class="button left right"<?php |
||
| 574 | $language_keys = array_keys($languages); |
||
| 575 | if (in_array(@$klingon, $language_keys) || in_array(@$vulcan, $language_keys)) |
||
| 576 | { |
||
| 577 | ?> tabindex="1" onclick="return toggleScript(this)"<?php |
||
| 578 | } |
||
| 227 | PointedEar | 579 | else |
| 580 | { |
||
| 581 | ?> style="cursor: not-allowed !important"<?php |
||
| 582 | } |
||
| 228 | PointedEar | 583 | ?>><span class="text" lang="<?php echo $language; ?>"><?php |
| 584 | switch ($language) |
||
| 585 | { |
||
| 586 | case $klingon: echo 'pIqaD'; break; |
||
| 587 | case $vulcan: echo 'Hitra-Zukitan'; break; |
||
| 588 | default: echo 'Original'; |
||
| 589 | } |
||
| 227 | PointedEar | 590 | ?></span> |
| 591 | </div></li> |
||
| 592 | </ul> |
||
| 593 | </div> |
||
| 594 | <div class="elbo-button"> |
||
| 228 | PointedEar | 595 | <span class="text" lang="<?php echo $language; ?>" |
| 227 | PointedEar | 596 | title="<?php echo tr("Date of last modification"); ?>" |
| 597 | ><?php echo gmdate('Ym.d', $modi); ?></span> |
||
| 598 | </div> |
||
| 599 | <div class="elbo" lang="<?php echo $language; ?>"> |
||
| 600 | <span class="text"><abbr |
||
| 601 | title="<?php echo tr('Library Computer Access and Retrieval System'); ?>" |
||
| 602 | ><?php echo tr('LCARS'); ?></abbr> PE-22A</span> |
||
| 603 | <div class="concave"> </div> |
||
| 604 | </div> |
||
| 605 | <div class="border"> |
||
| 606 | <div class="left"> </div> |
||
| 607 | <div class="right"> </div> |
||
| 608 | </div> |
||
| 609 | </div> |
||
| 610 | <div class="lower"> |
||
| 611 | <div class="elbo"> |
||
| 612 | <div class="concave"> </div> |
||
| 613 | </div> |
||
| 614 | <div class="bg"> </div> |
||
| 615 | <div class="border-container"> |
||
| 616 | <div class="border"> |
||
| 617 | <div class="left"> </div> |
||
| 618 | <div class="right"> </div> |
||
| 210 | PointedEar | 619 | </div> |
| 620 | </div> |
||
| 621 | </div> |
||
| 227 | PointedEar | 622 | </div> |
| 623 | </div> |