Rev 115 | Rev 119 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 115 | Rev 118 | ||
|---|---|---|---|
| Line 135... | Line 135... | ||
| 135 | <h1 style="text-align: center"><img | 135 | <h1 style="text-align: center"><img | 
| 136 | src="media/video/img/vulcan_hand-black-bg.png" | 136 | src="media/video/img/vulcan_hand-black-bg.png" | 
| 137 | width="120" | 137 | width="120" | 
| 138 | height="168" | 138 | height="168" | 
| 139 | alt="<?php echo _("Vulcan greeting"); ?>" | 139 | alt="<?php echo _("Vulcan greeting"); ?>" | 
| 140 | title="" | 140 | title="<?php echo _("Vulcan greeting"); ?>" | 
| 141 | style="border: none; cursor: default" | 141 | style="border: none; cursor: default" | 
| 142 | onmouseover="return setStatus(this.title)" | 142 | onmouseover="return setStatus(this.title)" | 
| 143 | onmouseout="return resetStatus()"><br> | 143 | onmouseout="return resetStatus()"><br> | 
| 144 | <?php echo _("Welcome to PointedEars’ Website"); ?></h1> | 144 | <?php echo _("Welcome to PointedEars’ Website"); ?></h1> | 
| 145 | <?php
 | 145 | <?php
 | 
