This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, fifteen has been updated via 9027a25d92afbbb4486c17deac66b4c439e80520 (commit) via 4234ca5d64f8e34c40ee48c58599f00cb3a15862 (commit) via 0051027b79220c17a8eb5e05dcf79e1549c94489 (commit) via 935f311ed9dc4c67d7e603f6b08a45d1225422c8 (commit) via 8a39dd30e3d7f8386d15db6960926d75148610be (commit) via fe9f7588151c5f98a73f5718cd19b1743ff1d6c2 (commit) via dd2ef3b2370e89a79dc01ada8aa1f00d8f0615ee (commit) via 121628ea689844c3e6618d0e7ae4b83f8b3cbea6 (commit) via 3f653a29ae0e030a36fe4a49652fc0411eed782c (commit) via f14e224b1c98924dd46f50fa3539c7b799ebc35d (commit) via 802d795488a1387e8b564201894d3db39681d08b (commit) via b3f7b96824062f9fa3d9222a4b7e117ae20c949f (commit) via a4b9426b0f5f965128fc745013e26b3d1cd316a9 (commit) via ff972c82761ab198819dc268b154b7b4cc0b06df (commit) via c3f00878dded2e80bfaba67627d2826ad8d49f89 (commit) via 697a4d5217b10429a40a5224ac65b680485dc080 (commit) via f880f8a22528ff0e896eb2a3e1bfdaa676493966 (commit) via 926241aea24a60dce858c863aac39d6be83b23df (commit) via eb6389d09de11b2aad940d5bbacb5e2a28ce79fa (commit) via 865c76157580b18551df1033781fbf3b8fccc8e6 (commit) via ceda40f2bcd67c7e0b3215e0c32eec21ca59811c (commit) via af731c7dc5e4d947893bcd1427d14195665bcb4f (commit) from 1dc44471365cccef7ab2b3ec766c0d0c26f86475 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 9027a25d92afbbb4486c17deac66b4c439e80520 Merge: 4234ca5 935f311 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 21:16:17 2014 +0100
Merge remote-tracking branch 'ms/fifteen-theme' into fifteen
commit 4234ca5d64f8e34c40ee48c58599f00cb3a15862 Author: Alexander Marx amarx@ipfire.org Date: Sun Jan 5 15:18:24 2014 +0100
Firewall: cleanup of unused JS variables.
commit 0051027b79220c17a8eb5e05dcf79e1549c94489 Author: Alexander Marx amarx@ipfire.org Date: Fri Jan 3 09:13:33 2014 +0100
Firewall: Bugfix - when creating a SNAT rule and using a service or servicegroup there was an errormessage displayed
commit 935f311ed9dc4c67d7e603f6b08a45d1225422c8 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 21:07:41 2014 +0100
Add an alternative default theme with rounded corners.
commit 8a39dd30e3d7f8386d15db6960926d75148610be Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:38:14 2014 +0100
fifteen: Add all updated themes and CGI files to the updater.
commit fe9f7588151c5f98a73f5718cd19b1743ff1d6c2 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:36:06 2014 +0100
ipfire theme: Show hostname in title by default.
commit dd2ef3b2370e89a79dc01ada8aa1f00d8f0615ee Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:32:23 2014 +0100
ipfire-theme: Update path to jQuery.
commit 121628ea689844c3e6618d0e7ae4b83f8b3cbea6 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:31:32 2014 +0100
GUI: Remove the blend effects option.
commit 3f653a29ae0e030a36fe4a49652fc0411eed782c Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:25:46 2014 +0100
ipfire-legacy theme: Update web resource paths.
commit f14e224b1c98924dd46f50fa3539c7b799ebc35d Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:18:55 2014 +0100
ipfire theme: Update file paths to web resource files.
commit 802d795488a1387e8b564201894d3db39681d08b Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:06:08 2014 +0100
header.pl: Include required perl module.
commit b3f7b96824062f9fa3d9222a4b7e117ae20c949f Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 19:02:09 2014 +0100
ipfire theme: Remove lowercase stylization.
commit a4b9426b0f5f965128fc745013e26b3d1cd316a9 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 18:58:27 2014 +0100
Rename ipfire-new theme to ipfire.
commit ff972c82761ab198819dc268b154b7b4cc0b06df Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 18:58:02 2014 +0100
Rename old default theme to ipfire-legacy.
commit c3f00878dded2e80bfaba67627d2826ad8d49f89 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 18:51:22 2014 +0100
ipfire-new: Update footer.
commit 697a4d5217b10429a40a5224ac65b680485dc080 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 18:15:40 2014 +0100
ipfire-new: Cleanup CSS code.
Lots of code that was either redudant, unused or unnecessary has been removed or has been cleaned up.
commit f880f8a22528ff0e896eb2a3e1bfdaa676493966 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 15:10:27 2014 +0100
ipfire-new: Re-indent CSS file.
commit 926241aea24a60dce858c863aac39d6be83b23df Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 14:59:24 2014 +0100
speedmeter: Convert bytes to bits.
I assumed that it was computes in bits (hence the variable names).
commit eb6389d09de11b2aad940d5bbacb5e2a28ce79fa Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 14:50:34 2014 +0100
ipfire-new: Fix positioning of the page headline.
commit 865c76157580b18551df1033781fbf3b8fccc8e6 Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 14:40:06 2014 +0100
speedmeter: Show speeds in Bit/s, kBit/s, MBit/s, ...
Also clean up the dirty HTML code.
commit ceda40f2bcd67c7e0b3215e0c32eec21ca59811c Author: Michael Tremer michael.tremer@ipfire.org Date: Sun Jan 5 14:15:11 2014 +0100
ipfire-new: Fix encoding of refreshInetInfo.js.
commit af731c7dc5e4d947893bcd1427d14195665bcb4f Author: Alexander Marx alexander.marx@ipfire.org Date: Sun Jan 5 14:04:59 2014 +0100
New theme for the IPFire web user interface
-----------------------------------------------------------------------
Summary of changes: config/cfgroot/header.pl | 5 +- config/rootfiles/core/fifteen/filelists/files | 6 +- config/rootfiles/core/fifteen/update.sh | 3 + doc/language_issues.de | 1 + doc/language_issues.en | 1 + doc/language_issues.es | 2 + doc/language_issues.fr | 2 + doc/language_issues.nl | 2 + doc/language_issues.pl | 2 + doc/language_issues.ru | 2 + doc/language_issues.tr | 2 + doc/language_missings | 4 + html/cgi-bin/firewall.cgi | 12 +- html/cgi-bin/gui.cgi | 21 +- html/html/themes/darkdos/include/functions.pl | 10 - .../themes/{ipfire => ipfire-legacy}/images/n1.gif | Bin .../themes/{ipfire => ipfire-legacy}/images/n2.gif | Bin .../themes/{ipfire => ipfire-legacy}/images/n3.gif | Bin .../themes/{ipfire => ipfire-legacy}/images/n4.gif | Bin .../themes/{ipfire => ipfire-legacy}/images/n5.gif | Bin .../themes/{ipfire => ipfire-legacy}/images/n6.gif | Bin .../{ipfire => ipfire-legacy}/images/spacer.gif | Bin .../{ipfire => ipfire-legacy}/include/colors.txt | 0 .../{ipfire => ipfire-legacy}/include/functions.pl | 12 +- .../{ipfire => ipfire-legacy}/include/style.css | 14 +- html/html/themes/ipfire/images/tux2.png | Bin 0 -> 9640 bytes .../themes/ipfire/include/css/style-rounded.css | 130 +++++ html/html/themes/ipfire/include/css/style.css | 261 ++++++++++ html/html/themes/ipfire/include/functions.pl | 529 +++++++-------------- .../themes/ipfire/include/js/refreshInetInfo.js | 69 +++ html/html/themes/maniac/include/functions.pl | 10 - langs/de/cgi-bin/de.pl | 1 + langs/en/cgi-bin/en.pl | 1 + lfs/apache2 | 1 + 34 files changed, 688 insertions(+), 415 deletions(-) rename html/html/themes/{ipfire => ipfire-legacy}/images/n1.gif (100%) copy html/html/themes/{ipfire => ipfire-legacy}/images/n2.gif (100%) copy html/html/themes/{ipfire => ipfire-legacy}/images/n3.gif (100%) rename html/html/themes/{ipfire => ipfire-legacy}/images/n4.gif (100%) copy html/html/themes/{ipfire => ipfire-legacy}/images/n5.gif (100%) copy html/html/themes/{ipfire => ipfire-legacy}/images/n6.gif (100%) rename html/html/themes/{ipfire => ipfire-legacy}/images/spacer.gif (100%) copy html/html/themes/{ipfire => ipfire-legacy}/include/colors.txt (100%) copy html/html/themes/{ipfire => ipfire-legacy}/include/functions.pl (96%) rename html/html/themes/{ipfire => ipfire-legacy}/include/style.css (91%) create mode 100644 html/html/themes/ipfire/images/tux2.png create mode 100644 html/html/themes/ipfire/include/css/style-rounded.css create mode 100644 html/html/themes/ipfire/include/css/style.css create mode 100644 html/html/themes/ipfire/include/js/refreshInetInfo.js
Difference in files: diff --git a/config/cfgroot/header.pl b/config/cfgroot/header.pl index 299d766..bf92507 100644 --- a/config/cfgroot/header.pl +++ b/config/cfgroot/header.pl @@ -12,6 +12,7 @@ package Header;
use CGI(); +use File::Basename; use HTML::Entities(); use Socket; use Time::Local; @@ -88,9 +89,11 @@ if ( -d "/var/ipfire/langs/${language}/" ) { }; };
+our $THEME_NAME = $settings{'THEME'}; + require "${swroot}/langs/en.pl"; require "${swroot}/langs/${language}.pl"; -eval `/bin/cat /srv/web/ipfire/html/themes/$settings{'THEME'}/include/functions.pl`; +eval `/bin/cat /srv/web/ipfire/html/themes/$THEME_NAME/include/functions.pl`;
sub orange_used () { if ($ethsettings{'CONFIG_TYPE'} =~ /^[24]$/) { diff --git a/config/rootfiles/core/fifteen/filelists/files b/config/rootfiles/core/fifteen/filelists/files index 345521b..0f3a7e9 100644 --- a/config/rootfiles/core/fifteen/filelists/files +++ b/config/rootfiles/core/fifteen/filelists/files @@ -2,6 +2,7 @@ etc/system-release etc/issue etc/rc.d/init.d/network srv/web/ipfire/cgi-bin/credits.cgi +srv/web/ipfire/cgi-bin/gui.cgi srv/web/ipfire/cgi-bin/index.cgi srv/web/ipfire/cgi-bin/netinternal.cgi srv/web/ipfire/cgi-bin/ovpnmain.cgi @@ -11,8 +12,9 @@ srv/web/ipfire/cgi-bin/speed.cgi srv/web/ipfire/cgi-bin/urlfilter.cgi srv/web/ipfire/cgi-bin/vpnmain.cgi srv/web/ipfire/html/themes/darkdos -srv/web/ipfire/html/themes/ipfire/include/functions.pl -srv/web/ipfire/html/themes/maniac/include/functions.pl +srv/web/ipfire/html/themes/ipfire +srv/web/ipfire/html/themes/ipfire-legacy +srv/web/ipfire/html/themes/maniac var/ipfire/backup/bin/backup.pl var/ipfire/backup/exclude var/ipfire/backup/include diff --git a/config/rootfiles/core/fifteen/update.sh b/config/rootfiles/core/fifteen/update.sh index d2f2fc2..4a56972 100644 --- a/config/rootfiles/core/fifteen/update.sh +++ b/config/rootfiles/core/fifteen/update.sh @@ -32,6 +32,9 @@ do rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire done
+# Remove the old default theme +rm -rf /srv/web/ipfire/html/themes/ipfire + # Stop services
diff --git a/doc/language_issues.de b/doc/language_issues.de index 8b46d6f..bcc0214 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -133,6 +133,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed diff --git a/doc/language_issues.en b/doc/language_issues.en index d4281e0..1eccc80 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -155,6 +155,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed diff --git a/doc/language_issues.es b/doc/language_issues.es index 9ae2c0a..6b6424a 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -148,6 +148,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed @@ -828,6 +829,7 @@ WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address WARNING: untranslated string: static routes +WARNING: untranslated string: support donation WARNING: untranslated string: system information WARNING: untranslated string: tor WARNING: untranslated string: tor accounting diff --git a/doc/language_issues.fr b/doc/language_issues.fr index 7e5a1f5..2f7f60d 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -148,6 +148,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed @@ -819,6 +820,7 @@ WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address WARNING: untranslated string: snort working WARNING: untranslated string: static routes +WARNING: untranslated string: support donation WARNING: untranslated string: system information WARNING: untranslated string: tor WARNING: untranslated string: tor accounting diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 10e12db..d543069 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -150,6 +150,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed @@ -737,6 +738,7 @@ WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: snat new source ip address +WARNING: untranslated string: support donation WARNING: untranslated string: tor WARNING: untranslated string: tor accounting WARNING: untranslated string: tor accounting bytes diff --git a/doc/language_issues.pl b/doc/language_issues.pl index 9ae2c0a..6b6424a 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -148,6 +148,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed @@ -828,6 +829,7 @@ WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address WARNING: untranslated string: static routes +WARNING: untranslated string: support donation WARNING: untranslated string: system information WARNING: untranslated string: tor WARNING: untranslated string: tor accounting diff --git a/doc/language_issues.ru b/doc/language_issues.ru index f46ba7a..5a1296b 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -147,6 +147,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed @@ -800,6 +801,7 @@ WARNING: untranslated string: routing table WARNING: untranslated string: server restart WARNING: untranslated string: snat new source ip address WARNING: untranslated string: static routes +WARNING: untranslated string: support donation WARNING: untranslated string: tor WARNING: untranslated string: tor accounting WARNING: untranslated string: tor accounting bytes diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 5bd50a0..299c74d 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -155,6 +155,7 @@ WARNING: translation string unused: dial user password has been changed WARNING: translation string unused: dialup settings WARNING: translation string unused: disconnect WARNING: translation string unused: display traffic at home +WARNING: translation string unused: display webinterface effects WARNING: translation string unused: dmz pinhole configuration WARNING: translation string unused: dmz pinhole rule added WARNING: translation string unused: dmz pinhole rule removed @@ -742,6 +743,7 @@ WARNING: untranslated string: routing config added WARNING: untranslated string: routing config changed WARNING: untranslated string: routing table WARNING: untranslated string: snat new source ip address +WARNING: untranslated string: support donation WARNING: untranslated string: tor directory port WARNING: untranslated string: tor errmsg invalid directory port WARNING: untranslated string: urlfilter redirect template diff --git a/doc/language_missings b/doc/language_missings index e3e5c8e..86f45b0 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -307,6 +307,7 @@ < snat new source ip address < snort working < static routes +< support donation < system information < tor < tor 0 = disabled @@ -740,6 +741,7 @@ < Set time on boot < snat new source ip address < static routes +< support donation < system information < tor < tor 0 = disabled @@ -1126,6 +1128,7 @@ < server restart < snat new source ip address < static routes +< support donation < tor < tor 0 = disabled < tor accounting @@ -1516,6 +1519,7 @@ < server restart < snat new source ip address < static routes +< support donation < tor < tor 0 = disabled < tor accounting diff --git a/html/cgi-bin/firewall.cgi b/html/cgi-bin/firewall.cgi index 71ca752..29b70b4 100755 --- a/html/cgi-bin/firewall.cgi +++ b/html/cgi-bin/firewall.cgi @@ -158,11 +158,6 @@ print<<END; // dropdown menu changes. $("select").change(function() { var id = $(this).attr("name"); - - // When using SNAT or DNAT, check "USE NAT" Checkbox - if (id === 'snat' || id === 'dnat') { - $('#USE_NAT').prop('checked', true); - } $('#' + id).prop("checked", true); }); }); @@ -731,7 +726,7 @@ sub checkrule if($fwdfwsettings{'USE_NAT'} eq 'ON'){ #if no dest port is given in nat area, take target host port if($fwdfwsettings{'nat'} eq 'dnat' && $fwdfwsettings{'grp3'} eq 'TGT_PORT' && $fwdfwsettings{'dnatport'} eq ''){$fwdfwsettings{'dnatport'}=$fwdfwsettings{'TGT_PORT'};} - if($fwdfwsettings{'TGT_PORT'} eq ''){ + if($fwdfwsettings{'TGT_PORT'} eq '' && $fwdfwsettings{'dnatport'} ne '' && ($fwdfwsettings{'PROT'} eq 'TCP' || $fwdfwsettings{'PROT'} eq 'UDP')){ $errormessage=$Lang::tr{'fwdfw dnat porterr2'}; } #check if port given in nat area is a single valid port or portrange @@ -1447,6 +1442,7 @@ sub newrule $checked{'TIME_SAT'}{$fwdfwsettings{'TIME_SAT'}} = 'CHECKED'; $checked{'TIME_SUN'}{$fwdfwsettings{'TIME_SUN'}} = 'CHECKED'; $checked{'USE_NAT'}{$fwdfwsettings{'USE_NAT'}} = 'CHECKED'; + $checked{'nat'}{$fwdfwsettings{'nat'}} = 'CHECKED'; $selected{'TIME_FROM'}{$fwdfwsettings{'TIME_FROM'}} = 'selected'; $selected{'TIME_TO'}{$fwdfwsettings{'TIME_TO'}} = 'selected'; $selected{'ipfire'}{$fwdfwsettings{$fwdfwsettings{'grp2'}}} ='selected'; @@ -1594,7 +1590,7 @@ END <td width='5%'></td> <td width='40%'> <label> - <input type='radio' name='nat' id='dnat' value='dnat' checked> + <input type='radio' name='nat' value='dnat' $checked{'nat'}{'dnat'}> $Lang::tr{'fwdfw dnat'} </label> </td> @@ -1627,7 +1623,7 @@ END <td width='5%'></td> <td width='40%'> <label> - <input type='radio' name='nat' id='snat' value='snat' $checked{'nat'}{'snat'}> + <input type='radio' name='nat' value='snat' $checked{'nat'}{'snat'}> $Lang::tr{'fwdfw snat'} </label> </td> diff --git a/html/cgi-bin/gui.cgi b/html/cgi-bin/gui.cgi index 5abf88e..9804615 100644 --- a/html/cgi-bin/gui.cgi +++ b/html/cgi-bin/gui.cgi @@ -36,7 +36,6 @@ my %checked=(); my $errormessage='';
-$cgiparams{'FX'} = 'off'; $cgiparams{'SPEED'} = 'off'; $cgiparams{'WINDOWWITHHOSTNAME'} = 'off'; $cgiparams{'REBOOTQUESTION'} = 'off'; @@ -90,7 +89,6 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") $mainsettings{'WINDOWWITHHOSTNAME'} = $cgiparams{'WINDOWWITHHOSTNAME'}; $mainsettings{'REBOOTQUESTION'} = $cgiparams{'REBOOTQUESTION'}; $mainsettings{'PPPUPDOWNBEEP'} = $cgiparams{'PPPUPDOWNBEEP'}; - $mainsettings{'FX'} = $cgiparams{'FX'}; $mainsettings{'SPEED'} = $cgiparams{'SPEED'}; $mainsettings{'THEME'} = $cgiparams{'theme'}; $mainsettings{'REFRESHINDEX'} = $cgiparams{'REFRESHINDEX'}; @@ -101,7 +99,7 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") if ($mainsettings{'WINDOWWITHHOSTNAME'}) { $cgiparams{'WINDOWWITHHOSTNAME'} = $mainsettings{'WINDOWWITHHOSTNAME'}; } else { - $cgiparams{'WINDOWWITHHOSTNAME'} = 'off'; + $cgiparams{'WINDOWWITHHOSTNAME'} = 'on'; } if ($mainsettings{'REBOOTQUESTION'}) { @@ -116,12 +114,6 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") $cgiparams{'PPPUPDOWNBEEP'} = 'on'; }
- if ($mainsettings{'FX'}) { - $cgiparams{'FX'} = $mainsettings{'FX'}; - } else { - $cgiparams{'FX'} = 'on'; - } - if ($mainsettings{'THEME'}) { $cgiparams{'THEME'} = $mainsettings{'THEME'}; } else { @@ -146,11 +138,10 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") # Default settings if ($cgiparams{'ACTION'} eq "$Lang::tr{'restore defaults'}") { - $cgiparams{'WINDOWWITHHOSTNAME'} = 'off'; + $cgiparams{'WINDOWWITHHOSTNAME'} = 'on'; $cgiparams{'REBOOTQUESTION'} = 'on'; $cgiparams{'PPPUPDOWNBEEP'} = 'on'; $cgiparams{'REFRESHINDEX'} = 'off'; - $cgiparams{'FX'} = 'on'; $cgiparams{'SPEED'} = 'on'; $cgiparams{'THEME'} = 'ipfire'; } @@ -171,10 +162,6 @@ $checked{'REFRESHINDEX'}{'off'} = ''; $checked{'REFRESHINDEX'}{'on'} = ''; $checked{'REFRESHINDEX'}{$cgiparams{'REFRESHINDEX'}} = "checked='checked'";
-$checked{'FX'}{'off'} = ''; -$checked{'FX'}{'on'} = ''; -$checked{'FX'}{$cgiparams{'FX'}} = "checked='checked'"; - $checked{'SPEED'}{'off'} = ''; $checked{'SPEED'}{'on'} = ''; $checked{'SPEED'}{$cgiparams{'SPEED'}} = "checked='checked'"; @@ -197,10 +184,6 @@ print <<END <td colspan='2'><p><b>$Lang::tr{'display'}</b></td> </tr> <tr> - <td><input type='checkbox' name='FX' $checked{'FX'}{'on'} /></td> - <td>$Lang::tr{'display webinterface effects'}</td> -</tr> -<tr> <td><input type='checkbox' name='WINDOWWITHHOSTNAME' $checked{'WINDOWWITHHOSTNAME'}{'on'} /></td> <td>$Lang::tr{'display hostname in window title'}</td> </tr> diff --git a/html/html/themes/darkdos/include/functions.pl b/html/html/themes/darkdos/include/functions.pl index 82e9b0a..737e051 100644 --- a/html/html/themes/darkdos/include/functions.pl +++ b/html/html/themes/darkdos/include/functions.pl @@ -149,16 +149,6 @@ sub openpage { <head> <title>$title</title> $extrahead -END -; - if ($settings{'FX'} ne 'off') { - print <<END - <meta http-equiv="Page-Enter" content="blendTrans(Duration=0.5,Transition=12)" /> - <meta http-equiv="Page-Exit" content="blendTrans(Duration=0.5,Transition=12)" /> -END -; - } - print <<END <link rel="shortcut icon" href="/favicon.ico" /> <link rel="stylesheet" type="text/css" href="/themes/darkdos/include/style.css" /> <script language="javascript" type="text/javascript"> diff --git a/html/html/themes/ipfire-legacy/images/n1.gif b/html/html/themes/ipfire-legacy/images/n1.gif new file mode 100644 index 0000000..6eb5161 Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/n1.gif differ diff --git a/html/html/themes/ipfire-legacy/images/n2.gif b/html/html/themes/ipfire-legacy/images/n2.gif new file mode 100644 index 0000000..b92a19d Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/n2.gif differ diff --git a/html/html/themes/ipfire-legacy/images/n3.gif b/html/html/themes/ipfire-legacy/images/n3.gif new file mode 100644 index 0000000..6627c91 Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/n3.gif differ diff --git a/html/html/themes/ipfire-legacy/images/n4.gif b/html/html/themes/ipfire-legacy/images/n4.gif new file mode 100644 index 0000000..8698525 Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/n4.gif differ diff --git a/html/html/themes/ipfire-legacy/images/n5.gif b/html/html/themes/ipfire-legacy/images/n5.gif new file mode 100644 index 0000000..a032242 Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/n5.gif differ diff --git a/html/html/themes/ipfire-legacy/images/n6.gif b/html/html/themes/ipfire-legacy/images/n6.gif new file mode 100644 index 0000000..ed1781c Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/n6.gif differ diff --git a/html/html/themes/ipfire-legacy/images/spacer.gif b/html/html/themes/ipfire-legacy/images/spacer.gif new file mode 100644 index 0000000..5bfd67a Binary files /dev/null and b/html/html/themes/ipfire-legacy/images/spacer.gif differ diff --git a/html/html/themes/ipfire-legacy/include/colors.txt b/html/html/themes/ipfire-legacy/include/colors.txt new file mode 100644 index 0000000..6d7dd1c --- /dev/null +++ b/html/html/themes/ipfire-legacy/include/colors.txt @@ -0,0 +1,25 @@ +color1=#CD5B45 +color2=#EE6A50 +color3=#FF7256 +color4=#EE9572 +color5=#FFA07A +color6=#CDAF95 +color7=#EECBAD +color8=#FFDAB9 +color9=#FFE4C4 +color10=#FFCCCC +color11=#0000FF +color12=#00FF00 +color13=#FF0000 +color14=#FFD700 +color15=#CCCCCC +color16=#40E0D0 +color17=#90EE90 +color18=#F4A460 +color19=#EAE9EE +color20=#D6D6D6 +color21=#FFFFFF +color22=#F0F0F0 +color23=#FF00FF +color24=#6464FF +color25=#FF6464 diff --git a/html/html/themes/ipfire-legacy/include/functions.pl b/html/html/themes/ipfire-legacy/include/functions.pl new file mode 100644 index 0000000..1401030 --- /dev/null +++ b/html/html/themes/ipfire-legacy/include/functions.pl @@ -0,0 +1,404 @@ +#!/usr/bin/perl +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +sub showmenu() { + print <<EOF + <div id="menu"> + <ul> +EOF +; + foreach my $k1 ( sort keys %$menu ) { + if (! $menu->{$k1}{'enabled'}) { + next; + } + my $link = getlink($menu->{$k1}); + if ($link eq '') { + next; + } + if (! is_menu_visible($link)) { + next; + } + if ($menu->{$k1}->{'selected'}) { + print "<li><a href="$link" class="active">$menu->{$k1}{'caption'}</a></li>"; + } else { + print "<li><a href="$link">$menu->{$k1}{'caption'}</a></li>"; + } + } + print <<EOF + </ul> + </div> +EOF +; +} + +sub getselected($) { + my $root = shift; + if (!$root) { + return 0; + } + + foreach my $item (%$root) { + if ($root->{$item}{'selected'}) { + return $root->{$item}; + } + } +} + +sub showsubsection($$) { + my $root = shift; + + if (! $root) { + return; + } + my $selected = getselected($root); + if (! $selected) { + return; + } + my $submenus = $selected->{'subMenu'}; + if (! $submenus) { + return; + } + + print <<EOF + <h4><span>Side</span>menu</h4> + <ul class="links"> +EOF +; + foreach my $item (sort keys %$submenus) { + my $hash = $submenus->{$item}; + if (! $hash->{'enabled'}) { + next; + } + my $link = getlink($hash); + if ($link eq '') { + next; + } + if (! is_menu_visible($link)) { + next; + } + if ($hash->{'selected'}) { + print '<li class="selected">'; + } else { + print '<li>'; + } + + print "<a href="$link">$hash->{'caption'}</a></li>"; + } + + print <<EOF + </ul> +EOF +; +} + + +sub showsubsubsection($) { + my $root = shift; + if (!$root) { + return; + } + my $selected = getselected($root); + if (! $selected) { + return + } + if (! $selected->{'subMenu'}) { + return + } + + showsubsection($selected->{'subMenu'}, 'menu-subtop'); +} + +sub openpage { + my $title = shift; + my $boh = shift; + my $extrahead = shift; + + @URI=split ('?', $ENV{'REQUEST_URI'} ); + &General::readhash("${swroot}/main/settings", %settings); + &genmenu(); + + my $h2 = gettitle($menu); + + $title = "IPFire - $title"; + if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { + $title = "$settings{'HOSTNAME'}.$settings{'DOMAINNAME'} - $title"; + } + + print <<END +<?xml version='1.0' encoding='UTF-8'?> +<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> +<html xmlns='http://www.w3.org/1999/xhtml'> +<head> + <title>$title</title> + $extrahead + <link rel="shortcut icon" href="/favicon.ico" /> + <link rel="stylesheet" type="text/css" href="/themes/ipfire-legacy/include/style.css" /> + <script language="javascript" type="text/javascript"> + + function swapVisibility(id) { + el = document.getElementById(id); + if(el.style.display != 'block') { + el.style.display = 'block' + } + else { + el.style.display = 'none' + } + } + </script> +END +; +if ($settings{'SPEED'} ne 'off') { +print <<END + <script type="text/javascript" src="/include/jquery.js"></script> + <script type="text/javascript"> + var t_current; + var t_last; + var rxb_current; + var rxb_last; + var txb_current; + var txb_last; + function refreshInetInfo() { + $.ajax({ + url: '/cgi-bin/speed.cgi', + success: function(xml){ + t_current = new Date(); + var t_diff = t_current - t_last; + t_last = t_current; + + rxb_current = $("rxb",xml).text(); + var rxb_diff = rxb_current - rxb_last; + rxb_last = rxb_current; + + var rx_kbs = rxb_diff/t_diff; + rx_kbs = Math.round(rx_kbs*10)/10; + + txb_current = $("txb",xml).text(); + var txb_diff = txb_current - txb_last; + txb_last = txb_current; + + var tx_kbs = txb_diff/t_diff; + tx_kbs = Math.round(tx_kbs*10)/10; + + $("#rx_kbs").text(rx_kbs + ' kb/s'); + $("#tx_kbs").text(tx_kbs + ' kb/s'); + } + }); + window.setTimeout("refreshInetInfo()", 3000); + } + $(document).ready(function(){ + refreshInetInfo(); + }); + </script> + </head> + <body> +END +; +} +else { +print "</head><body>";} +print <<END +<!-- IPFIRE HEADER --> + +<div id="header"> + + <div id="header_inner" class="fixed"> + + <div id="logo"> +END +; + if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { + print "<h1><span>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</span></h1><br />"; + } else { + print "<h1><span>IPFire</span></h1><br />"; + } + print <<END + <h2>$h2</h2> + </div> + +END +; + &showmenu(); + +print <<END + </div> +</div> + +<div id="main"> + <div id="main_inner" class="fixed"> + <div id="primaryContent_2columns"> + <div id="columnA_2columns"> +END +; +} + +sub openpagewithoutmenu { + my $title = shift; + my $boh = shift; + my $extrahead = shift; + + @URI=split ('?', $ENV{'REQUEST_URI'} ); + &General::readhash("${swroot}/main/settings", %settings); + &genmenu(); + + my $h2 = gettitle($menu); + + $title = "IPFire - $title"; + if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { + $title = "$settings{'HOSTNAME'}.$settings{'DOMAINNAME'} - $title"; + } + + print <<END +<?xml version='1.0' encoding='UTF-8'?> +<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> +<html xmlns='http://www.w3.org/1999/xhtml'> +<head> + <title>$title</title> + $extrahead +END +; + if ($settings{'FX'} ne 'off') { + print <<END + <meta http-equiv="Page-Enter" content="blendTrans(Duration=0.5,Transition=12)" /> + <meta http-equiv="Page-Exit" content="blendTrans(Duration=0.5,Transition=12)" /> +END +; + } + print <<END + <link rel="shortcut icon" href="/favicon.ico" /> + <link rel="stylesheet" type="text/css" href="/include/style.css" /> + <script language="javascript" type="text/javascript"> + + function swapVisibility(id) { + el = document.getElementById(id); + if(el.style.display != 'block') { + el.style.display = 'block' + } + else { + el.style.display = 'none' + } + } + </script> + + </head> + <body> +<!-- IPFIRE HEADER --> + +<div id="header"> + + <div id="header_inner" class="fixed"> + + <div id="logo"> + <h1><span>IPFire</span></h1> + <h2>$h2</h2> + </div> + </div> +</div> + +<div id="main"> + <div id="main_inner" class="fixed"> + <div id="primaryContent_2columns"> + <div id="columnA_2columns"> +END +; +} + +sub closepage () { + my $status = &connectionstatus(); + my $uptime = `/usr/bin/uptime|cut -d " " -f 4-`; + $uptime =~ s/year(s|)/$Lang::tr{'year'}/; + $uptime =~ s/month(s|)/$Lang::tr{'month'}/; + $uptime =~ s/day(s|)/$Lang::tr{'day'}/; + $uptime =~ s/user(s|)/$Lang::tr{'user'}/; + $uptime =~ s/load average/$Lang::tr{'uptime load average'}/; + + print <<END + </div> + </div> + + <div id="secondaryContent_2columns"> + + <div id="columnC_2columns"> +END +; + &showsubsection($menu); + &showsubsubsection($menu); + + print <<END + </div> + </div> + <br class="clear" /> + <div id="footer" class="fixed"> + <b>Status:</b> $status <b>Uptime:</b> $uptime +END +; +if ($settings{'SPEED'} ne 'off') { +print <<END + <br /> + <b>$Lang::tr{'bandwidth usage'}:</b> + $Lang::tr{'incoming'}: <span id="rx_kbs"></span> $Lang::tr{'outgoing'}: <span id="tx_kbs"></span> + +END +; +} +print <<END + </div> + </div> +</div> +</body> +</html> +END +; +} + +sub openbigbox +{ +} + +sub closebigbox +{ +} + +sub openbox +{ + $width = $_[0]; + $align = $_[1]; + $caption = $_[2]; + + print <<END +<!-- openbox --> + <div class="post" align="$align"> +END +; + + if ($caption) { print "<h3>$caption</h3>\n"; } else { print " "; } +} + +sub closebox +{ + print <<END + </div> + <br class="clear" /> + <!-- closebox --> +END +; +} + +1; diff --git a/html/html/themes/ipfire-legacy/include/style.css b/html/html/themes/ipfire-legacy/include/style.css new file mode 100644 index 0000000..d2c458e --- /dev/null +++ b/html/html/themes/ipfire-legacy/include/style.css @@ -0,0 +1,441 @@ +/* + + Nonzero1.0 by nodethirtythree design + http://www.nodethirtythree.com + missing in a maze + +*/ + +/* This controls the width of the fluid width layouts */ + +div.fluid +{ +width: 90% !important; +} + +/* This controls the width of the fixed width layouts */ + +div.fixed +{ +width: 950px !important; +} + +/* Basic Stuff */ + +* +{ +margin: 0em; +padding: 0em; +} + +body +{ +background-color: #fff; +color: #585858; +font-size: 9pt; +font-family: "trebuchet ms", helvetica, sans-serif; +} + +h1,h2,h3,h4,h5,h6 +{ +font-weight: normal; +letter-spacing: -1px; +text-transform: lowercase; +text-align: left; +} + +h3,h4,h5,h6 +{ +color: #66000F; +} + +h1 span +{ +font-weight: bold; +} + +h3 span +{ +font-weight: bold; +} + +h4 span +{ +font-weight: bold; +} + +br.clear +{ +clear: both; +} + +img +{ +padding: 3px; +#border: solid 1px #e1e1e1; +} + +img.floatTL +{ +float: left; +margin-right: 1.5em; +margin-bottom: 1.5em; +margin-top: 0.5em; +} + +a +{ +text-decoration: underline; +color: #D90000; +} + +a:hover +{ +text-decoration: none; +} + +ul.links +{ +list-style: none; +} + +ul.links li +{ +line-height: 2em; +} + +ul.links li.first +{ +} + +p +{ +line-height: 1.8em; +} + +/* Header */ + +#header +{ +width:100%; +height:122px; +background: #440000 url('../images/n1.gif') repeat-x; +} + +#header_inner +{ +position: relative; +width: 950px; +height:122px; +margin: 0 auto; +} + +/* Logo */ + +#logo +{ +position: absolute; +bottom: 0.6em; +} + +#logo h1 +{ +display: inline; +color: #fff; +font-size: 2.6em; +} + +#logo h2 +{ +display: inline; +padding-left: 0.5em; +color: #E5CCD0; +font-size: 1.0em; +} + +/* Menu */ + +#menu +{ +position: absolute; +right: 0em; +bottom: 0em; +} + +#menu ul +{ +list-style: none; +} + +#menu li +{ +float: left; +} + +#menu li a +{ +margin-left: 0.5em; +display: block; +padding: 1.1em 1.4em 1.0em 1.4em; +background: #fff url('../images/n4.gif') repeat-x; +border: solid 1px #fff; +color: #616161; +font-weight: bold; +font-size: 1.0em; +text-transform: lowercase; +text-decoration: none; +} + +#menu li a.active +{ +background: #CA2F2F url('../images/n3.gif') repeat-x; +color: #fff; +border: solid 1px #A94B4B; +} + +/* Main */ + +#main +{ +background: #fff url('../images/n2.gif') 0px 1px repeat-x; +} + +#main_inner p +{ +text-align: justify; +margin-bottom: 2.0em; +} + +#main_inner ul +{ +margin-bottom: 2.0em; +} + +#main_inner +{ +position: relative; +width: 950px; +margin: 0 auto; +padding-top: 3.5em; +} + +#main_inner h3,h4 +{ +border-bottom: dotted 1px #E1E1E1; +position: relative; +} + +#main_inner h3 +{ +font-size: 2.1em; +padding-bottom: 0.1em; +margin-bottom: 0.8em; +} + +#main_inner h4 +{ +font-size: 1.2em; +padding-bottom: 0.175em; +margin-bottom: 1.4em; +margin-top: 0.95em; +} + +#main_inner .post +{ +position: relative; +} + +#main_inner .post h3 +{ +position: relative; +font-size: 1.7em; +padding-bottom: 0.4em; +} + +#main_inner .post ul.post_info +{ +list-style: none; +position: absolute; +top: 3em; +font-size: 0.8em; +} + +#main_inner .post ul.post_info li +{ +background-position: 0em 0.2em; +background-repeat: no-repeat; +display: inline; +padding-left: 18px; +} + +#main_inner .post ul.post_info li.date +{ +background-image: url('../images/n5.gif'); +} + +#main_inner .post ul.post_info li.comments +{ +background-image: url('../images/n6.gif'); +margin-left: 1.1em; +} + +/* Footer */ + +#footer +{ +width: 950px; +margin: 0 auto; +text-align: center; +clear: both; +border-top: dotted 1px #E1E1E1; +margin-top: 1.0em; +margin-bottom: 1.0em; +padding-top: 1.0em; +text-transform: lowercase; +} + +/* Search */ + +input +{ +margin: 0.2em; +} + +input.button +{ +background: #CA2F2F url('../images/n3.gif') repeat-x; +color: #fff; +border: solid 1px #A94B4B; +font-weight: bold; +text-transform: lowercase; +font-size: 0.8em; +height: 2.0em; +} + +input.text +{ +border: solid 1px #F1F1F1; +font-size: 1.0em; +padding: 0.25em 0.25em 0.25em 0.25em; +} + +#search +{ +position: relative; +width: 100%; +margin-bottom: 2.0em; +} + +#search input.text +{ +position: absolute; +top: 0em; +left: 0em; +width: 9.5em; +} + +#search input.button +{ +position: absolute; +top: 0em; +right: 0em; +min-width: 2.0em; +max-width: 2.5em; +} + +/* LAYOUT - 3 COLUMNS */ + + /* Primary content */ + + #primaryContent_3columns + { + position: relative; + margin-right: 34em; + } + + #columnA_3columns + { + position: relative; + float: left; + width: 100%; + margin-right: -34em; + padding-right: 2em; + } + + /* Secondary Content */ + + #secondaryContent_3columns + { + float: right; + } + + #columnB_3columns + { + width: 13.0em; + float: left; + padding: 0em 2em 0.5em 2em; + border-left: dotted 1px #E1E1E1; + } + + #columnC_3columns + { + width: 13.0em; + float: left; + padding: 0em 0em 0.5em 2em; + border-left: dotted 1px #E1E1E1; + } + +/* LAYOUT - 2 COLUMNS */ + + /* Primary content */ + + #primaryContent_2columns + { + position: relative; + margin-right: 17em; + } + + #columnA_2columns + { + position: relative; + float: left; + width: 100%; + margin-right: -17em; + padding-right: 2em; + } + + /* Secondary Content */ + + #secondaryContent_2columns + { + float: right; + } + + #columnC_2columns + { + width: 13.0em; + float: left; + padding: 0em 0em 0.5em 2em; + border-left: dotted 1px #E1E1E1; + } + +/* LAYOUT - COLUMNLESS */ + + /* Primary content */ + + #primaryContent_columnless + { + position: relative; + } + + #columnA_columnless + { + position: relative; + width: 100%; + } + +/* FOOTER COLORIZE BANDWIDTH */ + +#rx_kbs { color: green; } + +#tx_kbs { color: red; } diff --git a/html/html/themes/ipfire/images/n1.gif b/html/html/themes/ipfire/images/n1.gif deleted file mode 100644 index 6eb5161..0000000 Binary files a/html/html/themes/ipfire/images/n1.gif and /dev/null differ diff --git a/html/html/themes/ipfire/images/n4.gif b/html/html/themes/ipfire/images/n4.gif deleted file mode 100644 index 8698525..0000000 Binary files a/html/html/themes/ipfire/images/n4.gif and /dev/null differ diff --git a/html/html/themes/ipfire/images/spacer.gif b/html/html/themes/ipfire/images/spacer.gif deleted file mode 100644 index 5bfd67a..0000000 Binary files a/html/html/themes/ipfire/images/spacer.gif and /dev/null differ diff --git a/html/html/themes/ipfire/images/tux2.png b/html/html/themes/ipfire/images/tux2.png new file mode 100644 index 0000000..cd84ad5 Binary files /dev/null and b/html/html/themes/ipfire/images/tux2.png differ diff --git a/html/html/themes/ipfire/include/css/style-rounded.css b/html/html/themes/ipfire/include/css/style-rounded.css new file mode 100644 index 0000000..cfc7df5 --- /dev/null +++ b/html/html/themes/ipfire/include/css/style-rounded.css @@ -0,0 +1,130 @@ + +.bigbox { + margin-top: 1em; + border-radius: 8px 8px 8px 8px; + -webkit-border-radius: 8px 8px 8px 8px; +} + +#main_inner .post { + border-radius: 8px 8px 8px 8px; + -webkit-border-radius: 8px 8px 8px 8px; +} + +#cssmenu a { + border-radius: 8px 8px 8px 8px; + -webkit-border-radius: 8px 8px 8px 8px; +} + +#cssmenu .has-sub ul li a { + border-radius: 7px 7px 7px 7px; +} + +#cssmenu .has-sub ul li:hover a { + box-shadow: inset 0 5px 1px rgba(0, 0, 0, 0.15); + -webkit-box-shadow: inset 0 5px 1px rgba(0, 0, 0, 0.15); +} + +/* Table */ +/* when using class='bordered' after tabletag */ + +table { + *border-collapse: collapse; /* IE7 and lower */ + border-spacing: 0; +} + +.bordered th{ + border-top: 1px solid grey; + border-bottom: 1px solid grey; + background: #cccccc; +} + +.bordered th:first-child{ + -moz-border-radius: 6px 0 0 0; + -webkit-border-radius: 6px 0 0 0; + border-radius: 6px 0 0 0; + border-left: 1px solid grey; + border-top: 1px solid grey; + border-bottom: 1px solid grey; +} + +.bordered th:last-child { + -moz-border-radius: 0 6px 0 0; + -webkit-border-radius: 0 6px 0 0; + border-radius: 0 6px 0 0; + border-right: 1px solid grey; + border-top: 1px solid grey; + border-bottom: 1px solid grey; +} + +.bordered th:only-child{ + -moz-border-radius: 6px 6px 0 0; + -webkit-border-radius: 6px 6px 0 0; + border-radius: 6px 6px 0 0; + border: 1px solid grey; +} + +.bordered tr:first-child td:first-child{ + -moz-border-radius: 6px 0 0 0; + -webkit-border-radius: 6px 0 0 0; + border-radius: 6px 0 0 0; + border-left: 1px solid grey; + border-top: 1px solid grey; +} + +.bordered tr:first-child td:last-child{ + -moz-border-radius: 0 6px 0 0; + -webkit-border-radius: 0 6px 0 0; + border-radius: 0 6px 0 0; + border-top: 1px solid grey; +} + +.bordered tr:first-child td:only-child{ + -moz-border-radius: 6px 6px 0 0; + -webkit-border-radius: 6px 6px 0 0; + border-radius: 6px 6px 0 0; + border-left: 1px solid grey; + border-right: 1px solid grey; + border-top: 1px solid grey; +} + +.bordered tr:first-child td{ + border-top: 1px solid grey; +} + +.bordered tr:last-child{ + border-left: 1px solid grey; + border-right: 1px solid grey; +} + +.bordered tr:last-child td:first-child { + -moz-border-radius: 0 0 0 6px; + -webkit-border-radius: 0 0 0 6px; + border-radius: 0 0 0 6px; + border-bottom: 1px solid grey; +} + +.bordered tr:last-child td:last-child { + -moz-border-radius: 0 0 6px 0; + -webkit-border-radius: 0 0 6px 0; + border-radius: 0 0 6px 0; + border-bottom: 1px solid grey; +} + +.bordered tr:last-child td:only-child { + -moz-border-radius: 0 0 6px 6px; + -webkit-border-radius: 0 0 6px 6px; + border-radius: 0 0 6px 6px; + border-bottom: 1px solid grey; +} + +.bordered tr:last-child td { + border-bottom: 1px solid grey; +} + +.bordered td:first-child { + border-left: 1px solid grey; +} + +.bordered td:last-child { + border-right: 1px solid grey; +} diff --git a/html/html/themes/ipfire/include/css/style.css b/html/html/themes/ipfire/include/css/style.css new file mode 100644 index 0000000..02b3fed --- /dev/null +++ b/html/html/themes/ipfire/include/css/style.css @@ -0,0 +1,261 @@ + +/* This controls the width of the fixed width layouts */ + +.fixed { + width: 910px !important; +} + +/* Basic Stuff */ + +* { + margin: 0; + padding: 0; +} + +html { + height: 100%; +} + +body { + /* SVG as background image (IE9/Chrome/Safari/Opera) */ + background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgo8bGluZWFyR3JhZGllbnQgaWQ9Imc2ODQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMTAwJSIgeTE9IjEwMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMDAwMDAwIiBvZmZzZXQ9IjAiLz48c3RvcCBzdG9wLWNvbG9yPSIjODgwNDAwIiBvZmZzZXQ9IjU3JSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2c2ODQpIiAvPgo8L3N2Zz4=); + + background-image: linear-gradient( + bottom, + #000000 0%, + #880400 57% + ); + background-image: -o-linear-gradient( + bottom, + #000000 0%, + #880400 57% + ); + background-image: -moz-linear-gradient( + bottom, + #000000 0%, + #880400 57% + ); + background-image: -webkit-linear-gradient( + bottom, + #000000 0%, + #880400 57 + ); + background-image: -ms-linear-gradient( + bottom, + #000000 0%, + #880400 57% + ); + background-image: -webkit-gradient( + linear, + left bottom, + left top, + color-stop(0, #000000), + color-stop(0.57, #880400) + ); + background-attachment: fixed; + + font-size: 9pt; + font-family: "trebuchet ms", helvetica, sans-serif; +} + +h1, h2, h3, h4, h5, h6 { + font-size: 20px; + font-weight: normal; + letter-spacing: -1px; + text-align: left; +} + +h2, h3, h4, h5, h6 { + color: #66000F; +} + +br.clear { + clear: both; +} + +img { + padding: 3px; +} + +a { + text-decoration: underline; + color: #d90000; +} + +a:hover { + text-decoration: none; +} + +p { + line-height: 1.8em; +} + +hr { + margin: 0.3em 0 0.3em 0; +} + +iframe { + border: 0; +} + +.pull-right { + float: right !important; +} + +/* Header */ + +#header { + height: 70px; + margin: 0 auto; +} + +/* Logo */ + +#logo { + height: 65px; + margin-top: 1em; + background: url('../../images/tux2.png') no-repeat; +} + +#logo h1 { + color: #fff; + font-size: 3.6em; + font-weight: bold; + padding-left: 1.7em; +} + +/* Main */ + +.bigbox { + margin: 0 auto; + margin-top: 0.5em; + padding: 1.5em 2em 0 2em; + background: #fff url('../../images/n2.gif') 0px 0px repeat-x; + border: 1px solid black; + + border-radius: 3px 3px 3px 3px; + -webkit-border-radius: 3px 3px 3px 3px; +} + +#main_inner { + padding-bottom: 1.5em; +} + +#main_inner p { + text-align: justify; + margin-bottom: 2em; +} + +#main_inner ul { + margin-bottom: 2em; +} + +#main_inner h1 { + font-size: 1.8em; + margin-bottom: 1em; +} + +#main_inner .post { + border: 1px solid silver; + padding: 1em 2em 1em 2em; + margin-bottom: 1em; + clear: both; +} + +#main_inner .post h2 { + border-bottom: dotted 1px #e1e1e1; + font-size: 1.7em; + margin-bottom: 1em; +} + +#footer { + height: 2.5em; + margin-bottom: 1em; +} + +#footer a { + color: inherit; + text-decoration: none; +} + +#footer a:hover { + text-decoration: underline; +} + +input { + margin: 0.2em; +} + +input.button { + background: #ca2f2f url('../../images/n3.gif') repeat-x; + color: #fff; + border: solid 1px #a94b4b; + font-weight: bold; + font-size: 0.8em; + height: 2.0em; +} + +input.text { + border: solid 1px #f1f1f1; + padding: 0.25em; +} + +#traffic { + float: right; + min-width: 20em; + line-height: 32px; +} + +/* Menu */ +#cssmenu { + margin: 0 auto; + margin-top: 0; + padding-top: 0; + font-weight: 600; + height: 32px; + border: 1px solid black; +} + +#cssmenu a { + color: #111111; + display: inline-block; + line-height: 32px; + padding: 0 1em; + text-decoration: none; +} + +#cssmenu ul { + list-style: none; +} + +#cssmenu > ul > li { + display: inline-block; +} + +#cssmenu > ul > li.active a, #cssmenu > ul > li:hover > a { + color: white; + background: #aaaaaa; +} + +#cssmenu .has-sub:hover > ul { + display: block; +} + +#cssmenu .has-sub ul { + display: none; + position: absolute; +} + +#cssmenu .has-sub ul li a { + min-width: 12em; + background: #ffffff; + color: grey; + display: block; + line-height: 40%; + padding: 12px 5px; + border: 1px solid black; +} + +#cssmenu .has-sub ul li:hover a { + background: #dddddd; +} diff --git a/html/html/themes/ipfire/include/functions.pl b/html/html/themes/ipfire/include/functions.pl index 2707593..0ead967 100644 --- a/html/html/themes/ipfire/include/functions.pl +++ b/html/html/themes/ipfire/include/functions.pl @@ -18,397 +18,232 @@ # along with this program. If not, see http://www.gnu.org/licenses/. # # # ############################################################################### +# # +# Theme file for IPfire (based on ipfire theme) # +# Author kay-michael köhler kmk michael@koehler.tk # +# # +# Version 1.0 March, 6th 2013 # +############################################################################### +# # +# Modyfied theme by a.marx@ipfire.org January 2014 # +# # +# Cleanup code, deleted unused code and rewrote the rest to get a new working # +# IPFire default theme. # +###############################################################################
-sub showmenu() { - print <<EOF - <div id="menu"> - <ul> -EOF -; - foreach my $k1 ( sort keys %$menu ) { - if (! $menu->{$k1}{'enabled'}) { - next; - } - my $link = getlink($menu->{$k1}); - if ($link eq '') { - next; - } - if (! is_menu_visible($link)) { - next; - } - if ($menu->{$k1}->{'selected'}) { - print "<li><a href="$link" class="active">$menu->{$k1}{'caption'}</a></li>"; - } else { - print "<li><a href="$link">$menu->{$k1}{'caption'}</a></li>"; - } - } - print <<EOF - </ul> - </div> -EOF -; -} +require "${General::swroot}/lang.pl";
-sub getselected($) { - my $root = shift; - if (!$root) { - return 0; - } - - foreach my $item (%$root) { - if ($root->{$item}{'selected'}) { - return $root->{$item}; - } - } +############################################################################### +# +# print menu html elements for submenu entries +# @param submenu entries +sub showsubmenu() { + my $submenus = shift; + + print "<ul>"; + foreach my $item (sort keys %$submenus) { + $link = getlink($submenus->{$item}); + next if (!is_menu_visible($link) or $link eq ''); + + my $subsubmenus = $submenus->{$item}->{'subMenu'}; + + if ($subsubmenus) { + print '<li class="has-sub ">'; + } else { + print '<li>'; + } + print '<a href="'.$link.'">'.$submenus->{$item}->{'caption'}.'</a>'; + + &showsubmenu($subsubmenus) if ($subsubmenus); + print '</li>'; + } + print "</ul>" }
-sub showsubsection($$) { - my $root = shift; - - if (! $root) { - return; - } - my $selected = getselected($root); - if (! $selected) { - return; - } - my $submenus = $selected->{'subMenu'}; - if (! $submenus) { - return; - } - - print <<EOF - <h4><span>Side</span>menu</h4> - <ul class="links"> -EOF -; - foreach my $item (sort keys %$submenus) { - my $hash = $submenus->{$item}; - if (! $hash->{'enabled'}) { - next; - } - my $link = getlink($hash); - if ($link eq '') { - next; - } - if (! is_menu_visible($link)) { - next; - } - if ($hash->{'selected'}) { - print '<li class="selected">'; - } else { - print '<li>'; - } - - print "<a href="$link">$hash->{'caption'}</a></li>"; - } - - print <<EOF - </ul> +############################################################################### +# +# print menu html elements +sub showmenu() { + print '<div id="cssmenu" class="bigbox fixed">'; + + if ($settings{'SPEED'} ne 'off') { + print <<EOF; + <div id='traffic'> + <strong>Traffic:</strong> + In <span id='rx_kbs'>--.-- Bit/s</span> + Out <span id='tx_kbs'>--.-- Bit/s</span> + </div> EOF -; -} + }
+ print "<ul>"; + foreach my $k1 ( sort keys %$menu ) { + $link = getlink($menu->{$k1}); + next if (!is_menu_visible($link) or $link eq ''); + print '<li class="has-sub "><a><span>'.$menu->{$k1}->{'caption'}.'</span></a>'; + my $submenus = $menu->{$k1}->{'subMenu'}; + &showsubmenu($submenus) if ($submenus); + print "</li>"; + }
-sub showsubsubsection($) { - my $root = shift; - if (!$root) { - return; - } - my $selected = getselected($root); - if (! $selected) { - return - } - if (! $selected->{'subMenu'}) { - return - } - - showsubsection($selected->{'subMenu'}, 'menu-subtop'); + print "</ul></div>"; }
+############################################################################### +# +# print page opening html layout +# @param page title +# @param boh +# @param extra html code for html head section +# @param suppress menu option, can be numeric 1 or nothing. +# menu will be suppressed if param is 1 sub openpage { - my $title = shift; - my $boh = shift; - my $extrahead = shift; - - @URI=split ('?', $ENV{'REQUEST_URI'} ); - &General::readhash("${swroot}/main/settings", %settings); - &genmenu(); - - my $h2 = gettitle($menu); - - $title = "IPFire - $title"; - if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { - $title = "$settings{'HOSTNAME'}.$settings{'DOMAINNAME'} - $title"; - } - - print <<END -<?xml version='1.0' encoding='UTF-8'?> -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> -<html xmlns='http://www.w3.org/1999/xhtml'> -<head> - <title>$title</title> - $extrahead -END -; - if ($settings{'FX'} ne 'off') { - print <<END - <meta http-equiv="Page-Enter" content="blendTrans(Duration=0.5,Transition=12)" /> - <meta http-equiv="Page-Exit" content="blendTrans(Duration=0.5,Transition=12)" /> -END -; - } - print <<END - <link rel="shortcut icon" href="/favicon.ico" /> - <link rel="stylesheet" type="text/css" href="/themes/ipfire/include/style.css" /> - <script language="javascript" type="text/javascript"> - - function swapVisibility(id) { - el = document.getElementById(id); - if(el.style.display != 'block') { - el.style.display = 'block' - } - else { - el.style.display = 'none' - } - } - </script> + my $title = shift; + my $boh = shift; + my $extrahead = shift; + my $suppressMenu = shift; + my @tmp = split(/./, basename($0)); + my $scriptName = @tmp[0]; + + @URI=split ('?', $ENV{'REQUEST_URI'} ); + &General::readhash("${swroot}/main/settings", %settings); + &genmenu(); + + my $headline = "IPFire"; + if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { + $headline = "$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}"; + } + + my @stylesheets = ("style.css"); + if ($THEME_NAME eq "ipfire-rounded") { + push(@stylesheets, "style-rounded.css"); + } + +print <<END; +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html> + <head> + <title>$headline - $title</title> + $extrahead + <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> + <link rel="shortcut icon" href="/favicon.ico" /> + <script type="text/javascript" src="/include/jquery.js"></script> END -; + + foreach my $stylesheet (@stylesheets) { + print "<link href="/themes/ipfire/include/css/$stylesheet" rel="stylesheet" type="text/css" />\n"; + } + if ($settings{'SPEED'} ne 'off') { print <<END - <script type="text/javascript" src="/include/jquery.js"></script> - <script type="text/javascript"> - var t_current; - var t_last; - var rxb_current; - var rxb_last; - var txb_current; - var txb_last; - function refreshInetInfo() { - $.ajax({ - url: '/cgi-bin/speed.cgi', - success: function(xml){ - t_current = new Date(); - var t_diff = t_current - t_last; - t_last = t_current; - - rxb_current = $("rxb",xml).text(); - var rxb_diff = rxb_current - rxb_last; - rxb_last = rxb_current; - - var rx_kbs = rxb_diff/t_diff; - rx_kbs = Math.round(rx_kbs*10)/10; - - txb_current = $("txb",xml).text(); - var txb_diff = txb_current - txb_last; - txb_last = txb_current; - - var tx_kbs = txb_diff/t_diff; - tx_kbs = Math.round(tx_kbs*10)/10; - - $("#rx_kbs").text(rx_kbs + ' kb/s'); - $("#tx_kbs").text(tx_kbs + ' kb/s'); - } - }); - window.setTimeout("refreshInetInfo()", 3000); - } - $(document).ready(function(){ - refreshInetInfo(); - }); - </script> - </head> - <body> + <script type="text/javascript" src="/themes/ipfire/include/js/refreshInetInfo.js"></script> END ; } -else { -print "</head><body>";} -print <<END -<!-- IPFIRE HEADER -->
-<div id="header"> - - <div id="header_inner" class="fixed"> - - <div id="logo"> +print <<END + </head> + <body> + <div id="header" class="fixed"> + <div id="logo"> END ; - if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { - print "<h1><span>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</span></h1><br />"; - } else { - print "<h1><span>IPFire</span></h1><br />"; - } - print <<END - <h2>$h2</h2> - </div> + if ($settings{'WINDOWWITHHOSTNAME'} ne 'off') { + print "<h1>$settings{'HOSTNAME'}.$settings{'DOMAINNAME'}</h1>"; + } else { + print "<h1>IPFire</h1>"; + }
+print <<END + </div> + </div> END ; - &showmenu();
-print <<END - </div> -</div> +&showmenu() if ($suppressMenu != 1);
-<div id="main"> - <div id="main_inner" class="fixed"> - <div id="primaryContent_2columns"> - <div id="columnA_2columns"> +print <<END + <div class="bigbox fixed"> + <div id="main_inner" class="fixed"> + <h1>$title</h1> END ; }
+############################################################################### +# +# print page opening html layout without menu +# @param page title +# @param boh +# @param extra html code for html head section sub openpagewithoutmenu { - my $title = shift; - my $boh = shift; - my $extrahead = shift; - - @URI=split ('?', $ENV{'REQUEST_URI'} ); - &General::readhash("${swroot}/main/settings", %settings); - &genmenu(); - - my $h2 = gettitle($menu); - - $title = "IPFire - $title"; - if ($settings{'WINDOWWITHHOSTNAME'} eq 'on') { - $title = "$settings{'HOSTNAME'}.$settings{'DOMAINNAME'} - $title"; - } - - print <<END -<?xml version='1.0' encoding='UTF-8'?> -<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> -<html xmlns='http://www.w3.org/1999/xhtml'> -<head> - <title>$title</title> - $extrahead -END -; - if ($settings{'FX'} ne 'off') { - print <<END - <meta http-equiv="Page-Enter" content="blendTrans(Duration=0.5,Transition=12)" /> - <meta http-equiv="Page-Exit" content="blendTrans(Duration=0.5,Transition=12)" /> -END -; - } - print <<END - <link rel="shortcut icon" href="/favicon.ico" /> - <link rel="stylesheet" type="text/css" href="/include/style.css" /> - <script language="javascript" type="text/javascript"> - - function swapVisibility(id) { - el = document.getElementById(id); - if(el.style.display != 'block') { - el.style.display = 'block' - } - else { - el.style.display = 'none' - } - } - </script> - - </head> - <body> -<!-- IPFIRE HEADER --> - -<div id="header"> - - <div id="header_inner" class="fixed"> - - <div id="logo"> - <h1><span>IPFire</span></h1> - <h2>$h2</h2> - </div> - </div> -</div> - -<div id="main"> - <div id="main_inner" class="fixed"> - <div id="primaryContent_2columns"> - <div id="columnA_2columns"> -END -; + openpage(shift,shift,shift,1); + return; }
-sub closepage () { - my $status = &connectionstatus(); - my $uptime = `/usr/bin/uptime|cut -d " " -f 4-`; - $uptime =~ s/year(s|)/$Lang::tr{'year'}/; - $uptime =~ s/month(s|)/$Lang::tr{'month'}/; - $uptime =~ s/day(s|)/$Lang::tr{'day'}/; - $uptime =~ s/user(s|)/$Lang::tr{'user'}/; - $uptime =~ s/load average/$Lang::tr{'uptime load average'}/; - - print <<END - </div> - </div> - - <div id="secondaryContent_2columns"> - - <div id="columnC_2columns"> -END -; - &showsubsection($menu); - &showsubsubsection($menu); - - print <<END - </div> - </div> - <br class="clear" /> - <div id="footer" class="fixed"> - <b>Status:</b> $status <b>Uptime:</b> $uptime -END -; -if ($settings{'SPEED'} ne 'off') { -print <<END - <br /> - <b>$Lang::tr{'bandwidth usage'}:</b> - $Lang::tr{'incoming'}: <span id="rx_kbs"></span> $Lang::tr{'outgoing'}: <span id="tx_kbs"></span> +############################################################################### +# +# print page closing html layout
-END -; -} -print <<END - </div> - </div> -</div> +sub closepage () { + open(FILE, "</etc/system-release"); + my $system_release = <FILE>; + $system_release =~ s/core/Core Update/; + close(FILE); + +print <<END; + </div> + </div> + + <div id="footer" class='bigbox fixed'> + <span class="pull-right"> + <a href="http://www.ipfire.org/" target="_blank"><strong>IPFire.org</strong></a> • + <a href="http://www.ipfire.org/donate" target="_blank">$Lang::tr{'support donation'}</a> + </span> + + <strong>$system_release</strong> + </div> </body> </html> END ; }
-sub openbigbox -{ +############################################################################### +# +# print big box opening html layout +sub openbigbox { }
-sub closebigbox -{ +############################################################################### +# +# print big box closing html layout +sub closebigbox { }
-sub openbox -{ - $width = $_[0]; - $align = $_[1]; - $caption = $_[2]; - - print <<END -<!-- openbox --> - <div class="post" align="$align"> -END -; - - if ($caption) { print "<h3>$caption</h3>\n"; } else { print " "; } +############################################################################### +# +# print box opening html layout +# @param page width +# @param page align +# @param page caption +sub openbox { + $width = $_[0]; + $align = $_[1]; + $caption = $_[2]; + + print "<div class='post' align='$align'>\n"; + + if ($caption) { + print "<h2>$caption</h2>\n"; + } }
-sub closebox -{ - print <<END - </div> - <br class="clear" /> - <!-- closebox --> -END -; +############################################################################### +# +# print box closing html layout +sub closebox { + print "</div>"; }
1; diff --git a/html/html/themes/ipfire/include/js/refreshInetInfo.js b/html/html/themes/ipfire/include/js/refreshInetInfo.js new file mode 100644 index 0000000..259f86e --- /dev/null +++ b/html/html/themes/ipfire/include/js/refreshInetInfo.js @@ -0,0 +1,69 @@ +/* refreshInetInfo.js +* functions for retrieving status information via jQuery +* Modified: March 6th, 2013 by michael@koehler.tk +* Authors: IPFire Team (info@ipfire.org) + Kay-Michael Köhler (michael@koehler.tk) +* Visit http://www.ipfire.org/ +*/ + +var t_current; +var t_last = 0; +var rxb_current; +var rxb_last = 0; +var txb_current; +var txb_last = 0; + +$(document).ready(function(){ + refreshInetInfo(); +}); + +function refreshInetInfo() { + $.ajax({ + url: '/cgi-bin/speed.cgi', + success: function(xml) { + t_current = new Date(); + var t_diff = t_current - t_last; + + rxb_current = $("rxb", xml).text(); + var rxb_diff = rxb_current - rxb_last; + rxb_last = rxb_current; + + var rx_bits = rxb_diff * 8192 / t_diff; + var rx_fmt = format_bytes(rx_bits); + + txb_current = $("txb", xml).text(); + var txb_diff = txb_current - txb_last; + txb_last = txb_current; + + var tx_bits = txb_diff * 8192 / t_diff; + var tx_fmt = format_bytes(tx_bits); + + if (t_last != 0) { + $("#rx_kbs").text(rx_fmt); + $("#tx_kbs").text(tx_fmt); + } + + t_last = t_current; + } + }); + + window.setTimeout("refreshInetInfo()", 2000); +} + +function format_bytes(bytes) { + var units = ["Bit/s", "kBit/s", "MBit/s", "GBit/s", "TBit/s"]; + + var unit = units[0]; + for (var i = 1; i < units.length; i++) { + if (bytes < 1024) + break; + + unit = units[i]; + bytes /= 1024; + } + + // Round the output. + bytes = bytes.toFixed(2); + + return bytes + " " + unit; +} diff --git a/html/html/themes/ipfire/include/style.css b/html/html/themes/ipfire/include/style.css deleted file mode 100644 index 2461a14..0000000 --- a/html/html/themes/ipfire/include/style.css +++ /dev/null @@ -1,441 +0,0 @@ -/* - - Nonzero1.0 by nodethirtythree design - http://www.nodethirtythree.com - missing in a maze - -*/ - -/* This controls the width of the fluid width layouts */ - -div.fluid -{ -width: 90% !important; -} - -/* This controls the width of the fixed width layouts */ - -div.fixed -{ -width: 950px !important; -} - -/* Basic Stuff */ - -* -{ -margin: 0em; -padding: 0em; -} - -body -{ -background-color: #fff; -color: #585858; -font-size: 9pt; -font-family: "trebuchet ms", helvetica, sans-serif; -} - -h1,h2,h3,h4,h5,h6 -{ -font-weight: normal; -letter-spacing: -1px; -text-transform: lowercase; -text-align: left; -} - -h3,h4,h5,h6 -{ -color: #66000F; -} - -h1 span -{ -font-weight: bold; -} - -h3 span -{ -font-weight: bold; -} - -h4 span -{ -font-weight: bold; -} - -br.clear -{ -clear: both; -} - -img -{ -padding: 3px; -#border: solid 1px #e1e1e1; -} - -img.floatTL -{ -float: left; -margin-right: 1.5em; -margin-bottom: 1.5em; -margin-top: 0.5em; -} - -a -{ -text-decoration: underline; -color: #D90000; -} - -a:hover -{ -text-decoration: none; -} - -ul.links -{ -list-style: none; -} - -ul.links li -{ -line-height: 2em; -} - -ul.links li.first -{ -} - -p -{ -line-height: 1.8em; -} - -/* Header */ - -#header -{ -width:100%; -height:122px; -background: #440000 url('/themes/ipfire/images/n1.gif') repeat-x; -} - -#header_inner -{ -position: relative; -width: 950px; -height:122px; -margin: 0 auto; -} - -/* Logo */ - -#logo -{ -position: absolute; -bottom: 0.6em; -} - -#logo h1 -{ -display: inline; -color: #fff; -font-size: 2.6em; -} - -#logo h2 -{ -display: inline; -padding-left: 0.5em; -color: #E5CCD0; -font-size: 1.0em; -} - -/* Menu */ - -#menu -{ -position: absolute; -right: 0em; -bottom: 0em; -} - -#menu ul -{ -list-style: none; -} - -#menu li -{ -float: left; -} - -#menu li a -{ -margin-left: 0.5em; -display: block; -padding: 1.1em 1.4em 1.0em 1.4em; -background: #fff url('/themes/ipfire/images/n4.gif') repeat-x; -border: solid 1px #fff; -color: #616161; -font-weight: bold; -font-size: 1.0em; -text-transform: lowercase; -text-decoration: none; -} - -#menu li a.active -{ -background: #CA2F2F url('/themes/ipfire/images/n3.gif') repeat-x; -color: #fff; -border: solid 1px #A94B4B; -} - -/* Main */ - -#main -{ -background: #fff url('/themes/ipfire/images/n2.gif') 0px 1px repeat-x; -} - -#main_inner p -{ -text-align: justify; -margin-bottom: 2.0em; -} - -#main_inner ul -{ -margin-bottom: 2.0em; -} - -#main_inner -{ -position: relative; -width: 950px; -margin: 0 auto; -padding-top: 3.5em; -} - -#main_inner h3,h4 -{ -border-bottom: dotted 1px #E1E1E1; -position: relative; -} - -#main_inner h3 -{ -font-size: 2.1em; -padding-bottom: 0.1em; -margin-bottom: 0.8em; -} - -#main_inner h4 -{ -font-size: 1.2em; -padding-bottom: 0.175em; -margin-bottom: 1.4em; -margin-top: 0.95em; -} - -#main_inner .post -{ -position: relative; -} - -#main_inner .post h3 -{ -position: relative; -font-size: 1.7em; -padding-bottom: 0.4em; -} - -#main_inner .post ul.post_info -{ -list-style: none; -position: absolute; -top: 3em; -font-size: 0.8em; -} - -#main_inner .post ul.post_info li -{ -background-position: 0em 0.2em; -background-repeat: no-repeat; -display: inline; -padding-left: 18px; -} - -#main_inner .post ul.post_info li.date -{ -background-image: url('/themes/ipfire/images/n5.gif'); -} - -#main_inner .post ul.post_info li.comments -{ -background-image: url('/themes/ipfire/images/n6.gif'); -margin-left: 1.1em; -} - -/* Footer */ - -#footer -{ -width: 950px; -margin: 0 auto; -text-align: center; -clear: both; -border-top: dotted 1px #E1E1E1; -margin-top: 1.0em; -margin-bottom: 1.0em; -padding-top: 1.0em; -text-transform: lowercase; -} - -/* Search */ - -input -{ -margin: 0.2em; -} - -input.button -{ -background: #CA2F2F url('/themes/ipfire/images/n3.gif') repeat-x; -color: #fff; -border: solid 1px #A94B4B; -font-weight: bold; -text-transform: lowercase; -font-size: 0.8em; -height: 2.0em; -} - -input.text -{ -border: solid 1px #F1F1F1; -font-size: 1.0em; -padding: 0.25em 0.25em 0.25em 0.25em; -} - -#search -{ -position: relative; -width: 100%; -margin-bottom: 2.0em; -} - -#search input.text -{ -position: absolute; -top: 0em; -left: 0em; -width: 9.5em; -} - -#search input.button -{ -position: absolute; -top: 0em; -right: 0em; -min-width: 2.0em; -max-width: 2.5em; -} - -/* LAYOUT - 3 COLUMNS */ - - /* Primary content */ - - #primaryContent_3columns - { - position: relative; - margin-right: 34em; - } - - #columnA_3columns - { - position: relative; - float: left; - width: 100%; - margin-right: -34em; - padding-right: 2em; - } - - /* Secondary Content */ - - #secondaryContent_3columns - { - float: right; - } - - #columnB_3columns - { - width: 13.0em; - float: left; - padding: 0em 2em 0.5em 2em; - border-left: dotted 1px #E1E1E1; - } - - #columnC_3columns - { - width: 13.0em; - float: left; - padding: 0em 0em 0.5em 2em; - border-left: dotted 1px #E1E1E1; - } - -/* LAYOUT - 2 COLUMNS */ - - /* Primary content */ - - #primaryContent_2columns - { - position: relative; - margin-right: 17em; - } - - #columnA_2columns - { - position: relative; - float: left; - width: 100%; - margin-right: -17em; - padding-right: 2em; - } - - /* Secondary Content */ - - #secondaryContent_2columns - { - float: right; - } - - #columnC_2columns - { - width: 13.0em; - float: left; - padding: 0em 0em 0.5em 2em; - border-left: dotted 1px #E1E1E1; - } - -/* LAYOUT - COLUMNLESS */ - - /* Primary content */ - - #primaryContent_columnless - { - position: relative; - } - - #columnA_columnless - { - position: relative; - width: 100%; - } - -/* FOOTER COLORIZE BANDWIDTH */ - -#rx_kbs { color: green; } - -#tx_kbs { color: red; } diff --git a/html/html/themes/maniac/include/functions.pl b/html/html/themes/maniac/include/functions.pl index 0bb1d6e..47dbcb0 100644 --- a/html/html/themes/maniac/include/functions.pl +++ b/html/html/themes/maniac/include/functions.pl @@ -149,16 +149,6 @@ sub openpage { <head> <title>$title</title> $extrahead -END -; - if ($settings{'FX'} ne 'off') { - print <<END - <meta http-equiv="Page-Enter" content="blendTrans(Duration=0.5,Transition=12)" /> - <meta http-equiv="Page-Exit" content="blendTrans(Duration=0.5,Transition=12)" /> -END -; - } - print <<END <link rel="shortcut icon" href="/favicon.ico" /> <link rel="stylesheet" type="text/css" href="/themes/maniac/include/style.css" /> <script language="javascript" type="text/javascript"> diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index d89a4bd..01cd3f6 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -1946,6 +1946,7 @@ 'successfully refreshed updates list' => 'Update-Liste erfolgreich aktualisiert.', 'summaries kept' => 'Zusammenfassungen aufheben für', 'sunday' => 'Sonntag', +'support donation' => 'Unterstützen Sie das IPFire-Projekt mit Ihrer Spende', 'swap' => 'Swap', 'swap usage per' => 'Nutzung von Auslagerungsspeicher (Swap) pro', 'system' => 'System', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index 5754c7d..dc38129 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -1980,6 +1980,7 @@ 'successfully refreshed updates list' => 'Successfully refreshed updates list.', 'summaries kept' => 'Keep summaries for', 'sunday' => 'Sunday', +'support donation' => 'Support the IPFire project with your donation', 'swap' => 'Swap', 'swap usage per' => 'Swap usage per', 'system' => 'System', diff --git a/lfs/apache2 b/lfs/apache2 index f50332b..a3c7ada 100644 --- a/lfs/apache2 +++ b/lfs/apache2 @@ -98,6 +98,7 @@ ifeq "$(PASS)" "C" chmod -R 755 /srv/web/ipfire/cgi-bin chmod -R 644 /srv/web/ipfire/html chmod 755 /srv/web/ipfire/html /srv/web/ipfire/html/{index.cgi,redirect.cgi,dial.cgi,images,include,themes,themes/*,themes/*/*} + ln -svf ipfire /srv/web/ipfire/html/themes/ipfire-rounded
# Reset permissions of redirect templates directories find /srv/web/ipfire/html/redirect-templates -type d | xargs chmod -v 755
hooks/post-receive -- IPFire 2.x development tree