Subversion Repositories LCARS

Rev

Rev 159 | Rev 165 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
79 PointedEar 1
<!DOCTYPE html>
56 PointedEar 2
<html lang="<?php echo $language; ?>">
39 PointedEar 3
  <head>
72 PointedEar 4
    <title>Home — PointedEars’ Website</title>
39 PointedEar 5
 
6
    <link rel="SHORTCUT ICON" href="favicon.ico">
7
 
79 PointedEar 8
    <!-- Browsers: Character Encoding -->
9
    <meta charset="UTF-8">
39 PointedEar 10
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
11
 
79 PointedEar 12
    <!-- Robots: Index, Subordinated Files, Description, Author,
39 PointedEar 13
         Keywords, Document Date -->
14
    <meta name="robots" content="index">
15
    <meta name="robots" content="follow">
105 PointedEar 16
<?php /*
39 PointedEar 17
    <meta name="description"
56 PointedEar 18
          content="PointedEars' Website: <?php
151 PointedEar 19
            $description = tr("Access to the United Federation of Planets Databanks, an online songbook and software downloads always worth a click. Coming soon: The best internet links categorized and much more via a bilingual (English/German) LCARS terminal styled user interface that can be also used to surf the web anonymously! Bookmark NOW!");
56 PointedEar 20
            echo $description;
21
            ?>">
105 PointedEar 22
*/ ?>
56 PointedEar 23
    <meta name="author" content="Thomas ‘PointedEars’ Lahn">
39 PointedEar 24
 
56 PointedEar 25
    <?php /* No localization of keywords at the time */ ?>
39 PointedEar 26
    <meta name="keywords"
27
          content="Appz, Download, Links, LCARS, Star Trek, TNG, The Next Generation, DS9, Deep Space 9, Deep Space Nine, VOY, Voyager, UFP, Federation, United Federation of Planets, Database, Databank, Song, Songbook, Surf, anonymously, Raumschiff Enterprise, DNG, Die n&auml;chste Generation, VFP, F&ouml;deration, Vereinte F&ouml;deration der Planeten, Datenbasis, Datenbank, Lied, Liedtext, surfen, anonym">
56 PointedEar 28
<?php /*
29
    <meta name="keywords" http-equiv="Keywords" lang="de" content="">
30
    <meta name="keywords" http-equiv="Keywords" lang="en-us" content="">
31
    <meta name="keywords" http-equiv="Keywords" lang="en" content="">
32
*/ ?>
39 PointedEar 33
    <meta name="revisit-after" content="3 days">
34
 
