- Changed "Welcome at" to "Welcome to" (thanks to Andrew Poulos) - Improved LCARS design - Uses template - Homepage uses PHP and gettext support (TODO: English version)
| /trunk/styles/lcars22.css |
|---|
| 78,6 → 78,7 |
| } |
| body.empty { |
| margin-top: 3em; |
| margin-left: 0.2em; |
| margin-bottom: 3em; |
| } |
| 210,6 → 211,7 |
| .empty #bow-top { |
| border-top-left-radius: 1.2em; |
| border-bottom-left-radius: 1.2em; |
| min-width: 10em; |
| } |
| /* 0.0 to 1.0 s */ |
| 217,6 → 219,7 |
| from { |
| left: 90%; |
| border-top-left-radius: 0; |
| border-bottom-left-radius: 0; |
| } |
| } |
| 241,6 → 244,10 |
| text-overflow: ellipsis; |
| } |
| .empty #bow-top .text { |
| left: 0.93em; |
| } |
| /* 0.0 to 1.0 s */ |
| @-webkit-keyframes bow-top-text { |
| from { |
| 267,6 → 274,53 |
| white-space: nowrap; |
| } |
| .empty #footer-container { |
| position: fixed; |
| left: 0.2em; |
| bottom: 0; |
| right: 0.2em; |
| min-height: 2.4em; |
| padding-top: 0.2em; |
| padding-bottom: 0.2em; |
| background-color: #000; |
| } |
| .empty #footer { |
| position: absolute; |
| bottom: 0; |
| left: 0; |
| right: 0; |
| height: 2em; |
| margin-bottom: 0.2em; |
| background-color: #999; |
| border-radius: 1.2em; |
| line-height: 0.8; |
| } |
| .empty #footer .text { |
| position: absolute; |
| bottom: 0; |
| left: 0.75em; |
| margin: 0 !important; |
| background-color: #000; |
| color: #fc0; |
| padding-top: 0.1em; |
| padding-left: 0.1em; |
| padding-right: 0.1em; |
| text-transform: uppercase; |
| font-size: 2.4em; |
| overflow: hidden; |
| text-overflow: ellipsis; |
| } |
| .empty #footer .text span { |
| padding-right: 0.1em; |
| padding-left: 0.1em; |
| background-color: #000; |
| text-transform: uppercase; |
| white-space: nowrap; |
| } |
| .empty .separator-left { |
| position: absolute; |
| left: 2em; |
| 370,7 → 424,7 |
| } |
| #bow ul { |
| margin: 0 0.2em 0.5em 0; |
| margin: 0 0.2em 0.2em 0; |
| padding: 0; |
| } |
| 417,45 → 471,17 |
| background-color: #000; |
| } |
| .empty #bow-bottom-left-concave { |
| display: none; |
| } |
| .empty #footer-container { |
| position: fixed; |
| left: 0.2em; |
| bottom: 0; |
| right: 0.2em; |
| min-height: 2.4em; |
| padding-top: 0.2em; |
| padding-bottom: 0.2em; |
| background-color: #000; |
| } |
| .empty #footer { |
| #bow-bottom .spacer { |
| position: absolute; |
| bottom: 0; |
| left: 0; |
| right: 0; |
| height: 2em; |
| margin-bottom: 0.2em; |
| background-color: #999; |
| border-radius: 1.2em; |
| line-height: 0.8; |
| left: 10.2em; |
| bottom: 0em; |
| width: 0.2em; |
| height: 0.5em; |
| background-color: black; |
| } |
| .empty #footer .text { |
| position: absolute; |
| bottom: 0; |
| left: 0.75em; |
| margin: 0 !important; |
| background-color: #000; |
| color: #fc0; |
| padding-top: 0.1em; |
| padding-left: 0.1em; |
| padding-right: 0.1em; |
| text-transform: uppercase; |
| font-size: 2.4em; |
| .empty #bow-bottom-left-concave { |
| display: none; |
| } |
| /* Controls */ |
| 675,14 → 701,15 |
| .group { |
| margin: 0 auto; |
| position: relative; |
| width: 9em; |
| width: 7.7em; |
| } |
| .group .separator { |
| float: left; |
| position: absolute; |
| margin-left: 14px; |
| width: 29px; |
| top: 0; |
| left: 0; |
| width: 1.5em; |
| height: 100%; |
| background-color: #c66; |
| color: #000; |
| 690,49 → 717,60 |
| .group .separator:after { |
| position: absolute; |
| width: 18px; |
| height: 9px; |
| bottom: 3px; |
| left: 3px; |
| width: 0.8em; |
| height: 0.5em; |
| bottom: 0.25em; |
| left: 0.25em; |
| background-color: #000; |
| content: "\a0"; |
| } |
| .group ul { |
| margin-left: 35px; |
| margin-left: 1.7em; |
| } |
| .group li { |
| margin-bottom: 4px; |
| margin-bottom: 0; |
| } |
| .group .button:visited:hover, |
| .group .button:visited, |
| .group .button |
| { |
| display: block; |
| position: relative; |
| width: 6em; |
| background-color: #99f !important; |
| } |
| .group .button.right { |
| border-top-left-radius: 0; |
| border-bottom-left-radius: 0; |
| .group li:last-child .button |
| { |
| margin-bottom: 0; |
| } |
| .group .button.left { |
| border-top-right-radius: 0; |
| border-bottom-right-radius: 0; |
| .button.right { |
| border-top-right-radius: 1em; |
| border-bottom-right-radius: 1em; |
| } |
| .button.right .text { |
| right: 1em; |
| } |
| .button.left { |
| border-top-left-radius: 1em; |
| border-bottom-left-radius: 1em; |
| } |
| .group .button .key { |
| display: inline-block; |
| position: absolute; |
| left: 0.25em; |
| left: 0.2em; |
| top: 0; |
| bottom: 0; |
| padding: 0 1px; |
| padding: 0 0.1em; |
| background-color: #000; |
| color: #f90; |
| font-size: 222%; |
| font-size: 2.4em; |
| text-transform: uppercase; |
| } |
| line-height: 0.9; |
| } |
| /trunk/index.de.php |
|---|
| 0,0 → 1,10 |
| <?php |
| /* Set language to German */ |
| $language = 'de'; |
| $locale = 'de_DE'; |
| putenv("LC_ALL=$locale"); |
| setlocale(LC_ALL, $locale); |
| require_once 'global.php'; |
| require_once 'index.phtml'; |
| ?> |
| /trunk/index.html |
|---|
| 65,7 → 65,7 |
| } |
| #languages .key { |
| min-width: 0.7em; |
| min-width: 0.65em; |
| } |
| </style> |
| <script type="text/javascript" src="scripts/object.js"></script> |
| 185,7 → 185,7 |
| <div id="bow"> |
| <div id="bow-top"> |
| <div class="separator-left"> </div> |
| <h1 class="text">PointedEars’ Website</h1> |
| <h1 class="text"><span>PointedEars’ Website</span></h1> |
| </div> |
| <div id="bow-left"> </div> |
| <div id="bow-left-concave"> </div> |
| 192,7 → 192,7 |
| </div> |
| <div id="footer-container"> |
| <div id="footer"> |
| <h2 class="text">Language Selection</h2> |
| <h2 class="text"><span>Language Selection</span></h2> |
| <div class="separator-right"> </div> |
| </div> |
| </div> |
| 202,8 → 202,8 |
| src="media/video/img/vulcan_hand-black-bg.png" |
| width="120" |
| height="168" |
| alt="Dif-tor heh smusma - Live long and prosper - Leben Sie lang und erfolgreich" |
| title="Dif-tor heh smusma - Live long and prosper - Leben Sie lang und erfolgreich" |
| alt="Vulcan greeting" |
| title="Vulcan greeting" |
| border="0" |
| onmouseover="return setStatus(this.title)" |
| onmouseout="return resetStatus()"></div> |
| 221,14 → 221,14 |
| <div class="group"> |
| <div class="separator"> </div> |
| <ul style="text-align: center" id="languages"> |
| <li><a href="index.en.html" class="button right" lang="en" |
| <ul id="languages"> |
| <li><a href="index.en" class="button right" lang="en" |
| hreflang="en" accesskey="e" |
| ><span class="key">en</span> English</a></li> |
| <li><a href="index.de.html" class="button right" lang="de" |
| ><span class="key">en</span> <span class="text">English</span></a></li> |
| <li><a href="index.de" class="button right" lang="de" |
| hreflang="de" accesskey="d" |
| onclick="return navigateTo(this)" |
| ><span class="key">de</span> Deutsch</a></li> |
| ><span class="key">de</span> <span class="text">Deutsch</span></a></li> |
| </ul> |
| <div style="clear: both"><!-- --></div> |
| </div> |
| /trunk/index.en.html |
|---|
| 95,7 → 95,7 |
| border="0" |
| onmouseover="return setStatus(this.title)" |
| onmouseout="return resetStatus()"><br> |
| Welcome at PointedEars' Website</h1> |
| Welcome to PointedEars' Website</h1> |
| <p><a href="index.de.html" class="button" |
| title="Switch language to German"> DEUTSCH </a></p> |
| /trunk/po/de.mo |
|---|
| Cannot display: file marked as a binary type. |
| svn:mime-type = application/octet-stream |
| Property changes: |
| Added: svn:mime-type |
| ## -0,0 +1 ## |
| +application/octet-stream |
| \ No newline at end of property |
| Index: po/de.po |
| =================================================================== |
| --- po/de.po (nonexistent) |
| +++ po/de.po (revision 38) |
| @@ -0,0 +1,29 @@ |
| +# PointedEars' Website |
| +# Copyright (C) 2012 Thomas 'PointedEars' Lahn |
| +# This file is distributed under the same license as the de.pointedears package. |
| +# Thomas 'PointedEars' Lahn <webmaster@PointedEars.de>, 2012. |
| +# |
| +msgid "" |
| +msgstr "" |
| +"Project-Id-Version: PE 0.3\n" |
| +"Report-Msgid-Bugs-To: Thomas 'PointedEars' Lahn <webmaster@PointedEars.de>\n" |
| +"POT-Creation-Date: 2012-12-14 04:36+0100\n" |
| +"PO-Revision-Date: 2012-12-03 04:16+0100\n" |
| +"Last-Translator: Thomas 'PointedEars' Lahn <webmaster@PointedEars.de>\n" |
| +"Language-Team: German <webmaster@PointedEars.de>\n" |
| +"Language: de_DE\n" |
| +"MIME-Version: 1.0\n" |
| +"Content-Type: text/plain; charset=UTF-8\n" |
| +"Content-Transfer-Encoding: 8bit\n" |
| + |
| +#: ../global.php:33 |
| +msgid "Scripting" |
| +msgstr "" |
| + |
| +#: ../global.php:34 |
| +msgid "Other software" |
| +msgstr "Andere Software" |
| + |
| +#: ../global.php:35 |
| +msgid "LCARS database" |
| +msgstr "LCARS-Datenbank" |
| Index: po/de.pointedears.pot |
| =================================================================== |
| --- po/de.pointedears.pot (nonexistent) |
| +++ po/de.pointedears.pot (revision 38) |
| @@ -0,0 +1,30 @@ |
| +# SOME DESCRIPTIVE TITLE. |
| +# Copyright (C) YEAR Thomas 'PointedEars' Lahn |
| +# This file is distributed under the same license as the PACKAGE package. |
| +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. |
| +# |
| +#, fuzzy |
| +msgid "" |
| +msgstr "" |
| +"Project-Id-Version: PACKAGE VERSION\n" |
| +"Report-Msgid-Bugs-To: Thomas 'PointedEars' Lahn <webmaster@PointedEars.de>\n" |
| +"POT-Creation-Date: 2012-12-14 04:36+0100\n" |
| +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
| +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
| +"Language-Team: LANGUAGE <LL@li.org>\n" |
| +"Language: \n" |
| +"MIME-Version: 1.0\n" |
| +"Content-Type: text/plain; charset=UTF-8\n" |
| +"Content-Transfer-Encoding: 8bit\n" |
| + |
| +#: ../global.php:33 |
| +msgid "Scripting" |
| +msgstr "" |
| + |
| +#: ../global.php:34 |
| +msgid "Other software" |
| +msgstr "" |
| + |
| +#: ../global.php:35 |
| +msgid "LCARS database" |
| +msgstr "" |
| \ No newline at end of file |
| Index: po/POTFILES.in |
| =================================================================== |
| --- po/POTFILES.in (nonexistent) |
| +++ po/POTFILES.in (revision 38) |
| @@ -0,0 +1 @@ |
| +../global.php |
| Index: po/de_DE.mo |
| =================================================================== |
| Cannot display: file marked as a binary type. |
| svn:mime-type = application/octet-stream |
| /po/de_DE.mo |
|---|
| Property changes: |
| Added: svn:mime-type |
| ## -0,0 +1 ## |
| +application/octet-stream |
| \ No newline at end of property |
| Index: po/PACKAGE |
| =================================================================== |
| --- po/PACKAGE (nonexistent) |
| +++ po/PACKAGE (revision 38) |
| @@ -0,0 +1,16 @@ |
| +# Makefile snippet that holds all package-dependent information. |
| + |
| +# Add more languages here! Beware that this is a makefile snippet and |
| +# you have to adhere to make syntax. |
| +LINGUAS = de |
| + |
| +# Textdomain for our package. |
| +TEXTDOMAIN = de.pointedears |
| + |
| +# Initial copyright holder added to pot and po files. |
| +#COPYRIGHT_HOLDER = Guido Flohr |
| +COPYRIGHT_HOLDER = Thomas 'PointedEars' Lahn |
| + |
| +# Where to send msgid bugs? |
| +#MSGID_BUGS_ADDRESS = Guido Flohr <guido@imperia.net> |
| +MSGID_BUGS_ADDRESS = Thomas 'PointedEars' Lahn <webmaster@PointedEars.de> |
| Index: po/Makefile |
| =================================================================== |
| --- po/Makefile (nonexistent) |
| +++ po/Makefile (revision 38) |
| @@ -0,0 +1,96 @@ |
| +# Makefile for various po files. |
| + |
| +srcdir = . |
| +libdir = .. |
| + |
| +#CATALOGS = $(addsuffix .po, LINGUAS) |
| +CATALOGS = $(LINGUAS) |
| +MO_FILES = $(addsuffix .mo, $(LINGUAS)) |
| + |
| +MSGMERGE = msgmerge |
| +MSGFMT = msgfmt |
| +XGETTEXT = xgettext |
| +CATOBJEXT = .po |
| + |
| +include PACKAGE |
| + |
| +TD = $(strip $(TEXTDOMAIN)) |
| + |
| +default: help |
| + |
| +all: $(TD).pot update-po update-mo install |
| + |
| +help: |
| + @echo "Available targets:" |
| + @echo " pot - remake master catalog" |
| + @echo " update-po - merge po files" |
| + @echo " update-mo - regenerate mo files" |
| + @echo " install - install mo files" |
| + @echo " all - all of the above" |
| + |
| +POTFILES = $(srcdir)/POTFILES.in \ |
| + $(shell cat $(srcdir)/POTFILES.in) |
| + |
| +pot: $(TD).pot |
| + |
| +clean: |
| + rm -f *~ *.bak *.mo |
| + |
| +# FIXME: The parameter --from-code is only needed if your sources contain |
| +# any 8 bit data (even in comments). UTF-8 is only a guess here, but it |
| +# will at least accept any 8 bit data. |
| +# |
| +# The parameter "--language=perl" is not strictly needed because the |
| +# source language of all our files will be auto-detected by xgettext |
| +# by their filename extension. You should even avoid this parameter |
| +# if you want to extract strings from multiple source languages. |
| +$(TD).pot: $(POTFILES) |
| + $(XGETTEXT) --output=$(srcdir)/$(TD).pox --from-code=utf-8 \ |
| + --add-comments=TRANSLATORS: --files-from=$(srcdir)/POTFILES.in \ |
| + --copyright-holder="$(COPYRIGHT_HOLDER)" \ |
| + --msgid-bugs-address="$(MSGID_BUGS_ADDRESS)" \ |
| + --keyword --keyword='_' --keyword='$$__' --keyword=__ --keyword=__x \ |
| + --keyword=__n:1,2 --keyword=__nx:1,2 --keyword=__xn:1,2 \ |
| + --keyword=__p:1c,2 --keyword=__np:1c,2,3 \ |
| + --keyword=__npx:1c,2,3 --keyword=N__ --keyword=N__n:1,2 \ |
| + --keyword=N__p:1c,2 --keyword=N__np:1c,2,3 --keyword=%__ \ |
| + rm -f $@ && mv $(TD).pox $@ |
| + |
| +install: $(MO_FILES) |
| + cd $(srcdir); \ |
| + targetdir='$(libdir)/LocaleData'; \ |
| + languages='$(LINGUAS)'; \ |
| + for lang in $$languages; do \ |
| + mkdir -p "$$targetdir/$$lang/LC_MESSAGES" || exit 1; \ |
| + dest="$$targetdir/$$lang/LC_MESSAGES/$(TD).mo"; \ |
| + cat="$$lang.mo"; \ |
| + echo "installing $$cat as $$dest"; \ |
| + cp -f $$cat $$dest && chmod 644 $$dest || exit 1; \ |
| + done |
| + |
| +update-mo: $(MO_FILES) |
| + |
| +update-po: |
| + $(MAKE) $(TD).pot |
| + cd $(srcdir); \ |
| + catalogs='$(CATALOGS)'; \ |
| + for cat in $$catalogs; do \ |
| + cat=`basename $$cat`; \ |
| + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ |
| + mv $$lang.po $$lang.old.po; \ |
| + echo "$$lang:"; \ |
| + if $(MSGMERGE) $$lang.old.po $(TD).pot -o $$lang.po; then \ |
| + rm -f $$lang.old.po; \ |
| + else \ |
| + echo "msgmerge for $$cat failed!"; \ |
| + rm -f $$lang.po; \ |
| + mv $$lang.old.po $$lang.po; \ |
| + fi; \ |
| + done |
| + |
| +.SUFFIXES: |
| +.SUFFIXES: .po .mo |
| + |
| +.po.mo: |
| + $(MSGFMT) --check --statistics --verbose -o $@ $< |
| + |