| Line 361... | Line 361... | ||
| 361 | </div> | 361 | </div> | 
| 362 | <div class="multi-display"> | 362 | <div class="multi-display"> | 
| 363 | <div class="upper"> | 363 | <div class="upper"> | 
| 364 | <div class="content"> | 364 | <div class="content"> | 
| 365 | <div class="title"><span>Home</span></div> | 365 | <div class="title"><span>Home</span></div> | 
| 366 | <div class="analysis"> </div> | 366 | <div class="analysis"> | 
| 367 | <script type="text/javascript"> | 367 | <table> | 
| - | 368 | <tr> | |
| 368 |               var fullscreen = (function () {
 | 369 | <th><?php echo _('Display'); ?>:</th> | 
| 369 | var _isHostMethod = jsx.object.isHostMethod; | 370 | <td><script type="text/javascript"> | 
| 370 | - | ||
| 371 |                 return {
 | 371 |                     var dim = {
 | 
| 372 |                   getSupportedProperty: function (base, names, test) {
 | 372 |                       getScreen: function () {
 | 
| 373 | for (var i = 0, len = names.length; i < len; ++i) | 373 | return screen.width + "×" + screen.height; | 
| 374 |                     {
 | 374 | }, | 
| - | 375 | ||
| 375 | var name = names[i]; | 376 |                       getAvail: function () {
 | 
| 376 | if (test.call(null, base, name)) | 377 | return screen.availWidth + "×" + screen.availHeight; | 
| 377 |                       {
 | 378 | }, | 
| - | 379 | ||
| 378 | return name; | 380 |                       getInner: function () {
 | 
| 379 | } | 381 | return window.innerWidth + "×" + window.innerHeight; | 
| 380 | } | 382 | }, | 
| 381 | 383 | ||
| 382 | return null; | - | |
| 383 | }, | - | |
| 384 | - | ||
| 385 |                   getSupportedCancel: (function () {
 | - | |
| 386 | var _supportedCancel; | - | |
| 387 | - | ||
| 388 |                     return function () {
 | 384 |                       getColorDepth: function () {
 | 
| 389 | if (typeof _supportedCancel == "undefined") | - | |
| 390 |                       {
 | - | |
| 391 | var properties = ["cancelFullScreen", "mozCancelFullScreen", | - | |
| 392 | "webkitCancelFullScreen"]; | 385 | return (screen.colorDepth || screen.pixelDepth); | 
| 393 | - | ||
| 394 | _supportedCancel = this.getSupportedProperty(document, properties, _isHostMethod); | - | |
| 395 | } | 386 | } | 
| 396 | - | ||
| 397 | return _supportedCancel; | - | |
| 398 | }; | 387 | }; | 
| 399 | }()), | - | |
| 400 | - | ||
| 401 |                   getSupportedElement: (function () {
 | - | |
| 402 | var _supportedElement; | - | |
| 403 | 388 | ||
| 404 |                     return function () {
 | 389 | var displayInfo; | 
| 405 | if (typeof _supportedElement == "undefined") | 390 |                     (function () {
 | 
| 406 |                       {
 | 391 | displayInfo = | 
| 407 | var properties = ["fullscreenElement", "mozFullscreenElement", | 392 | '<span id="screenDim">' + dim.getScreen() + '<\/span>' | 
| 408 | "webkitFullscreenElement"]; | 393 | + ' (<span id="availDim">' + dim.getAvail() + "<\/span> <?php echo _('available'); ?>," | 
| - | 394 | + ' <span id="innerDim">' + dim.getInner() + "<\/span> <?php echo _('used'); ?>) <?php echo _('pixels'); ?>" | |
| - | 395 | + ' × 2<sup><span id="colorDepth">' + dim.getColorDepth() + "<\/span><\/sup> <?php echo _('colors'); ?>"; | |
| 409 | 396 | ||
| 410 | _supportedElement = this.getSupportedProperty(document, properties, | 397 | /* FIXME: Convert HTML to text, update whole title text */ | 
| 411 |                           function (base, name) {
 | - | |
| 412 | return typeof base[name] != "undefined"; | 398 |                       document.write('<span>' + displayInfo + '<\/span>');
 | 
| 413 | }); | - | |
| 414 | } | 399 | }()); | 
| 415 | 400 | ||
| - | 401 |                     window.onresize = function () {
 | |
| 416 | return _supportedElement; | 402 | /* FIXME: Update whole title text */ | 
| - | 403 |                       document.getElementById("screenDim").innerHTML = dim.getScreen();
 | |
| - | 404 |                       document.getElementById("availDim").innerHTML = dim.getAvail();
 | |
| - | 405 |                       document.getElementById("innerDim").innerHTML = dim.getInner();
 | |
| 417 | }; | 406 | }; | 
| 418 | }()), | - | |
| 419 | 407 | ||
| 420 |                   isSupportedBy: function (elem) {
 | 408 |                     window.setTimeout(function () {
 | 
| 421 | var methods = ["requestFullscreen", "mozRequestFullscreen", | 409 | /* FIXME: Update whole title text */ | 
| 422 | "webkitRequestFullscreen"]; | 410 |                       document.getElementById("colorDepth").innerHTML = dim.getColorDepth();
 | 
| - | 411 | }, 1000); | |
| 423 | return this.getSupportedProperty(elem, methods, _isHostMethod); | 412 | </script><noscript><?php echo _('N/A'); ?></noscript></td> | 
| 424 | }, | 413 | </tr> | 
| 425 | - | ||
| 426 |                   isFullscreen: function () {
 | 414 | <tr> | 
| 427 | var properties = ["fullscreenElement", "mozFullscreenElement", | 415 | <th><?php echo _('User Agent'); ?>:</th> | 
| 428 | "webkitFullscreenElement"]; | 416 | <td><script type="text/javascript"> | 
| 429 | var supportedProperty = this.getSupportedProperty( | 417 |                     (function () {
 | 
| 430 | document, properties, | 418 | var ua = navigator.userAgent; | 
| - | 419 |                       document.write('<span id="ua" title="' + ua + '">' + ua + '<\/span>');
 | |
| - | 420 | ||
| 431 |                       function (base, name) {
 | 421 |                       window.setTimeout(function () {
 | 
| 432 | return typeof base[name] != "undefined"; | 422 |                         document.getElementById("ua").innerHTML = navigator.userAgent;
 | 
| - | 423 | }, 1000); | |
| 433 | }); | 424 | }()); | 
| 434 | - | ||
| 435 | return supportedProperty && document[supportedProperty] != null; | 425 | </script><noscript><?php echo _('N/A'); ?></noscript></td> | 
| 436 | }, | 426 | </tr> | 
| 437 | - | ||
| 438 |                   cancel: function (target, oldHandler, textTarget) {
 | 427 | <tr> | 
| 439 | var supportedCancel = this.getSupportedCancel(); | 428 | <th><?php echo _('Features'); ?>:</th> | 
| 440 | if (supportedCancel) | 429 | <td><script type="text/javascript"> | 
| 441 |                     {
 | 430 |                     var fullscreen = (function () {
 | 
| 442 | document[supportedCancel](); | 431 | var _isHostMethod = jsx.object.isHostMethod; | 
| 443 | 432 | ||
| - | 433 |                       return {
 | |
| - | 434 |                         getSupportedProperty: function (base, names, test) {
 | |
| - | 435 | for (var i = 0, len = names.length; i < len; ++i) | |
| - | 436 |                           {
 | |
| - | 437 | var name = names[i]; | |
| - | 438 | if (test.call(null, base, name)) | |
| - | 439 |                             {
 | |
| - | 440 | return name; | |
| - | 441 | } | |
| - | 442 | } | |
| - | 443 | ||
| - | 444 | return null; | |
| - | 445 | }, | |
| - | 446 | ||
| - | 447 |                         getSupportedCancel: (function () {
 | |
| - | 448 | var _supportedCancel; | |
| - | 449 | ||
| - | 450 |                           return function () {
 | |
| - | 451 | if (typeof _supportedCancel == "undefined") | |
| - | 452 |                             {
 | |
| - | 453 | var properties = ["cancelFullScreen", "mozCancelFullScreen", | |
| - | 454 | "webkitCancelFullScreen"]; | |
| - | 455 | ||
| - | 456 | _supportedCancel = this.getSupportedProperty(document, properties, _isHostMethod); | |
| - | 457 | } | |
| - | 458 | ||
| - | 459 | return _supportedCancel; | |
| - | 460 | }; | |
| - | 461 | }()), | |
| - | 462 | ||
| 444 | var supportedElement = this.getSupportedElement(); | 463 |                         getSupportedElement: (function () {
 | 
| 445 | if (supportedElement) | 464 | var _supportedElement; | 
| - | 465 | ||
| - | 466 |                           return function () {
 | |
| - | 467 | if (typeof _supportedElement == "undefined") | |
| 446 |                       {
 | 468 |                             {
 | 
| - | 469 | var properties = ["fullscreenElement", "mozFullscreenElement", | |
| - | 470 | "webkitFullscreenElement"]; | |
| - | 471 | ||
| - | 472 | _supportedElement = this.getSupportedProperty(document, properties, | |
| - | 473 |                                 function (base, name) {
 | |
| - | 474 | return typeof base[name] != "undefined"; | |
| - | 475 | }); | |
| - | 476 | } | |
| - | 477 | ||
| 447 | if (document[supportedElement] == null) | 478 | return _supportedElement; | 
| - | 479 | }; | |
| - | 480 | }()), | |
| - | 481 | ||
| - | 482 |                         isSupportedBy: function (elem) {
 | |
| - | 483 | var methods = ["requestFullscreen", "mozRequestFullscreen", | |
| - | 484 | "webkitRequestFullscreen"]; | |
| - | 485 | return this.getSupportedProperty(elem, methods, _isHostMethod); | |
| - | 486 | }, | |
| - | 487 | ||
| - | 488 |                         isFullscreen: function () {
 | |
| - | 489 | var properties = ["fullscreenElement", "mozFullscreenElement", | |
| - | 490 | "webkitFullscreenElement"]; | |
| - | 491 | var supportedProperty = this.getSupportedProperty( | |
| - | 492 | document, properties, | |
| - | 493 |                             function (base, name) {
 | |
| - | 494 | return typeof base[name] != "undefined"; | |
| - | 495 | }); | |
| - | 496 | ||
| - | 497 | return supportedProperty && document[supportedProperty] != null; | |
| 448 |                         {
 | 498 | }, | 
| - | 499 | ||
| - | 500 |                         cancel: function (target, oldHandler, textTarget) {
 | |
| - | 501 | var supportedCancel = this.getSupportedCancel(); | |
| 449 | if (textTarget) | 502 | if (supportedCancel) | 
| 450 |                           {
 | 503 |                           {
 | 
| - | 504 | document[supportedCancel](); | |
| - | 505 | ||
| - | 506 | var supportedElement = this.getSupportedElement(); | |
| - | 507 | if (supportedElement) | |
| - | 508 |                             {
 | |
| - | 509 | if (document[supportedElement] == null) | |
| - | 510 |                               {
 | |
| - | 511 | if (textTarget) | |
| - | 512 |                                 {
 | |
| 451 | textTarget.textContent = "<?php echo _("Fullscreen"); ?>"; | 513 | textTarget.textContent = "<?php echo _("Fullscreen"); ?>"; | 
| - | 514 | } | |
| - | 515 | ||
| - | 516 | if (target) | |
| - | 517 |                                 {
 | |
| - | 518 | target.onclick = oldHandler; | |
| - | 519 | } | |
| - | 520 | } | |
| - | 521 | } | |
| 452 | } | 522 | } | 
| - | 523 | }, | |
| 453 | 524 | ||
| - | 525 |                         requestOn: function (elem, eventTarget, textTarget) {
 | |
| 454 | if (target) | 526 | var requestMethodName; | 
| - | 527 | ||
| - | 528 | if (elem && (requestMethodName = this.isSupportedBy(elem))) | |
| 455 |                           {
 | 529 |                           {
 | 
| - | 530 | elem[requestMethodName](); | |
| - | 531 | if (textTarget && this.isFullscreen()) | |
| - | 532 |                             {
 | |
| - | 533 | var oldText = textTarget.textContent; | |
| - | 534 | var me = this; | |
| - | 535 | var oldHandler = eventTarget.onclick; | |
| 456 | target.onclick = oldHandler; | 536 |                               eventTarget.onclick = function () {
 | 
| - | 537 | me.cancel(this, oldHandler, textTarget); | |
| - | 538 | }; | |
| - | 539 | textTarget.textContent = "<?php echo _("Window"); ?>"; | |
| - | 540 | } | |
| 457 | } | 541 | } | 
| 458 | } | 542 | } | 
| 459 | } | 543 | }; | 
| 460 | } | 544 | }()); | 
| 461 | }, | - | |
| 462 | - | ||
| 463 |                   requestOn: function (elem, eventTarget, textTarget) {
 | - | |
| 464 | var requestMethodName; | - | |
| 465 | 545 | ||
| 466 | if (elem && (requestMethodName = this.isSupportedBy(elem))) | - | |
| 467 |                     {
 | 546 |                     (function () {
 | 
| 468 | elem[requestMethodName](); | 547 | function getFeatures () | 
| 469 | if (textTarget && this.isFullscreen()) | - | |
| 470 |                       {
 | 548 |                       {
 | 
| 471 | var oldText = textTarget.textContent; | 549 | var features = []; | 
| 472 | var me = this; | 550 |                         if (navigator.cookieEnabled) features.push("<?php echo _('Cookies'); ?>");
 | 
| - | 551 |                         if (fullscreen.isSupportedBy(document.documentElement)) features.push("<?php echo _('Fullscreen'); ?>");
 | |
| - | 552 |                         if (navigator.webkitGetGamepads && navigator.webkitGetGamepads().length) features.push("<?php echo _('Gamepad'); ?>");
 | |
| 473 | var oldHandler = eventTarget.onclick; | 553 |                         if (navigator.geolocation) features.push("<?php echo _('Geolocation'); ?>");
 | 
| - | 554 |                         if (typeof navigator.javaEnabled != "undefined" && navigator.javaEnabled()) features.push("Java");
 | |
| - | 555 |                         if (typeof window.localStorage != "undefined") features.push("Local Storage");
 | |
| 474 |                         eventTarget.onclick = function () {
 | 556 |                         if (navigator.plugins) features.push("Plugins");
 | 
| 475 | me.cancel(this, oldHandler, textTarget); | 557 |                         if (typeof window.sessionStorage != "undefined") features.push("Session Storage");
 | 
| 476 | }; | 558 |                         if (typeof window.ontouchstart != "undefined") features.push("Touch");
 | 
| 477 | textTarget.textContent = "<?php echo _("Window"); ?>"; | 559 |                         return features.join(" • ");
 | 
| 478 | } | 560 | } | 
| - | 561 | ||
| - | 562 | var sFeatures = getFeatures(); | |
| - | 563 |                       document.write('<span id="features" title="' + sFeatures + '">' + sFeatures + '<\/span>');
 | |
| - | 564 | ||
| - | 565 |                       window.setTimeout(function () {
 | |
| - | 566 | var sFeatures = getFeatures(); | |
| - | 567 |                         var oFeatures = document.getElementById("features");
 | |
| - | 568 | oFeatures.innerHTML = sFeatures; | |
| - | 569 | /* Converts CREs */ | |
| - | 570 | oFeatures.title = oFeatures.innerHTML; | |
| 479 | } | 571 | }, 1000); | 
| 480 | } | 572 | }()); | 
| - | 573 | </script><noscript><?php echo _('N/A'); ?></noscript></td> | |
| 481 | }; | 574 | </tr> | 
| 482 | }()); | 575 | </table> | 
| 483 | </script> | 576 | </div> | 
| 484 | <ul class="commands"> | 577 | <ul class="commands"> | 
| 485 | <li id="cmd1"><a href="index.php" | 578 | <li id="cmd1"><a href="index.php" | 
| 486 | title="Language selection" | 579 | title="Language selection" | 
| 487 | tabindex="1" | 580 | tabindex="1" | 
| 488 | class="button left right" | 581 | class="button left right" |