35
    <!-- Robots: Dublin Core Metadata (http://purl.org/metadata/dublin_core) -->
79 PointedEar 36
    <meta name="dcterms.title" content="PointedEars’ Website">
37
    <meta name="dcterms.creator" content="Thomas ‘PointedEars’ Lahn">
38
    <meta name="dcterms.subject" content="Private Web site">
105 PointedEar 39
<?php /*
79 PointedEar 40
    <meta name="dcterms.description"
56 PointedEar 41
          content="PointedEars' Website: <?php echo $description; ?>">
105 PointedEar 42
*/ ?>
79 PointedEar 43
    <meta name="dcterms.publisher" content="PointedEars">
44
    <meta name="dcterms.date" content="2002-05-23T10:56:00+02:00">
45
    <meta name="dcterms.created" content="2002-05-23">
105 PointedEar 46
    <meta name="dcterms.modified" content="<?php echo gmdate('Y-m-dTH:i:sO', $modi); ?>">
56 PointedEar 47
<?php /*
79 PointedEar 48
    <meta name="dcterms.type" content="">
49
    <meta name="dcterms.format" content="">
56 PointedEar 50
*/ ?>
79 PointedEar 51
    <meta name="dcterms.identifier" content="http://pointedears.de/index.<?php echo $language; ?>">
52
    <meta name="dcterms.language" content="<?php echo $language; ?>">
53
    <meta name="dcterms.rightsHolder"
54
          content="Copyright © 2002&#8211;<?php echo gmdate('Y', $modi); ?> Thomas&nbsp;Lahn.">
55
    <meta name="dcterms.rights"
151 PointedEar 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."); ?>">
105 PointedEar 57
 
56 PointedEar 58
<?php /*
39 PointedEar 59
    <!-- <link rel="stylesheet" type="text/css" href="styles/lcars.css"> -->
60
    <!-- <link rel="stylesheet" type="text/css" href="styles/lcars21.css"> -->
142 PointedEar 61
    <!-- No optimization here: IE 9 in non-Compatibility Mode sends "Accept: text/css",
62
         Apache responds with 406:
63
         http://blog.s9y.org/archives/227-ie9-has-trouble-with-css-content-types.html -->
56 PointedEar 64
*/ ?>
138 PointedEar 65
    <link rel="stylesheet" type="text/css" href="styles/lcars-basic">
128 PointedEar 66
<?php
138 PointedEar 67
  $isLocal = ($_SERVER['HTTP_HOST'] === 'localhost');
56 PointedEar 68
  $printable = (isset($_GET['printable']) && $_GET['printable'] === '1');
69
  if (!$printable)
70
  {
128 PointedEar 71
?>
138 PointedEar 72
    <link rel="stylesheet" type="text/css" href="styles/lcars22<?php
56 PointedEar 73
      if (isset($_GET['ani']) && $_GET['ani'] !== '')
74
      {
75
        echo '?ani=' . $_GET['ani'];
76
      }
77
    ?>">
78
<?php
79
  }
80
?>
39 PointedEar 81
    <style type="text/css">
82
      <!--
83
      p {
84
        max-width: 100%;
85
      }
86
      -->
87
    </style>
88
 
130 PointedEar 89
    <script type="text/javascript" src="scripts/builder?src=object,dom,dom/storage,dom/events,dom/timeout,dom/window<?php
90
      if ($isLocal)
91
      {
92
        ?>&amp;verbose=1&amp;debug=1<?php
93
      }
94
    ?>"></script>
39 PointedEar 95
    <script type="text/javascript">
56 PointedEar 96
<?php
39 PointedEar 97
      /*
98
      var ms1Day = 60*60*24*1000; // ms for 1 days = 60sec*60min*24hours*1000ms
99
      var msLeaveDays = ms1Day*6;
100
      var ms30Days=ms1Day*30;
101
      var delta;
102
      var newTime=new Date();
103
      var msTime=newTime.getTime();
104
      var msExpire=msTime+ms30Days;
105
      var expireTime=new Date(msExpire);
106
 
107
      cookieVal=
108
          "savedTime=" + newTime.toGMTString()
109
        + "; expires=" + expireTime.toGMTString()
110
        + "; domain=anybody"
111
        + "; path=/";
112
      document.cookie= cookieVal;
113
      */
56 PointedEar 114
?>
115 PointedEar 115
      function body_load ()
116
      {
117
        if (typeof this.ontouchstart != 'undefined')
118
        {
119
          this.ontouchstart = function () {};
120
        }
121
 
122
        if (fullscreen.isSupportedBy(document.documentElement))
123
        {
124
          var fullscreenLI = jsx.dom.getElementById("cmd3");
125
          fullscreenLI.firstChild.style.cursor = "";
126
        }
127
      }
39 PointedEar 128
    </script>
56 PointedEar 129
    <?php /* <bgsound src="media/interface/sound/beginop.wav" loop="infinite"> */ ?>
39 PointedEar 130
  </head>
115 PointedEar 131
  <body class="fade-in" onload="body_load()">
39 PointedEar 132
    <div id="content">
79 PointedEar 133
      <h1 style="text-align: center"><img
39 PointedEar 134
            src="media/video/img/vulcan_hand-black-bg.png"
135
            width="120"
136
            height="168"
151 PointedEar 137
            alt="<?php echo tr("Vulcan greeting"); ?>"
138
            title="<?php echo tr("Vulcan greeting"); ?>"
85 PointedEar 139
            style="border: none; cursor: default"
39 PointedEar 140
            onmouseover="return setStatus(this.title)"
141
            onmouseout="return resetStatus()"><br>
151 PointedEar 142
        <?php echo tr("Welcome to PointedEars’ Website"); ?></h1>
56 PointedEar 143
<?php
144
  if (!$printable)
145
  {
146
?>
79 PointedEar 147
      <p class="instruction" style="font-size: 100%; text-align: center"><?php
56 PointedEar 148
        echo sprintf(
151 PointedEar 149
          tr("This site uses recent <a href='https://developer.mozilla.org/en-US/docs/'"
84 PointedEar 150
            . " title='Learn more: Mozilla Developer Network'>Web technologies</a>."
79 PointedEar 151
            . " You can use the <a href='index.%s?printable=1'>%s</a>"
152
            . " if it is not displayed properly with your software."),
56 PointedEar 153
          $language,
151 PointedEar 154
          tr('Printable version'));
56 PointedEar 155
        ?></p>
156
<?php
157
  }
158
 
159
  /*
39 PointedEar 160
      <p>
161
        | <a href="leisure/" target="_top"
162
            >Freizeit-Datenbank</a>
163
        | <a href="mozilla/" target="_top">Mozilla</a>
164
        | <a href="poetry/" target="_top">Poesie</a>
56 PointedEar 165
  */
39 PointedEar 166
 
56 PointedEar 167
  /*
39 PointedEar 168
        | [<abbr title="nur in englischer Sprache verf&uuml;gbar"
169
                 >en</abbr>]
170
        | <a href="selfhtml.de/" target="_top">SELFHTML.DE</a>
56 PointedEar 171
  */
172
  /*
39 PointedEar 173
        | <a href="lyrics/" target="_top">Songbook</a>
43 PointedEar 174
        | </p>
56 PointedEar 175
  */
176
              /*
39 PointedEar 177
      <p><a href="about/worm.de.html" target="_top"
178
            >Seltsame E-Mails bekommen?</a></p>
56 PointedEar 179
               */
180
/*
39 PointedEar 181
      <noscript>
182
        <a
183
          href="http://pointedears.de/"
184
          title="PointedEars' Website"
185
          >Diese Website zu Ihren Lesezeichen hinzuf&uuml;gen</a>
186
      </noscript>
56 PointedEar 187
 
39 PointedEar 188
      <!-- Klicken Sie hier, falls Sie nach 5 Sekunden nicht automatisch
189
           weitergeleitet werden. -->
56 PointedEar 190
*/
191
?>
192
<?php
105 PointedEar 193
  $app = "Welcome/$language";
194
  require_once 'footer.phtml';
56 PointedEar 195
      /* embed src="media/interface/speech/de/warten.wav" width="0" height="0"
196
      hidden="true" autostart="true" dir="ltr" lang="de" */
197
?>
39 PointedEar 198
    </div>
199
    <div id="LCARS">
56 PointedEar 200
<?php /*
39 PointedEar 201
      <div id="button-grid" style="position: absolute; opacity: 0.3">
202
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
203
 
204
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
205
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
206
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
207
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
208
 
209
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
210
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
211
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
212
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
213
 
214
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
215
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
216
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
217
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
218
 
219
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
220
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
221
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
222
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
223
 
224
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
225
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
226
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
227
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
228
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
229
 
230
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
231
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
232
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
233
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
234
 
235
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
236
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
237
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
238
 
239
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
240
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
241
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
242
 
243
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
244
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
245
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
246
 
247
        <a class="button" style="display: block; clear: left; float: left"><span class="text">Button 1</span></a>
248
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
249
        <a class="button" style="display: block; float: left"><span class="text">Button 1</span></a>
250
      </div>
56 PointedEar 251
*/ ?>
39 PointedEar 252
      <div id="bow">
253
        <div id="bow-top">
254
          <div class="separator-left">&nbsp;</div>
91 PointedEar 255
          <div class="text"><span>PointedEars’ Website</span></div>
39 PointedEar 256
        </div>
257
        <div id="bow-top-left">
258
          <div class="concave">&nbsp;</div>
109 PointedEar 259
          <div style="position: absolute; top: 3.2em; left: 0; background-color: black">
260
            <div class="bow" style="margin-top: 0.2em; width: 8em; height: 1em">&nbsp;</div>
261
          </div>
39 PointedEar 262
        </div>
263
        <div id="bottom">
264
          <div id="bow-bottom">
265
            <div class="concave">&nbsp;</div>
266
            <div class="spacer">&nbsp;</div>
267
        </div>
268
        </div>
43 PointedEar 269
 
270
        <div class="menu-container">
88 PointedEar 271
          <nav class="menu">
109 PointedEar 272
            <ul style="padding-top: 1em">
56 PointedEar 273
            <?php foreach ($languages as $key => $name): ?>
74 PointedEar 274
              <li><a href="index.<?php echo $key; ?>?ani=0"
275
                     class="button<?php if ($language === $key) { ?> selected<?php } ?>"
276
                     tabindex="2"><span class="text"><?php echo $name; ?></span></a></li>
56 PointedEar 277
            <?php endforeach; ?>
278
            </ul>
279
            <div class="bow" style="margin-bottom: 0.4em; width: 8em; height: 0.4em">&nbsp;</div>
280
            <ul style="margin-bottom: 1.2em">
281
              <li><a href="<?php echo $menu['scripts']['path']; ?>" target="_top" class="button"><span class="text"><?php echo $menu['scripts']['text']; ?></span></a></li>
71 PointedEar 282
              <li><a href="<?php echo $menu['es-matrix']['path']; ?>" target="_top" class="button"
283
                     title="<?php echo $menu['es-matrix']['title']; ?>"
284
                     ><span class="text"><?php echo $menu['es-matrix']['text']; ?></span></a></li>
56 PointedEar 285
              <li><a href="<?php echo $menu['devel']['path']; ?>" target="_top" class="button"><span class="text"><?php echo $menu['devel']['text']; ?></span></a></li>
286
            </ul>
287
            <ul style="margin-bottom: 0.2em">
113 PointedEar 288
              <li><a href="psf/" target="_top"
289
                 class="button ancillary"
151 PointedEar 290
                 ><abbr title="<?php echo tr("PointedEars' Standard Frases"); ?>"
113 PointedEar 291
                        class="text">psf</abbr></a></li>
292
            <li><a href="<?php echo $menu['series']['path']; ?>" target="_top" class="button ancillary"
153 PointedEar 293
                   title="<?php echo tr('List of recommended TV shows and episodes, with logos in CSS'); ?>"
294
                   ><span class="text"><?php echo $menu['series']['text']; ?></span></a></li>
56 PointedEar 295
              <li><a href="<?php echo $menu['ufpdb']['path']; ?>" target="_top" class="button database"
79 PointedEar 296
                     ><abbr title="<?php echo $menu['ufpdb']['title']; ?>"
297
                            class="text"><?php echo $menu['ufpdb']['text']; ?></abbr></a></li>
56 PointedEar 298
            </ul>
299
            <div style="position: relative; margin-bottom: 1.2em">
300
              <div class="bow" style="width: 8em; height: 0.8em">&nbsp;</div>
301
            </div>
302
            <ul>
303
              <li><a href="http://climateapps2.oerc.ox.ac.uk/cpdnboinc/show_user.php?userid=648544"
304
                     target="_top" class="button secondary"
151 PointedEar 305
                     title="<?php echo tr("The world’s largest climate forecasting experiment for the 21st century"); ?>"
56 PointedEar 306
                     ><span class="text">climateprediction.net</span></a></li>
160 PointedEar 307
              <li><a href="http://fah-web2.stanford.edu/cgi-bin/main.py?qtype=userpage&username=Thomas_Lahn"
56 PointedEar 308
                     target="_top" class="button secondary"
151 PointedEar 309
                     title="<?php echo tr("Distributed computing to understand protein folding, protein aggregation, and related diseases"); ?>"
56 PointedEar 310
                     ><span class="text">Folding at home</span></a></li>
311
             <li><a href="http://lhcathomeclassic.cern.ch/sixtrack/show_user.php?userid=221181"
312
                    target="_top" class="button secondary"
151 PointedEar 313
                    title="<?php echo tr("Particle physics research with the Large Hadron Collider at CERN"); ?>"
56 PointedEar 314
                    ><span class="text">LHC at home</span></a></li>
315
             <li><a href="http://setiathome.berkeley.edu/show_user.php?userid=378921"
316
                    target="_top" class="button secondary"
151 PointedEar 317
                    title="<?php echo tr("The Search for Extra-Terrestrial Intelligence at HOME"); ?>"
56 PointedEar 318
                    ><span class="text">SETI at home</span></a></li>
159 PointedEar 319
             <li><a href="http://stackoverflow.com/users/855543/pointedears"
320
                    target="_top" class="button secondary"
321
                    title="<?php echo tr("Me on Stack Overflow"); ?>"
322
                    ><span class="text">Stack Overflow</span></a></li>
153 PointedEar 323
             <li><a href="https://twitter.com/PointedEars2"
324
                    target="_top" class="button secondary"
325
                    title="<?php echo tr("Me on Twitter"); ?>"
326
                    ><span class="text">Twitter</span></a></li>
56 PointedEar 327
           </ul>
328
<?php /*
329
            <script type="text/javascript">
330
              var sURL = location.href;
331
              var sFavAnchorTitle =
332
                  "Klicken Sie hier, um PointedEars' Website Ihren Favoriten"
333
                + " hinzuzufügen";
334
              var sOtherAnchorTitle =
335
                  "Klicken Sie hier mit der rechten Maustaste, um PointedEars' Website"
336
                + " Ihren Lesezeichen hinzuzufügen";
337
              var sFavoriteTitle = "PointedEars' Website";
338
 
339
              if (jsx.object.isHostMethod(jsx.global.window, "external", "AddFavorite"))
340
              {
341
                document.write(
342
                    '<div style="position: relative; margin-top: 1em; border-bottom: 0.2em solid transparent">'
343
                  + '  <div class="bow" style="width: 8em; height: 1em">&nbsp;<\/div>'
344
                  + '  <div class="bow" style="position: absolute; top: 0; left: 8.2em; width: 2em; height: 1em">&nbsp;<\/div>'
345
                  + '</div>'
346
                  + '<a href="javascript:window.external.AddFavorite('
347
                  + ' sURL, sFavoriteTitle);" title="' + sFavAnchorTitle + '"'
348
                  + ' class="button"'
349
                  + ' onclick="window.external.AddFavorite('
350
                  + ' sURL, sFavoriteTitle); return false"'
79 PointedEar 351
                  + ' onmouseover="return setStatus(sFavAnchorTitle)"'
352
                  + ' onmouseout="return resetStatus()"'
56 PointedEar 353
                  + '><span class="text">Favorit<\/span><\/a>');
354
              }
355
            </script>
356
*/ ?>
88 PointedEar 357
          </nav>
39 PointedEar 358
        </div>
56 PointedEar 359
      </div>
360
      <div id="connectors">
119 PointedEar 361
        <div class="bow top left">&nbsp;</div>
362
        <div class="bow top right">&nbsp;</div>
56 PointedEar 363
 
119 PointedEar 364
        <div class="bow mid left">&nbsp;</div>
365
        <div class="bow mid right">&nbsp;</div>
56 PointedEar 366
      </div>
367
      <div class="multi-display">
39 PointedEar 368
        <div class="upper">
74 PointedEar 369
          <div class="content">
370
            <div class="title"><span>Home</span></div>
118 PointedEar 371
            <div class="analysis">
372
              <table>
373
                <tr>
151 PointedEar 374
                  <th><?php echo tr('Display'); ?>:</th>
118 PointedEar 375
                  <td><script type="text/javascript">
158 PointedEar 376
                    var _addEventListener = jsx.dom.addEventListener;
377
                    var _runAsync = jsx.dom.timeout.runAsync;
146 PointedEar 378
                    var ID_SCREEN_DIM = 'screenDim';
379
                    var ID_AVAIL_DIM = 'availDim';
380
                    var ID_INNER_DIM = 'innerDim';
158 PointedEar 381
                    var TEXT_NOT_AVAILABLE = "<?php echo tr('N/A'); ?>";
146 PointedEar 382
 
383
                    var dim = (function () {
130 PointedEar 384
                      var screenInfo = jsx.dom.window.screenInfo;
146 PointedEar 385
 
386
                      return {
121 PointedEar 387
                        getScreenText: function () {
388
                          var screenDim = screenInfo.getDim();
389
                          return screenDim.width + "×" + screenDim.height;
390
                        },
146 PointedEar 391
 
121 PointedEar 392
                        getAvailText: function () {
393
                          var availDim = screenInfo.getAvailDim();
151 PointedEar 394
                          return availDim.width + "×" + availDim.height + " <?php echo tr('available'); ?>";
121 PointedEar 395
                        },
146 PointedEar 396
 
121 PointedEar 397
                        getInnerText: function () {
398
                          var innerDim = screenInfo.getInnerDim();
151 PointedEar 399
                          return ", " + innerDim.width + "×" + innerDim.height + " <?php echo tr('used'); ?>";
121 PointedEar 400
                        },
146 PointedEar 401
 
121 PointedEar 402
                        getColorDepthText: function () {
403
                          var colorDepth = screenInfo.getColorDepth();
404
                          return colorDepth
151 PointedEar 405
                            ? '2<sup>' + colorDepth + "<\/sup> <?php echo tr('colors'); ?>"
121 PointedEar 406
                            : "";
407
                        }
408
                      };
146 PointedEar 409
                    }());
410
 
411
                    (function () {
121 PointedEar 412
                      var screenDimText = dim.getScreenText();
413
                      var availDimText = dim.getAvailText();
414
                      var innerDimText = dim.getInnerText();
415
                      var colorDepthText = dim.getColorDepthText();
416
                      var displayInfo = (screenDimText || availDimText || innerDimText || colorDepthText)
151 PointedEar 417
                        ?   (screenDimText ? '<span id="' + ID_SCREEN_DIM + '">' + screenDimText + '<\/span> <?php echo tr('pixels'); ?>' : "")
146 PointedEar 418
                          + (availDimText ? ' (<span id="' + ID_AVAIL_DIM + '">' + availDimText + "<\/span>" : "")
419
                          + (innerDimText ? '<span id="' + ID_INNER_DIM + '">' + innerDimText + "<\/span>)" : "")
121 PointedEar 420
                          + (colorDepthText ? ' ×&nbsp;<span id="colorDepth">' + colorDepthText + "<\/span>" : "")
158 PointedEar 421
                        : TEXT_NOT_AVAILABLE;
121 PointedEar 422
 
133 PointedEar 423
                      /* FIXME: Convert HTML to text, update whole title text */
118 PointedEar 424
                      document.write('<span>' + displayInfo + '<\/span>');
121 PointedEar 425
 
426
                      var oColorDepth;
158 PointedEar 427
                      var tColor = _runAsync(function () {
121 PointedEar 428
                        if (typeof oColorDepth == "undefined")
429
                        {
430
                          oColorDepth = document.getElementById("colorDepth");
431
                        }
432
 
433
                        if (oColorDepth)
434
                        {
145 PointedEar 435
                          var colorDepthText = dim.getColorDepthText();
158 PointedEar 436
                          <?php /* FIXME: Also update title attribute value */ ?>
145 PointedEar 437
                          if (oColorDepth.innerHTML != colorDepthText)
438
                          {
439
                            oColorDepth.innerHTML = colorDepthText;
440
                          }
121 PointedEar 441
                        }
130 PointedEar 442
 
158 PointedEar 443
                        tColor = this.run();
121 PointedEar 444
                      }, 1000);
158 PointedEar 445
 
446
                      _addEventListener(document, "unload", function () {
447
                        tColor.unset();
448
                        tColor = null;
449
                      });
118 PointedEar 450
                    }());
151 PointedEar 451
                  </script><noscript><?php echo tr('N/A'); ?></noscript></td>
118 PointedEar 452
                </tr>
453
                <tr>
151 PointedEar 454
                  <th><?php echo tr('User Agent'); ?>:</th>
118 PointedEar 455
                  <td><script type="text/javascript">
456
                    (function () {
457
                      var ua = navigator.userAgent;
458
                      document.write('<span id="ua" title="' + ua + '">' + ua + '<\/span>');
121 PointedEar 459
 
460
                      var oUA;
158 PointedEar 461
                      var tUA = _runAsync(function () {
121 PointedEar 462
                        if (typeof oUA == "undefined")
463
                        {
464
                          oUA = document.getElementById("ua");
465
                        }
466
 
467
                        if (oUA)
468
                        {
145 PointedEar 469
                          var ua = navigator.userAgent;
121 PointedEar 470
 
145 PointedEar 471
                          if (oUA.innerHTML != ua)
472
                          {
473
                            oUA.innerHTML = ua;
474
                          }
475
 
158 PointedEar 476
                          <?php /* Converts CREs */ ?>
145 PointedEar 477
                          var oUAhtml = oUA.innerHTML
478
                          if (oUA.title != oUAhtml)
479
                          {
480
                            oUA.title = oUAhtml;
481
                          }
121 PointedEar 482
                        }
130 PointedEar 483
 
158 PointedEar 484
                        tUA = this.run();
118 PointedEar 485
                      }, 1000);
158 PointedEar 486
 
487
                      _addEventListener(document, "unload", function () {
488
                        tUA.unset();
489
                        tUA = null;
490
                      });
118 PointedEar 491
                    }());
151 PointedEar 492
                  </script><noscript><?php echo tr('N/A'); ?></noscript></td>
118 PointedEar 493
                </tr>
494
                <tr>
151 PointedEar 495
                  <th><?php echo tr('Features'); ?>:</th>
133 PointedEar 496
                  <td><script type="text/javascript">
145 PointedEar 497
                    var fullscreen = jsx.dom.window.fullscreen;
158 PointedEar 498
 
499
                    jsx.dom.geolocation = {
500
                      getText: function (position) {
501
                        var coords = position.coords;
502
                        var latitude = coords.latitude;
503
                        var longitude = coords.longitude;
504
                        var altitude = coords.altitude;
505
                        var altitudeAccuracy = coords.altitudeAccuracy;
506
                        var speed = coords.speed;
507
                        var heading = coords.heading;
508
 
509
                        return [
510
                          "<?php echo tr('Latitude:'); ?> " + (latitude != null ? latitude + "°" : TEXT_NOT_AVAILABLE),
511
                          "<?php echo tr('Longitude:'); ?> " + (longitude != null ? longitude + "°" : TEXT_NOT_AVAILABLE),
512
                          "<?php echo tr('Lat/Lng Accuracy:'); ?> " + coords.accuracy + " m",
513
                          "<?php echo tr('Altitude:'); ?> " + (altitude != null ? altitude + " m": TEXT_NOT_AVAILABLE),
514
                          "<?php echo tr('Alt. Accuracy:'); ?> " + (altitudeAccuracy != null ? altitudeAccuracy + " m": TEXT_NOT_AVAILABLE),
515
                          "<?php echo tr('Speed:'); ?> " + (speed != null && !isNaN(speed) ? speed + " m∕s": TEXT_NOT_AVAILABLE),
516
                          "<?php echo tr('Heading:'); ?> " + (heading != null && !isNaN(heading) ? heading + "°" : TEXT_NOT_AVAILABLE)
517
                        ].join("\n");
518
                      },
519
 
520
                      show: function (position) {
521
                        window.alert("<?php echo tr('Your current coordinates on Terra'); ?>\n\n" + this.getText(position));
522
                      }
523
                    };
524
 
145 PointedEar 525
                    (function () {
526
                      function getFeatures ()
527
                      {
528
                        var features = [];
529
                        if (typeof document.cookie != "undefined")
530
                        {
151 PointedEar 531
                          var cookiesText = "<?php echo tr('Cookies'); ?>"
145 PointedEar 532
                          if (navigator.cookieEnabled)
95 PointedEar 533
                          {
145 PointedEar 534
                            if (document.cookie)
118 PointedEar 535
                            {
158 PointedEar 536
                              var cookies = document.cookie;
537
                              cookies = cookies.split(/\s*;\s*/);
538
                              features.push('<a href="#" title="'
539
                                + cookies.join("&#13;&#10;")
540
                                + '"'
541
                                + ' onclick="window.alert(\'<?php echo tr('Cookies for'); ?> ' + document.domain + '\\n\\n' + cookies.join("\\n") + '\'); return false">' + cookiesText + '<\/a>');
118 PointedEar 542
                            }
145 PointedEar 543
                            else
118 PointedEar 544
                            {
145 PointedEar 545
                              features.push('<span class="unavailable"'
151 PointedEar 546
                                + ' title="<?php echo tr('Cookies supported, but no data for this site'); ?>"'
150 PointedEar 547
                                + '>' + cookiesText + '<\/span>');
118 PointedEar 548
                            }
145 PointedEar 549
                          }
550
                          else
551
                          {
150 PointedEar 552
                            features.push('<span class="offline"'
151 PointedEar 553
                              + ' title="<?php echo tr('Cookies supported, but disabled'); ?>"'
150 PointedEar 554
                              + '>' + cookiesText + '<\/span>');
145 PointedEar 555
                          }
556
                        }
557
 
558
                        if (fullscreen.isSupportedBy(document.documentElement))
559
                        {
151 PointedEar 560
                          features.push("<?php echo tr('Fullscreen'); ?>");
145 PointedEar 561
                        }
118 PointedEar 562
 
145 PointedEar 563
                        if (navigator.webkitGetGamepads && navigator.webkitGetGamepads().length)
564
                        {
151 PointedEar 565
                          features.push("<?php echo tr('Gamepad'); ?>");
145 PointedEar 566
                        }
118 PointedEar 567
 
145 PointedEar 568
                        if (navigator.geolocation)
569
                        {
158 PointedEar 570
                          features.push('<a href="#" title="<?php echo tr('Get location'); ?>"'
571
                            + ' onclick="navigator.geolocation.getCurrentPosition('
572
                            + 'function (position) { jsx.dom.geolocation.show(position); }); return false"'
573
                            + '><?php echo tr('Geolocation'); ?><\/a>');
145 PointedEar 574
                        }
575
 
576
                        if (typeof navigator.javaEnabled != "undefined" && navigator.javaEnabled())
577
                        {
578
                          features.push("Java");
579
                        }
580
 
581
                        var storage = jsx.dom.storage;
582
                        if (storage.localStorage.isSupported()) features.push("Local Storage");
583
 
584
                        if (navigator.plugins)
585
                        {
586
                          if (navigator.plugins.length > 0)
95 PointedEar 587
                          {
145 PointedEar 588
                            features.push('<span title="'
589
                              + navigator.plugins.length
151 PointedEar 590
                              + ' <?php echo tr('plugins installed'); ?>">Plugins<\/span>');
95 PointedEar 591
                          }
145 PointedEar 592
                          else
118 PointedEar 593
                          {
150 PointedEar 594
                                features.push('<span class="unavailable"'
151 PointedEar 595
                                + ' title="<?php echo tr('Plugins supported, but none detected'); ?>"'
150 PointedEar 596
                                + '>Plugins<\/span>');
118 PointedEar 597
                          }
76 PointedEar 598
                        }
145 PointedEar 599
 
600
                        if (storage.sessionStorage.isSupported())
601
                        {
602
                          features.push("Session Storage");
603
                        }
604
 
118 PointedEar 605
                        if (typeof window.ontouchstart != "undefined") features.push("Touch");
606
                        return features.join(" &#8226; ");
76 PointedEar 607
                      }
145 PointedEar 608
 
609
                      function stripTags (s)
610
                      {
158 PointedEar 611
                        return s.replace(/<[^>]+>/g, "");
145 PointedEar 612
                      }
613
 
118 PointedEar 614
                      var sFeatures = getFeatures();
158 PointedEar 615
                      document.write('<span id="features" title="' + stripTags(sFeatures) + '">' + sFeatures + '<\/span>');
118 PointedEar 616
 
121 PointedEar 617
                      var oFeatures;
145 PointedEar 618
                      var oFeaturesHtml;
158 PointedEar 619
                      var tFeatures = _runAsync(function () {
121 PointedEar 620
                        if (typeof oFeatures == "undefined")
621
                        {
622
                          oFeatures = document.getElementById("features");
623
                        }
624
 
625
                        if (oFeatures)
626
                        {
145 PointedEar 627
                          var sNewFeatures = getFeatures();
121 PointedEar 628
 
145 PointedEar 629
                          if (!oFeaturesHtml)
630
                          {
631
                            oFeaturesHtml = document.createElement("span");
632
                          }
633
 
634
                          if (oFeaturesHtml)
635
                          {
636
                            oFeaturesHtml.innerHTML = sNewFeatures;
637
                            sNewFeatures = oFeaturesHtml.innerHTML;
638
                          }
639
 
640
                          if (oFeatures.innerHTML != sNewFeatures)
641
                          {
642
                            oFeatures.innerHTML = sNewFeatures;
643
                          }
644
 
133 PointedEar 645
                          /* Converts CREs */
145 PointedEar 646
                          var newTitle = stripTags(oFeatures.innerHTML)
647
                          if (oFeatures.title != newTitle)
648
                          {
649
                            oFeatures.title = newTitle;
650
                          }
121 PointedEar 651
                        }
131 PointedEar 652
 
653
                        tFeatures = this.run();
118 PointedEar 654
                      }, 1000);
655
                    }());
145 PointedEar 656
 
158 PointedEar 657
                    _addEventListener(document, "unload", function () {
658
                      tFeatures.unset();
659
                      tFeatures = null;
660
                    });
661
 
151 PointedEar 662
                    var windowText = "<?php echo tr("Window"); ?>";
663
                  </script><noscript><?php echo tr('N/A'); ?></noscript></td>
118 PointedEar 664
                </tr>
665
              </table>
666
            </div>
92 PointedEar 667
            <ul class="commands">
97 PointedEar 668
              <li id="cmd1"><a href="index.php"
92 PointedEar 669
                title="Language selection"
670
                tabindex="1"
671
                class="button left right"
672
                onmouseover="return setStatus(this.title + ': ' + this.href)"
673
                onmouseout="return resetStatus()"
674
                onfocus="return this.onmouseover()"
675
                onblur="return this.onmouseout()"
676
                ><abbr class="text" title="Language selection">Language</abbr></a></li>
677
              <li id="cmd2"><a href="index.<?php echo $language; ?>?printable=1"
151 PointedEar 678
                title="<?php echo tr('Printable version'); ?>"
92 PointedEar 679
                tabindex="1"
680
                class="button left right"
681
                onmouseover="return setStatus(this.title + ': ' + this.href)"
682
                onmouseout="return resetStatus()"
683
                onfocus="return this.onmouseover()"
684
                onblur="return this.onmouseout()"
151 PointedEar 685
                ><span class="text"><?php echo tr("Printable"); ?></span></a></li>
92 PointedEar 686
              <li id="cmd3"><div class="button left right"
115 PointedEar 687
                   style="cursor: not-allowed !important"
146 PointedEar 688
                   onclick="fullscreen.requestOn(document.documentElement, this)"
121 PointedEar 689
                   onkeyup="if (event.keyCode == 13) { this.onclick(); }"
92 PointedEar 690
                   ><span class="text"><script type="text/javascript">
146 PointedEar 691
                     var cmd3;
95 PointedEar 692
                     if (fullscreen.isSupportedBy(document.documentElement))
92 PointedEar 693
                     {
158 PointedEar 694
                       _addEventListener(window, "load", function () {
146 PointedEar 695
                         if (typeof cmd3 == "undefined")
696
                         {
697
                           cmd3 = jsx.dom.getElementById("cmd3");
698
                         }
699
 
700
                         if (cmd3)
701
                         {
702
                           cmd3.firstChild.tabIndex = "1";
703
                         }
704
                       });
147 PointedEar 705
 
151 PointedEar 706
                       var fullscreenText = "<?php echo tr("Fullscreen"); ?>";
147 PointedEar 707
                       document.write(fullscreenText);
146 PointedEar 708
                     }
709
 
710
                     var oScreenDim;
711
                     var oAvailDim;
712
                     var oInnerDim;
713
                     var _gEBI = jsx.dom.getElementById;
714
                     var previousIsFullscreen;
715
                     var oldHandler;
716
 
158 PointedEar 717
                     _addEventListener(window, "resize", function () {
718
                       <?php /* FIXME: Also update title attribute value */ ?>
146 PointedEar 719
                       if (typeof oScreenDim == "undefined") oScreenDim = _gEBI(ID_SCREEN_DIM);
720
                       if (oScreenDim) oScreenDim.innerHTML = dim.getScreenText();
721
 
722
                       if (typeof oAvailDim == "undefined") oAvailDim = _gEBI(ID_AVAIL_DIM);
723
                       if (oAvailDim) oAvailDim.innerHTML = dim.getAvailText();
724
 
725
                       if (typeof oInnerDim == "undefined") oInnerDim = _gEBI(ID_INNER_DIM);
726
                       if (oInnerDim) oInnerDim.innerHTML = dim.getInnerText();
727
 
728
                       if (fullscreen.isSupportedBy(document.documentElement))
729
                       {
95 PointedEar 730
                         var nowIsFullscreen = fullscreen.isFullscreen();
731
                         if (nowIsFullscreen != previousIsFullscreen)
732
                         {
146 PointedEar 733
                           if (typeof cmd3 == "undefined")
734
                           {
735
                             cmd3 = document.getElementById("cmd3");
736
                           }
737
 
95 PointedEar 738
                           var target = cmd3.firstChild;
739
                           var textTarget = target.firstChild;
740
                           if (nowIsFullscreen)
741
                           {
742
                             oldHandler = target.onclick;
146 PointedEar 743
                             target.onclick = function () {
744
                               fullscreen.cancel();
745
                             };
151 PointedEar 746
                             textTarget.textContent = "<?php echo tr("Window"); ?>";
95 PointedEar 747
                           }
748
                           else
749
                           {
146 PointedEar 750
                             target.onclick = oldHandler;
147 PointedEar 751
                             textTarget.textContent = fullscreenText;
95 PointedEar 752
                           }
753
 
754
                           previousIsFullscreen = nowIsFullscreen;
755
                         }
146 PointedEar 756
                       }
757
                     });
92 PointedEar 758
                   </script></span></div></li>
759
              <li id="cmd4"><div class="button left right" style="cursor: not-allowed !important">&nbsp;</div></li>
760
            </ul>
72 PointedEar 761
          </div>
74 PointedEar 762
          <div class="elbo-button">
151 PointedEar 763
            <span class="text" title="<?php echo tr("Date of last modification"); ?>"
107 PointedEar 764
                  ><?php echo gmdate('Ym.d', $modi); ?></span>
74 PointedEar 765
          </div>
39 PointedEar 766
          <div class="elbo">
126 PointedEar 767
            <span class="text"><abbr title="Library Computer Access and Retrieval System">LCARS</abbr> PE-22A</span>
39 PointedEar 768
            <div class="concave">&nbsp;</div>
769
          </div>
79 PointedEar 770
          <div class="border">
771
            <div class="left">&nbsp;</div>
772
            <div class="right">&nbsp;</div>
773
          </div>
39 PointedEar 774
        </div>
775
        <div class="lower">
776
          <div class="elbo">
777
            <div class="concave">&nbsp;</div>
778
          </div>
779
          <div class="bg">&nbsp;</div>
780
          <div class="border-container">
79 PointedEar 781
            <div class="border">
782
              <div class="left">&nbsp;</div>
783
              <div class="right">&nbsp;</div>
784
            </div>
39 PointedEar 785
          </div>
786
        </div>
787
      </div>
788
    </div>
789
  </body>
158 PointedEar 790
</html>