[Slim-Checkins] r10592 - in /trunk/server:
HTML/EN/setupperformance.html
HTML/Fishbone/skin.css Slim/Web/HTTP.pm Slim/Web/Pages.pm Slim/Web/Setup.pm
kdf at svn.slimdevices.com
kdf at svn.slimdevices.com
Sun Nov 5 01:28:42 PST 2006
Author: kdf
Date: Sun Nov 5 01:28:37 2006
New Revision: 10592
URL: http://svn.slimdevices.com?rev=10592&view=rev
Log:
Bug: 3267 continued
DDescription: strip out performance settings page (with forking prefs commented out for now) and using it's own handler
Added:
trunk/server/HTML/EN/setupperformance.html
Modified:
trunk/server/HTML/Fishbone/skin.css
trunk/server/Slim/Web/HTTP.pm
trunk/server/Slim/Web/Pages.pm
trunk/server/Slim/Web/Setup.pm
Added: trunk/server/HTML/EN/setupperformance.html
URL: http://svn.slimdevices.com/trunk/server/HTML/EN/setupperformance.html?rev=10592&view=auto
==============================================================================
--- trunk/server/HTML/EN/setupperformance.html (added)
+++ trunk/server/HTML/EN/setupperformance.html Sun Nov 5 01:28:37 2006
@@ -1,0 +1,101 @@
+[% FILTER null %]
+
+ [% pwd_list = BLOCK %]
+
+ <a href="setup.html?page=BASIC_SERVER_SETTINGS">[% "SERVER_SETTINGS" | string %]</a>
+
+ / <a href="setupperformance.html">[% page | string %]</a>
+
+ [% END %]
+
+ [% pageHeaderInfo = BLOCK %]
+ [%- PROCESS setting_chooser.html setting_chooser_noHome = 1 %]
+ [% END %]
+
+[% END %]
+
+[% pagetitle = pagetitle; pageicon = 'settings'; noSpacer = 1; PROCESS pageheader.html %]
+
+<div class="statusarea">
+ [% IF warning %]
+ [% warning %]
+ [% END %]
+</div>
+
+<form method="post" action="setupperformance.html">
+
+ <input type=hidden value="[% page %]" name="page">
+
+ <div class="settingSection">
+
+ <div class="prefHead">[% "SETUP_DISABLESTATISTICS" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_DISABLESTATISTICS_DESC" | string %]</div>
+
+ <select class="stdedit" name="disableStatistics" id="disableStatistics">
+
+ <option [% IF NOT disableStatistics %]selected [% END %]value="0">[% 'SETUP_ENABLE_STATISTICS' | getstring %]</option>
+ <option [% IF disableStatistics %]selected [% END %]value="1">[% 'SETUP_DISABLE_STATISTICS' | getstring %]</option>
+
+ </select>
+
+ <div class="prefHead">[% "SETUP_ITEMSPERPASS" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_ITEMSPERPASS_DESC" | string %]</div>
+
+ <input type=text class="stdedit" name="itemsPerPass" id="itemsPerPass" value="[% itemsPerPass %]" size="15">
+
+ <div class="prefHead">[% "SETUP_PREFSWRITEDELAY" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_PREFSWRITEDELAY_DESC" | string %]</div>
+
+ <input type=text class="stdedit" name="prefsWriteDelay" id="prefsWriteDelay" value="[% prefsWriteDelay %]" size="15">
+
+ <!--<div class="prefHead">[% "SETUP_FORKEDWEB" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_FORKEDWEB_DESC" | string %]</div>
+
+ <select class="stdedit" name="forkedWeb" id="forkedWeb">
+
+ <option [% IF NOT forkedWeb %]selected [% END %]value="0">[% 'SETUP_FORKEDWEB_DISABLE' | getstring %]</option>
+ <option [% IF forkedWeb %]selected [% END %]value="1">[% 'SETUP_FORKEDWEB_ENABLE' | getstring %]</option>
+
+ </select>
+
+ <div class="prefHead">[% "SETUP_FORKEDSTREAMING" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_FORKEDSTREAMING_DESC" | string %]</div>
+
+ <select class="stdedit" name="forkedStreaming" id="forkedStreaming">
+
+ <option [% IF NOT forkedStreaming %]selected [% END %]value="0">[% 'SETUP_FORKEDSTREAMING_DISABLE' | getstring %]</option>
+ <option [% IF forkedStreaming %]selected [% END %]value="1">[% 'SETUP_FORKEDSTREAMING_ENABLE' | getstring %]</option>
+
+ </select>-->
+
+ <div class="prefHead">[% "SETUP_SERVERPRIORITY" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_SERVERPRIORITY_DESC" | string %]</div>
+
+ <select class="stdedit" name="serverPriority" id="serverPriority">
+
+ [% FOREACH option = [-20..20] %]
+ <option [% IF serverPriority == option %]selected [% END %]value="[% option %]">[% option %] [% options.$option | getstring %]</option>
+ [%- END -%]
+
+ </select>
+
+ <div class="prefHead">[% "SETUP_SCANNERPRIORITY" | string | upper %]</div>
+ <div class="prefDesc">[% "SETUP_SCANNERPRIORITY_DESC" | string %]</div>
+
+ <select class="stdedit" name="scannerPriority" id="scannerPriority">
+
+ [% FOREACH option = [-20..20] %]
+ <option [% IF scannerPriority == option %]selected [% END %]value="[% option %]">[% option %] [% options.$option | getstring %]</option>
+ [%- END -%]
+
+ </select>
+
+ </div>
+
+ <p><input name="submit" type="submit" class="stdclick" value="[% "SAVE_SETTINGS" | string %]"></p>
+</form>
+
+<p></p>
+
+[% PROCESS pagefooter.html %]
+
Modified: trunk/server/HTML/Fishbone/skin.css
URL: http://svn.slimdevices.com/trunk/server/HTML/Fishbone/skin.css?rev=10592&r1=10591&r2=10592&view=diff
==============================================================================
--- trunk/server/HTML/Fishbone/skin.css (original)
+++ trunk/server/HTML/Fishbone/skin.css Sun Nov 5 01:28:37 2006
@@ -250,6 +250,7 @@
.prefHead {
font-weight: bold;
+ padding-top: 10px;
}
.prefDesc,.prefHead {
Modified: trunk/server/Slim/Web/HTTP.pm
URL: http://svn.slimdevices.com/trunk/server/Slim/Web/HTTP.pm?rev=10592&r1=10591&r2=10592&view=diff
==============================================================================
--- trunk/server/Slim/Web/HTTP.pm (original)
+++ trunk/server/Slim/Web/HTTP.pm Sun Nov 5 01:28:37 2006
@@ -99,11 +99,13 @@
# \&Slim::Web::Pages::status => '\bp0=rescan\b'
# means inisist on CSRF protection for the status command *only*
# if the URL includes p0=rescan
- \&Slim::Web::Setup::setup_HTTP => '.',
- \&Slim::Web::Setup::handleDebugSettings => '.',
- \&Slim::Web::Setup::handleFileTypeSettings => '.',
- \&Slim::Web::EditPlaylist::editplaylist => '.',
- \&Slim::Web::Pages::Status::status => '(p0=debug|p0=pause|p0=stop|p0=play|p0=sleep|p0=playlist|p0=mixer|p0=display|p0=button|p0=rescan|(p0=(|player)pref\b.*p2=[^\?]|p2=[^\?].*p0=(|player)pref))',
+ \&Slim::Web::Setup::setup_HTTP => '.',
+ \&Slim::Web::Setup::handleDebugSettings => '.',
+ \&Slim::Web::Setup::handleFileTypeSettings => '.',
+ \&Slim::Web::Setup::handlePerformanceSettings => '.',
+ \&Slim::Web::EditPlaylist::editplaylist => '.',
+ \&Slim::Web::Pages::Status::status =>
+ '(p0=debug|p0=pause|p0=stop|p0=play|p0=sleep|p0=playlist|p0=mixer|p0=display|p0=button|p0=rescan|(p0=(|player)pref\b.*p2=[^\?]|p2=[^\?].*p0=(|player)pref))',
);
# flag for when we are in a child process
Modified: trunk/server/Slim/Web/Pages.pm
URL: http://svn.slimdevices.com/trunk/server/Slim/Web/Pages.pm?rev=10592&r1=10591&r2=10592&view=diff
==============================================================================
--- trunk/server/Slim/Web/Pages.pm (original)
+++ trunk/server/Slim/Web/Pages.pm Sun Nov 5 01:28:37 2006
@@ -44,6 +44,7 @@
Slim::Web::HTTP::addPageFunction(qr/^update_firmware\.(?:htm|xml)/,\&update_firmware);
Slim::Web::HTTP::addPageFunction(qr/^debugging\.(?:htm|xml)/, \&Slim::Web::Setup::handleDebugSettings);
Slim::Web::HTTP::addPageFunction(qr/^setupfiletypes\.(?:htm|xml)/, \&Slim::Web::Setup::handleFileTypeSettings);
+ Slim::Web::HTTP::addPageFunction(qr/^setupperformance\.(?:htm|xml)/, \&Slim::Web::Setup::handlePerformanceSettings);
# pull in the memory usage module if requested.
if (logger('server.memory')->is_info) {
Modified: trunk/server/Slim/Web/Setup.pm
URL: http://svn.slimdevices.com/trunk/server/Slim/Web/Setup.pm?rev=10592&r1=10591&r2=10592&view=diff
==============================================================================
--- trunk/server/Slim/Web/Setup.pm (original)
+++ trunk/server/Slim/Web/Setup.pm Sun Nov 5 01:28:37 2006
@@ -1958,92 +1958,8 @@
}
} #end of setup{'security'} hash
- ,'PERFORMANCE_SETTINGS' => {
- 'title' => string('PERFORMANCE_SETTINGS'),
- 'parent' => 'BASIC_SERVER_SETTINGS',
- 'GroupOrder' => ['Default'],
- 'Groups' => {
-
- 'Default' => {
- 'PrefOrder' => [qw(
- disableStatistics
- itemsPerPass
- prefsWriteDelay
- serverPriority
- scannerPriority
- )],
- },
- },
-
- 'Prefs' => {
- 'disableStatistics' => {
- 'validate' => \&Slim::Utils::Validate::trueFalse,
- 'options' => {
- '1' => 'SETUP_DISABLE_STATISTICS',
- '0' => 'SETUP_ENABLE_STATISTICS',
- },
- },
-
- 'itemsPerPass' => {
- 'validate' => \&Slim::Utils::Validate::isInt,
- },
-
- 'prefsWriteDelay' => {
- 'validate' => \&Slim::Utils::Validate::isInt,
- 'validateArgs' => [0,undef,1],
- },
-
- 'forkedWeb' => {
- 'validate' => \&Slim::Utils::Validate::trueFalse,
- 'options' => {
- '1' => 'SETUP_FORKEDWEB_ENABLE',
- '0' => 'SETUP_FORKEDWEB_DISABLE',
- },
- },
-
- 'forkedStreaming' => {
- 'validate' => \&Slim::Utils::Validate::trueFalse,
- 'options' => {
- '1' => 'SETUP_FORKEDSTREAMING_ENABLE',
- '0' => 'SETUP_FORKEDSTREAMING_DISABLE',
- },
- },
-
- 'serverPriority' => {
- 'validate' => \&Slim::Utils::Validate::inList,
- 'validateArgs' => ['', -20 .. 20],
- 'onChange' => sub { Slim::Utils::Misc::setPriority( Slim::Utils::Prefs::get("serverPriority") ); },
- 'optionSort' => sub {$a eq "" ? -1 : ($b eq "" ? 1 : $a <=> $b)},
- 'options' => {
- '' => 'SETUP_PRIORITY_DEFAULT',
- map {$_ => $_ . " " . Slim::Utils::Strings::getString({
- -16 => 'SETUP_PRIORITY_HIGH',
- -6 => 'SETUP_PRIORITY_ABOVE_NORMAL',
- 0 => 'SETUP_PRIORITY_NORMAL',
- 5 => 'SETUP_PRIORITY_BELOW_NORMAL',
- 15 => 'SETUP_PRIORITY_LOW'
- }->{$_} || "") } (-20 .. 20)
- }
- },
-
- 'scannerPriority' => {
- 'validate' => \&Slim::Utils::Validate::inList,
- 'validateArgs' => ['', -20 .. 20],
- 'optionSort' => sub {$a eq "" ? -1 : ($b eq "" ? 1 : $a <=> $b)},
- 'options' => {
- '' => 'SETUP_PRIORITY_CURRENT',
- map {$_ => $_ . " " . Slim::Utils::Strings::getString({
- -16 => 'SETUP_PRIORITY_HIGH',
- -6 => 'SETUP_PRIORITY_ABOVE_NORMAL',
- 0 => 'SETUP_PRIORITY_NORMAL',
- 5 => 'SETUP_PRIORITY_BELOW_NORMAL',
- 15 => 'SETUP_PRIORITY_LOW'
- }->{$_} || "") } (-20 .. 20)
- }
- },
-
- },
- } #end of setup{'performance'} hash
+ ,'PERFORMANCE_SETTINGS' => { } #end of setup{'performance'} hash
+
,'NETWORK_SETTINGS' => {
'title' => string('NETWORK_SETTINGS')
,'parent' => 'BASIC_SERVER_SETTINGS'
@@ -2286,6 +2202,48 @@
return Slim::Web::HTTP::filltemplatefile('debugging.html', $paramRef);
}
+sub handlePerformanceSettings {
+ my ($client, $paramRef, $pageSetup) = @_;
+
+ my @prefs = qw(
+ disableStatistics
+ itemsPerPass
+ prefsWriteDelay
+ serverPriority
+ scannerPriority
+ );
+
+ # If this is a settings update
+ if ($paramRef->{'submit'}) {
+
+ for my $pref (@prefs) {
+ Slim::Utils::Prefs::set($pref, $paramRef->{$pref});
+ }
+ }
+
+ $paramRef->{'options'} = {
+ '' => 'SETUP_PRIORITY_CURRENT',
+ map {$_ => {
+ -16 => 'SETUP_PRIORITY_HIGH',
+ -6 => 'SETUP_PRIORITY_ABOVE_NORMAL',
+ 0 => 'SETUP_PRIORITY_NORMAL',
+ 5 => 'SETUP_PRIORITY_BELOW_NORMAL',
+ 15 => 'SETUP_PRIORITY_LOW'
+ }->{$_} } (-20 .. 20)
+ };
+
+ $paramRef->{'page'} = 'PERFORMANCE_SETTINGS';
+
+ # Needed to generate the drop down settings chooser list.
+ $paramRef->{'additionalLinks'} = \%Slim::Web::Pages::additionalLinks;
+
+ for my $pref (@prefs) {
+ $paramRef->{$pref} = Slim::Utils::Prefs::get($pref);
+ }
+
+ return Slim::Web::HTTP::filltemplatefile('setupperformance.html', $paramRef);
+}
+
sub getSetupOptions {
my ($category, $pref) = @_;
@@ -2862,6 +2820,10 @@
} elsif ($page eq "FORMATS_SETTINGS") {
Slim::Web::Pages->addPageLinks('setup', { 'FORMATS_SETTINGS' => 'setupfiletypes.html' });
+
+ } elsif ($page eq "PERFORMANCE_SETTINGS") {
+
+ Slim::Web::Pages->addPageLinks('setup', { 'PERFORMANCE_SETTINGS' => 'setupperformance.html' });
} else {
More information about the checkins
mailing list