Rev 165 | Rev 167 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 165 | Rev 166 | ||
---|---|---|---|
Line 56... | Line 56... | ||
56 | content="<?php echo tr("All rights reserved."); ?> <?php echo tr("The author is not responsible for the availability and the content of websites referred by this site, and not responsible for the availability and the content of websites referred by those sites. Whereever outsourced material is used, copyright or trademark infringement is not intended. Third parties who claim copyrights or trademarks used herein are asked to send an informal email to webmaster@PointedEars.de for immediate removal or modification of the respective material on the website instead of reminding the author of usage of this material. Thank you."); ?>"> |
56 | content="<?php echo tr("All rights reserved."); ?> <?php echo tr("The author is not responsible for the availability and the content of websites referred by this site, and not responsible for the availability and the content of websites referred by those sites. Whereever outsourced material is used, copyright or trademark infringement is not intended. Third parties who claim copyrights or trademarks used herein are asked to send an informal email to webmaster@PointedEars.de for immediate removal or modification of the respective material on the website instead of reminding the author of usage of this material. Thank you."); ?>"> |
57 | 57 | ||
58 | <?php /* |
58 | <?php /* |
59 | <!-- <link rel="stylesheet" type="text/css" href="styles/lcars.css"> -->
|
59 | <!-- <link rel="stylesheet" type="text/css" href="styles/lcars.css"> -->
|
60 | <!-- <link rel="stylesheet" type="text/css" href="styles/lcars21.css"> -->
|
60 | <!-- <link rel="stylesheet" type="text/css" href="styles/lcars21.css"> -->
|
61 | <!-- No optimization here: IE 9 in non-Compatibility Mode sends "Accept: text/css",
|
61 | <!-- No optimization here: Resource Builder does not handle URI parameters -->
|
62 | Apache responds with 406:
|
- | |
63 | http://blog.s9y.org/archives/227-ie9-has-trouble-with-css-content-types.html -->
|
- | |
64 | */ ?> |
62 | */ ?> |
65 | <link rel="stylesheet" type="text/css" href="styles/lcars-basic"> |
63 | <link rel="stylesheet" type="text/css" href="styles/lcars-basic"> |
66 | <?php
|
64 | <?php
|
67 | $isLocal = ($_SERVER['HTTP_HOST'] === 'localhost'); |
65 | $isLocal = ($_SERVER['HTTP_HOST'] === 'localhost'); |
68 | $printable = (isset($_GET['printable']) && $_GET['printable'] === '1'); |
66 | $printable = (isset($_GET['printable']) && $_GET['printable'] === '1'); |
Line 161... | Line 159... | ||
161 | | <a href="leisure/" target="_top"
|
159 | | <a href="leisure/" target="_top"
|
162 | >Freizeit-Datenbank</a>
|
160 | >Freizeit-Datenbank</a>
|
163 | | <a href="mozilla/" target="_top">Mozilla</a>
|
161 | | <a href="mozilla/" target="_top">Mozilla</a>
|
164 | | <a href="poetry/" target="_top">Poesie</a>
|
162 | | <a href="poetry/" target="_top">Poesie</a>
|
165 | */
|
163 | */
|
166 | 164 | ||
167 | /*
|
165 | /*
|
168 | | [<abbr title="nur in englischer Sprache verfügbar"
|
166 | | [<abbr title="nur in englischer Sprache verfügbar"
|
169 | >en</abbr>]
|
167 | >en</abbr>]
|
170 | | <a href="selfhtml.de/" target="_top">SELFHTML.DE</a>
|
168 | | <a href="selfhtml.de/" target="_top">SELFHTML.DE</a>
|
171 | */
|
169 | */
|
Line 264... | Line 262... | ||
264 | <div id="bow-bottom"> |
262 | <div id="bow-bottom"> |
265 | <div class="concave"> </div> |
263 | <div class="concave"> </div> |
266 | <div class="spacer"> </div> |
264 | <div class="spacer"> </div> |
267 | </div> |
265 | </div> |
268 | </div> |
266 | </div> |
269 | 267 | ||
270 | <div class="menu-container"> |
268 | <div class="menu-container"> |
271 | <nav class="menu"> |
269 | <nav class="menu"> |
272 | <ul style="padding-top: 1em"> |
270 | <ul style="padding-top: 1em"> |
273 | <?php foreach ($languages as $key => $name): ?> |
271 | <?php foreach ($languages as $key => $name): ?> |
274 | <li><a href="index.<?php echo $key; ?>?ani=0" |
272 | <li><a href="index.<?php echo $key; ?>?ani=0" |
Line 333... | Line 331... | ||
333 | + " hinzuzufügen";
|
331 | + " hinzuzufügen";
|
334 | var sOtherAnchorTitle =
|
332 | var sOtherAnchorTitle =
|
335 | "Klicken Sie hier mit der rechten Maustaste, um PointedEars' Website"
|
333 | "Klicken Sie hier mit der rechten Maustaste, um PointedEars' Website"
|
336 | + " Ihren Lesezeichen hinzuzufügen";
|
334 | + " Ihren Lesezeichen hinzuzufügen";
|
337 | var sFavoriteTitle = "PointedEars' Website";
|
335 | var sFavoriteTitle = "PointedEars' Website";
|
338 |
|
336 | |
339 | if (jsx.object.isHostMethod(jsx.global.window, "external", "AddFavorite"))
|
337 | if (jsx.object.isHostMethod(jsx.global.window, "external", "AddFavorite"))
|
340 | {
|
338 | {
|
341 | document.write(
|
339 | document.write(
|
342 | '<div style="position: relative; margin-top: 1em; border-bottom: 0.2em solid transparent">'
|
340 | '<div style="position: relative; margin-top: 1em; border-bottom: 0.2em solid transparent">'
|
343 | + ' <div class="bow" style="width: 8em; height: 1em"> <\/div>'
|
341 | + ' <div class="bow" style="width: 8em; height: 1em"> <\/div>'
|
Line 358... | Line 356... | ||
358 | </div> |
356 | </div> |
359 | </div> |
357 | </div> |
360 | <div id="connectors"> |
358 | <div id="connectors"> |
361 | <div class="bow top left"> </div> |
359 | <div class="bow top left"> </div> |
362 | <div class="bow top right"> </div> |
360 | <div class="bow top right"> </div> |
363 | 361 | ||
364 | <div class="bow mid left"> </div> |
362 | <div class="bow mid left"> </div> |
365 | <div class="bow mid right"> </div> |
363 | <div class="bow mid right"> </div> |
366 | </div> |
364 | </div> |
367 | <div class="multi-display"> |
365 | <div class="multi-display"> |
368 | <div class="upper"> |
366 | <div class="upper"> |
Line 377... | Line 375... | ||
377 | var _runAsync = jsx.dom.timeout.runAsync; |
375 | var _runAsync = jsx.dom.timeout.runAsync; |
378 | var ID_SCREEN_DIM = 'screenDim'; |
376 | var ID_SCREEN_DIM = 'screenDim'; |
379 | var ID_AVAIL_DIM = 'availDim'; |
377 | var ID_AVAIL_DIM = 'availDim'; |
380 | var ID_INNER_DIM = 'innerDim'; |
378 | var ID_INNER_DIM = 'innerDim'; |
381 | var TEXT_NOT_AVAILABLE = "<?php echo tr('N/A'); ?>"; |
379 | var TEXT_NOT_AVAILABLE = "<?php echo tr('N/A'); ?>"; |
382 | 380 | ||
383 | var dim = (function () { |
381 | var dim = (function () { |
384 | var screenInfo = jsx.dom.window.screenInfo; |
382 | var screenInfo = jsx.dom.window.screenInfo; |
385 | 383 | ||
386 | return { |
384 | return { |
387 | getScreenText: function () { |
385 | getScreenText: function () { |
388 | var screenDim = screenInfo.getDim(); |
386 | var screenDim = screenInfo.getDim(); |
389 | return screenDim.width + "×" + screenDim.height; |
387 | return screenDim.width + "×" + screenDim.height; |
390 | }, |
388 | }, |
391 | 389 | ||
392 | getAvailText: function () { |
390 | getAvailText: function () { |
393 | var availDim = screenInfo.getAvailDim(); |
391 | var availDim = screenInfo.getAvailDim(); |
394 | return availDim.width + "×" + availDim.height + " <?php echo tr('available'); ?>"; |
392 | return availDim.width + "×" + availDim.height + " <?php echo tr('available'); ?>"; |
395 | }, |
393 | }, |
396 | 394 | ||
397 | getInnerText: function () { |
395 | getInnerText: function () { |
398 | var innerDim = screenInfo.getInnerDim(); |
396 | var innerDim = screenInfo.getInnerDim(); |
399 | return ", " + innerDim.width + "×" + innerDim.height + " <?php echo tr('used'); ?>"; |
397 | return ", " + innerDim.width + "×" + innerDim.height + " <?php echo tr('used'); ?>"; |
400 | }, |
398 | }, |
401 | 399 | ||
402 | getColorDepthText: function () { |
400 | getColorDepthText: function () { |
403 | var colorDepth = screenInfo.getColorDepth(); |
401 | var colorDepth = screenInfo.getColorDepth(); |
404 | return colorDepth |
402 | return colorDepth |
405 | ? '2<sup>' + colorDepth + "<\/sup> <?php echo tr('colors'); ?>" |
403 | ? '2<sup>' + colorDepth + "<\/sup> <?php echo tr('colors'); ?>" |
406 | : ""; |
404 | : ""; |
407 | } |
405 | } |
408 | }; |
406 | }; |
409 | }()); |
407 | }()); |
410 | 408 | ||
411 | (function () { |
409 | (function () { |
412 | var screenDimText = dim.getScreenText(); |
410 | var screenDimText = dim.getScreenText(); |
413 | var availDimText = dim.getAvailText(); |
411 | var availDimText = dim.getAvailText(); |
414 | var innerDimText = dim.getInnerText(); |
412 | var innerDimText = dim.getInnerText(); |
415 | var colorDepthText = dim.getColorDepthText(); |
413 | var colorDepthText = dim.getColorDepthText(); |
Line 417... | Line 415... | ||
417 | ? (screenDimText ? '<span id="' + ID_SCREEN_DIM + '">' + screenDimText + '<\/span> <?php echo tr('pixels'); ?>' : "") |
415 | ? (screenDimText ? '<span id="' + ID_SCREEN_DIM + '">' + screenDimText + '<\/span> <?php echo tr('pixels'); ?>' : "") |
418 | + (availDimText ? ' (<span id="' + ID_AVAIL_DIM + '">' + availDimText + "<\/span>" : "") |
416 | + (availDimText ? ' (<span id="' + ID_AVAIL_DIM + '">' + availDimText + "<\/span>" : "") |
419 | + (innerDimText ? '<span id="' + ID_INNER_DIM + '">' + innerDimText + "<\/span>)" : "") |
417 | + (innerDimText ? '<span id="' + ID_INNER_DIM + '">' + innerDimText + "<\/span>)" : "") |
420 | + (colorDepthText ? ' × <span id="colorDepth">' + colorDepthText + "<\/span>" : "") |
418 | + (colorDepthText ? ' × <span id="colorDepth">' + colorDepthText + "<\/span>" : "") |
421 | : TEXT_NOT_AVAILABLE; |
419 | : TEXT_NOT_AVAILABLE; |
422 | 420 | ||
423 | /* FIXME: Convert HTML to text, update whole title text */ |
421 | /* FIXME: Convert HTML to text, update whole title text */ |
424 | document.write('<span>' + displayInfo + '<\/span>'); |
422 | document.write('<span>' + displayInfo + '<\/span>'); |
425 | 423 | ||
426 | var oColorDepth; |
424 | var oColorDepth; |
427 | var tColor = _runAsync(function () { |
425 | var tColor = _runAsync(function () { |
428 | if (typeof oColorDepth == "undefined") |
426 | if (typeof oColorDepth == "undefined") |
429 | { |
427 | { |
430 | oColorDepth = document.getElementById("colorDepth"); |
428 | oColorDepth = document.getElementById("colorDepth"); |
431 | } |
429 | } |
432 | 430 | ||
433 | if (oColorDepth) |
431 | if (oColorDepth) |
434 | { |
432 | { |
435 | var colorDepthText = dim.getColorDepthText(); |
433 | var colorDepthText = dim.getColorDepthText(); |
436 | <?php /* FIXME: Also update title attribute value */ ?> |
434 | <?php /* FIXME: Also update title attribute value */ ?> |
437 | if (oColorDepth.innerHTML != colorDepthText) |
435 | if (oColorDepth.innerHTML != colorDepthText) |
Line 461... | Line 459... | ||
461 | var tUA = _runAsync(function () { |
459 | var tUA = _runAsync(function () { |
462 | if (typeof oUA == "undefined") |
460 | if (typeof oUA == "undefined") |
463 | { |
461 | { |
464 | oUA = document.getElementById("ua"); |
462 | oUA = document.getElementById("ua"); |
465 | } |
463 | } |
466 | 464 | ||
467 | if (oUA) |
465 | if (oUA) |
468 | { |
466 | { |
469 | var ua = navigator.userAgent; |
467 | var ua = navigator.userAgent; |
470 | 468 | ||
471 | if (oUA.innerHTML != ua) |
469 | if (oUA.innerHTML != ua) |
Line 503... | Line 501... | ||
503 | var longitude = coords.longitude; |
501 | var longitude = coords.longitude; |
504 | var altitude = coords.altitude; |
502 | var altitude = coords.altitude; |
505 | var altitudeAccuracy = coords.altitudeAccuracy; |
503 | var altitudeAccuracy = coords.altitudeAccuracy; |
506 | var speed = coords.speed; |
504 | var speed = coords.speed; |
507 | var heading = coords.heading; |
505 | var heading = coords.heading; |
508 | 506 | ||
509 | return [ |
507 | return [ |
510 | "<?php echo tr('Latitude:'); ?> " + (latitude != null ? latitude + "°" : TEXT_NOT_AVAILABLE), |
508 | "<?php echo tr('Latitude:'); ?> " + (latitude != null ? latitude + "°" : TEXT_NOT_AVAILABLE), |
511 | "<?php echo tr('Longitude:'); ?> " + (longitude != null ? longitude + "°" : TEXT_NOT_AVAILABLE), |
509 | "<?php echo tr('Longitude:'); ?> " + (longitude != null ? longitude + "°" : TEXT_NOT_AVAILABLE), |
512 | "<?php echo tr('Lat/Lng Accuracy:'); ?> " + coords.accuracy + " m", |
510 | "<?php echo tr('Lat/Lng Accuracy:'); ?> " + coords.accuracy + " m", |
513 | "<?php echo tr('Altitude:'); ?> " + (altitude != null ? altitude + " m": TEXT_NOT_AVAILABLE), |
511 | "<?php echo tr('Altitude:'); ?> " + (altitude != null ? altitude + " m": TEXT_NOT_AVAILABLE), |
Line 519... | Line 517... | ||
519 | 517 | ||
520 | show: function (position) { |
518 | show: function (position) { |
521 | window.alert("<?php echo tr('Your current coordinates on Terra'); ?>\n\n" + this.getText(position)); |
519 | window.alert("<?php echo tr('Your current coordinates on Terra'); ?>\n\n" + this.getText(position)); |
522 | } |
520 | } |
523 | }; |
521 | }; |
524 | 522 | ||
525 | (function () { |
523 | (function () { |
526 | function getFeatures () |
524 | function getFeatures () |
527 | { |
525 | { |
528 | var features = []; |
526 | var features = []; |
529 | if (typeof document.cookie != "undefined") |
527 | if (typeof document.cookie != "undefined") |
Line 557... | Line 555... | ||
557 | 555 | ||
558 | if (fullscreen.isSupportedBy(document.documentElement)) |
556 | if (fullscreen.isSupportedBy(document.documentElement)) |
559 | { |
557 | { |
560 | features.push("<?php echo tr('Fullscreen'); ?>"); |
558 | features.push("<?php echo tr('Fullscreen'); ?>"); |
561 | } |
559 | } |
562 | 560 | ||
563 | if (navigator.webkitGetGamepads && navigator.webkitGetGamepads().length) |
561 | if (navigator.webkitGetGamepads && navigator.webkitGetGamepads().length) |
564 | { |
562 | { |
565 | features.push("<?php echo tr('Gamepad'); ?>"); |
563 | features.push("<?php echo tr('Gamepad'); ?>"); |
566 | } |
564 | } |
567 | 565 | ||
568 | if (navigator.geolocation) |
566 | if (navigator.geolocation) |
569 | { |
567 | { |
570 | features.push('<a href="#" title="<?php echo tr('Get location'); ?>"' |
568 | features.push('<a href="#" title="<?php echo tr('Get location'); ?>"' |
571 | + ' onclick="navigator.geolocation.getCurrentPosition(' |
569 | + ' onclick="navigator.geolocation.getCurrentPosition(' |
572 | + 'function (position) { jsx.dom.geolocation.show(position); }); return false"' |
570 | + 'function (position) { jsx.dom.geolocation.show(position); }); return false"' |
Line 575... | Line 573... | ||
575 | 573 | ||
576 | if (typeof navigator.javaEnabled != "undefined" && navigator.javaEnabled()) |
574 | if (typeof navigator.javaEnabled != "undefined" && navigator.javaEnabled()) |
577 | { |
575 | { |
578 | features.push("Java"); |
576 | features.push("Java"); |
579 | } |
577 | } |
580 | 578 | ||
581 | var storage = jsx.dom.storage; |
579 | var storage = jsx.dom.storage; |
582 | if (storage.localStorage.isSupported()) features.push("Local Storage"); |
580 | if (storage.localStorage.isSupported()) features.push("Local Storage"); |
583 | 581 | ||
584 | if (navigator.plugins) |
582 | if (navigator.plugins) |
585 | { |
583 | { |
Line 608... | Line 606... | ||
608 | 606 | ||
609 | function stripTags (s) |
607 | function stripTags (s) |
610 | { |
608 | { |
611 | return s.replace(/<[^>]+>/g, ""); |
609 | return s.replace(/<[^>]+>/g, ""); |
612 | } |
610 | } |
613 | 611 | ||
614 | var sFeatures = getFeatures(); |
612 | var sFeatures = getFeatures(); |
615 | document.write('<span id="features" title="' + stripTags(sFeatures) + '">' + sFeatures + '<\/span>'); |
613 | document.write('<span id="features" title="' + stripTags(sFeatures) + '">' + sFeatures + '<\/span>'); |
616 | 614 | ||
617 | var oFeatures; |
615 | var oFeatures; |
618 | var oFeaturesHtml; |
616 | var oFeaturesHtml; |
Line 628... | Line 626... | ||
628 | 626 | ||
629 | if (!oFeaturesHtml) |
627 | if (!oFeaturesHtml) |
630 | { |
628 | { |
631 | oFeaturesHtml = document.createElement("span"); |
629 | oFeaturesHtml = document.createElement("span"); |
632 | } |
630 | } |
633 | 631 | ||
634 | if (oFeaturesHtml) |
632 | if (oFeaturesHtml) |
635 | { |
633 | { |
636 | oFeaturesHtml.innerHTML = sNewFeatures; |
634 | oFeaturesHtml.innerHTML = sNewFeatures; |
637 | sNewFeatures = oFeaturesHtml.innerHTML; |
635 | sNewFeatures = oFeaturesHtml.innerHTML; |
638 | } |
636 | } |
639 | 637 | ||
640 | if (oFeatures.innerHTML != sNewFeatures) |
638 | if (oFeatures.innerHTML != sNewFeatures) |
641 | { |
639 | { |
642 | oFeatures.innerHTML = sNewFeatures; |
640 | oFeatures.innerHTML = sNewFeatures; |
643 | } |
641 | } |
644 | 642 | ||
Line 694... | Line 692... | ||
694 | _addEventListener(window, "load", function () { |
692 | _addEventListener(window, "load", function () { |
695 | if (typeof cmd3 == "undefined") |
693 | if (typeof cmd3 == "undefined") |
696 | { |
694 | { |
697 | cmd3 = jsx.dom.getElementById("cmd3"); |
695 | cmd3 = jsx.dom.getElementById("cmd3"); |
698 | } |
696 | } |
699 | 697 | ||
700 | if (cmd3) |
698 | if (cmd3) |
701 | { |
699 | { |
702 | cmd3.firstChild.tabIndex = "1"; |
700 | cmd3.firstChild.tabIndex = "1"; |
703 | } |
701 | } |
704 | }); |
702 | }); |
705 | 703 | ||
706 | var fullscreenText = "<?php echo tr("Fullscreen"); ?>"; |
704 | var fullscreenText = "<?php echo tr("Fullscreen"); ?>"; |
707 | document.write(fullscreenText); |
705 | document.write(fullscreenText); |
708 | } |
706 | } |
709 | 707 | ||
710 | var oScreenDim; |
708 | var oScreenDim; |
711 | var oAvailDim; |
709 | var oAvailDim; |
712 | var oInnerDim; |
710 | var oInnerDim; |
713 | var _gEBI = jsx.dom.getElementById; |
711 | var _gEBI = jsx.dom.getElementById; |
714 | var previousIsFullscreen; |
712 | var previousIsFullscreen; |
715 | var oldHandler; |
713 | var oldHandler; |
716 | 714 | ||
717 | _addEventListener(window, "resize", function () { |
715 | _addEventListener(window, "resize", function () { |
718 | <?php /* FIXME: Also update title attribute value */ ?> |
716 | <?php /* FIXME: Also update title attribute value */ ?> |
719 | if (typeof oScreenDim == "undefined") oScreenDim = _gEBI(ID_SCREEN_DIM); |
717 | if (typeof oScreenDim == "undefined") oScreenDim = _gEBI(ID_SCREEN_DIM); |
720 | if (oScreenDim) oScreenDim.innerHTML = dim.getScreenText(); |
718 | if (oScreenDim) oScreenDim.innerHTML = dim.getScreenText(); |
721 | 719 | ||
722 | if (typeof oAvailDim == "undefined") oAvailDim = _gEBI(ID_AVAIL_DIM); |
720 | if (typeof oAvailDim == "undefined") oAvailDim = _gEBI(ID_AVAIL_DIM); |
723 | if (oAvailDim) oAvailDim.innerHTML = dim.getAvailText(); |
721 | if (oAvailDim) oAvailDim.innerHTML = dim.getAvailText(); |
724 | 722 | ||
725 | if (typeof oInnerDim == "undefined") oInnerDim = _gEBI(ID_INNER_DIM); |
723 | if (typeof oInnerDim == "undefined") oInnerDim = _gEBI(ID_INNER_DIM); |
726 | if (oInnerDim) oInnerDim.innerHTML = dim.getInnerText(); |
724 | if (oInnerDim) oInnerDim.innerHTML = dim.getInnerText(); |
727 | 725 | ||
728 | if (fullscreen.isSupportedBy(document.documentElement)) |
726 | if (fullscreen.isSupportedBy(document.documentElement)) |
729 | { |
727 | { |
730 | var nowIsFullscreen = fullscreen.isFullscreen(); |
728 | var nowIsFullscreen = fullscreen.isFullscreen(); |
731 | if (nowIsFullscreen != previousIsFullscreen) |
729 | if (nowIsFullscreen != previousIsFullscreen) |
732 | { |
730 | { |
733 | if (typeof cmd3 == "undefined") |
731 | if (typeof cmd3 == "undefined") |
734 | { |
732 | { |
735 | cmd3 = document.getElementById("cmd3"); |
733 | cmd3 = document.getElementById("cmd3"); |
736 | } |
734 | } |
737 | 735 | ||
738 | var target = cmd3.firstChild; |
736 | var target = cmd3.firstChild; |
739 | var textTarget = target.firstChild; |
737 | var textTarget = target.firstChild; |
740 | if (nowIsFullscreen) |
738 | if (nowIsFullscreen) |
741 | { |
739 | { |
742 | oldHandler = target.onclick; |
740 | oldHandler = target.onclick; |
Line 748... | Line 746... | ||
748 | else |
746 | else |
749 | { |
747 | { |
750 | target.onclick = oldHandler; |
748 | target.onclick = oldHandler; |
751 | textTarget.textContent = fullscreenText; |
749 | textTarget.textContent = fullscreenText; |
752 | } |
750 | } |
753 | 751 | ||
754 | previousIsFullscreen = nowIsFullscreen; |
752 | previousIsFullscreen = nowIsFullscreen; |
755 | } |
753 | } |
756 | } |
754 | } |
757 | }); |
755 | }); |
758 | </script></span></div></li> |
756 | </script></span></div></li> |