diff options
| author | Andreas Brachold <vdr07@deltab.de> | 2007-09-09 16:24:47 +0000 |
|---|---|---|
| committer | Andreas Brachold <vdr07@deltab.de> | 2007-09-09 16:24:47 +0000 |
| commit | c58704322fa8fcbee809d4c02643197d05293160 (patch) | |
| tree | 317742f5fd47ac8c70791bca517c55abb7f324da | |
| parent | 3c9849839582d238ef75a191728a14b84a8eb577 (diff) | |
| download | xxv-c58704322fa8fcbee809d4c02643197d05293160.tar.gz xxv-c58704322fa8fcbee809d4c02643197d05293160.tar.bz2 | |
* Update english translation
* Send proper mime header if file not modified (on state 304)
58 files changed, 1848 insertions, 1913 deletions
@@ -75,7 +75,7 @@ sub module { Author => 'Frank Herrmann <xpix at xpix.de>', Preferences => { Language => { - description => gettext('Language for interface'), + description => gettext('Interface language'), type => 'list', choices => [ [gettext('English'), 'C'], # C Stand for nativ gettext language, and means en_US @@ -84,19 +84,19 @@ sub module { default => 'C', }, DSN => { - description => gettext('Data source name for the connection to the data base'), + description => gettext('Data source for the connection to the database'), default => 'DBI:mysql:database=xxv;host=localhost;port=3306', type => 'string', required => gettext("This is required!"), }, USR => { - description => gettext('Username for data base access'), + description => gettext('Password for database access'), default => 'xxv', type => 'string', required => gettext("This is required!"), }, PWD => { - description => gettext('Password for data base access'), + description => gettext('Password for database access'), default => 'xxv', type => 'password', required => gettext("This is required!"), @@ -104,7 +104,7 @@ sub module { my $value = shift || return; # If no password given the take the old password as default if($value->[0] and $value->[0] ne $value->[1]) { - return undef, gettext("Field with 1st and 2nd password must be equal to confirm!"); + return undef, gettext("The fields with the 1st and the 2nd password must match!"); } else { return $value->[0]; } @@ -119,13 +119,13 @@ sub module { }, Commands => { doc => { - description => gettext('Generate the documentation in doc directory.'), + description => gettext('Generate the documentation into the doc directory.'), short => 'dc', callback => sub{ docu(@_) }, Level => 'admin', }, more => { - description => gettext('Shows text files.'), + description => gettext('Display program information.'), short => 'mo', callback => sub{ more(@_) }, Level => 'user', @@ -136,7 +136,7 @@ sub module { if(0 == $<) { $args->{'Commands'}->{'restart'} = { - description => gettext('Call initialization script to restart xxv system.'), + description => gettext('Call initialization script to restart the xxv system.'), short => 'restart', callback => sub{ restart(@_) }, Level => 'admin', @@ -389,10 +389,10 @@ sub getDbh { }); if($dbh) { - debug('Successfully connect to database: %s', $dsn); + debug('Connect to database: %s successful.', $dsn); $dbh->{'mysql_auto_reconnect'} = 1; } else { - panic("Can't connect to database: %s :", $dsn, $DBI::errstr); + panic("Could not connect to database: %s :", $dsn, $DBI::errstr); unlink $PATHS->{PIDFILE}; &toCleanUp(); exit(1); @@ -473,7 +473,7 @@ sub getVdrVersion { # ------------------ sub getDBVersion { # ------------------ - my $dbh = shift || return error('No DB Handle'); + my $dbh = shift || return error('No database handle defined!'); # Keine Versionstabelle? unless(tableExists($dbh, 'VERSION')) { @@ -550,9 +550,9 @@ sub docu { if(ref $console and $name) { return $console->pod($name); } elsif(ref $console) { - return $console->message(sprintf(gettext("Documentation is generated in '%s'."), $target)); + return $console->message(sprintf(gettext("Documentation has been generated in '%s'."), $target)); } else { - return debug(sprintf(gettext("Documentation is generated in '%s'."), $target) . "\n"); + return debug(sprintf("Documentation has been generated in '%s'.", $target) . "\n"); } } @@ -561,7 +561,7 @@ sub more { # ------------------ my $watcher = shift; my $console = shift; - my $name = shift || return error('No TxtFile given!'); + my $name = shift || return error('No text file defined!'); my $param = shift || {}; if(ref $console) { @@ -576,7 +576,7 @@ sub restart { my $console = shift; if(-x $Config->{General}->{initscript}) { - my $msg = sprintf(gettext("The xxv system will restart now. Please try a relogin in %d seconds."), $starttime); + my $msg = sprintf(gettext("The xxv system will restart now. Please try to re-login in %d seconds."), $starttime); $console->message($msg); debug $msg; $console->redirect({url => '/', wait => $starttime, parent => 'top'}) @@ -586,7 +586,7 @@ sub restart { my $erg = `$run`; } else { - $console->err(gettext("Can't restart xxv system ! Script for initialization is'nt executable.")); + $console->err(gettext("Cannot restart the xxv system! Script for initialization cannot be executed.")); } } @@ -601,7 +601,7 @@ sub getActualDbVersion { # ------------------ sub checkDB { # ------------------ - my $dbh = shift || return error('No DB Handle'); + my $dbh = shift || return error('No database handle'); my $dbversion = &getDBVersion($dbh); my $aver = &getActualDbVersion(); @@ -676,7 +676,7 @@ sub init_template { # Test on Template Modul .... if($TEMPLMOD) { $Template::Config::STASH = 'Template::Stash::XS'; - debug gettext('Fast template support is on!'); + debug 'Fast template support is enabled!'; } else { use Template; warn gettext(qq| @@ -712,7 +712,7 @@ sub init_signal_handler { $Config = Config::Tiny->read( $pat->{CFGFILE} ) or return error('Problem to read the %s: %s', $pat->{CFGFILE}, $CFGOBJ->errstr); my $configModule = getModule('CONFIG') - or return error('Can not load the Config module'); + or return error('Can not load the config module'); $configModule->reconfigure; }; @@ -728,7 +728,7 @@ sub init_db_connect { $cfg->{General}->{DSN}, $cfg->{General}->{USR}, $cfg->{General}->{PWD}, - ) or return error 'Can not connect to Database'; + ) or return error 'Can not connect to database'; # Test on compare Version from DB and Sourcepaket my ($dbok, $dberr) = &checkDB($dbh); @@ -739,4 +739,3 @@ sub init_db_connect { return $dbh; } - diff --git a/html/alist.tmpl b/html/alist.tmpl index 9d0f3c1..675d224 100644 --- a/html/alist.tmpl +++ b/html/alist.tmpl @@ -2,11 +2,11 @@ <h1><?% gettext("Wished automated recordings") %?></h1> <?% IF allow('anew') %?> -<a href="?cmd=anew">[<?% gettext("Create a new autotimer") %?>]</a> +<a href="?cmd=anew">[<?% gettext("Create new autotimer") %?>]</a> <?% END %?> <a href="#" onClick="suche('<?% gettext("Search text") %?>', '?cmd=asearch&data=')"><?% gettext("Search in autotimer") %?></a> <?% IF allow('aupdate') %?> -<a href="?cmd=aupdate">[<?% gettext("Start the autotimer process") %?>]</a> +<a href="?cmd=aupdate">[<?% gettext("Search autotimer") %?>]</a> <?% END %?> <p> diff --git a/html/clist.tmpl b/html/clist.tmpl index c864fae..ea5df04 100644 --- a/html/clist.tmpl +++ b/html/clist.tmpl @@ -100,7 +100,7 @@ <?% INCLUDE 'widgets/referer.tmpl'%?> <?% IF allow( 'cnew' ) %?> <a href="?cmd=cnew"> - [<?% gettext("Create a new channel") %?>] + [<?% gettext("Create new channel") %?>] </a> <?% END %?> <?% IF allow( 'cupdate' ) %?> @@ -119,7 +119,7 @@ <a href="#" onclick="selAll(document.clist,0)">[<?% gettext("Unselect all") %?>]</a> <a href="#" onclick="reverse(document.clist)">[<?% gettext("Reverse select") %?>]</a> <a href="#" onclick="Delete('<?% gettext("You would delete follow channels?") %?>', - '<?% gettext("You have nothing selected!") %?>','cdelete',document.clist)"> + '<?% gettext("Nothing selected!") %?>','cdelete',document.clist)"> [<?% gettext("Delete channels") %?>] </a> </p> @@ -133,7 +133,7 @@ <tr><th width="20"><?% PROCESS SortItem row="POS" label="" trunc=5 %?></th> <th width="120"><?% PROCESS SortItem row="Name" label=gettext('Name') trunc=20 %?></th> <th><?% PROCESS SortItem row="Frequency" label=gettext('Transponder frequency') trunc=6 %?></th> - <th><?% PROCESS SortItem row="Parameters" label=gettext('Various parameters, depends on signal source') trunc=8 %?></th> + <th><?% PROCESS SortItem row="Parameters" label=gettext('Various parameters, depending on signal source') trunc=8 %?></th> <th><?% PROCESS SortItem row="Srate" label=gettext('Symbol rate') trunc=6 %?></th> <th><?% PROCESS SortItem row="VPID" label=gettext('Video PID (VPID)') trunc=10 %?></th> <th><?% PROCESS SortItem row="APID" label=gettext('Audio PID (APID)') trunc=10 %?></th> diff --git a/html/help.tmpl b/html/help.tmpl index 65daa5f..a42ba8e 100644 --- a/html/help.tmpl +++ b/html/help.tmpl @@ -59,7 +59,7 @@ var tree = new WebFXTree("XXV", "?cmd=<?% start %?>"); <?% IF allow('cmdlist') %?>tree.add(new WebFXTreeItem("<?% gettext("Commands") %?>", "?cmd=cmdlist"));<?% END %?> -<?% IF allow('alist') %?>tree.add(new WebFXTreeItem("<?% gettext("AutoTimer") %?>", "?cmd=alist"));<?% END %?> +<?% IF allow('alist') %?>tree.add(new WebFXTreeItem("<?% gettext("Autotimer") %?>", "?cmd=alist"));<?% END %?> <?% IF allow('tlist') %?>tree.add(new WebFXTreeItem("<?% gettext("Timers") %?>", "?cmd=tlist"));<?% END %?> diff --git a/html/mlist.tmpl b/html/mlist.tmpl index 9652c96..5b7847d 100644 --- a/html/mlist.tmpl +++ b/html/mlist.tmpl @@ -1,4 +1,4 @@ -<h1><?% gettext("Music Library") %?></h1> +<h1><?% gettext("Music library") %?></h1> <!-- TableTemplate --> <form name="musicform" onSubmit="location.href = '?cmd=ml&data=' + 'search:' + document.forms[0].search.value; return false"> <table width="95%" border=1> @@ -36,7 +36,7 @@ <b> -<a href="#" onClick="Play('<?% gettext("You have nothing selected!") %?>',document.musicform,'<?% param.proxy %?>')"> +<a href="#" onClick="Play('<?% gettext("Nothing selected!") %?>',document.musicform,'<?% param.proxy %?>')"> [<?% gettext("Play selected songs") %?>] </a> <a href="?cmd=mrefresh">[<?% gettext("Update Music Database") %?>]</a> @@ -62,7 +62,7 @@ <td colspan=<?% zeile.size %?>> <img class="cover" src="?cmd=mcoverimage&data=<?% zeile.0 %?>&__binary=1" alt="<?% zeile.2 %?>" align="right" /> <?% albummark = "Album"+loop.count %?> - <h1>Album: <?% zeile.2 %?> <font size=2><a href="#" onClick="selSwitch(document.musicform, '<?% albummark %?>')">[<?% gettext("Select") %?> album]</a></font></h1> + <h1>Album: <?% zeile.2 %?> <font size=2><a href="#" onClick="selSwitch(document.musicform, '<?% albummark %?>')">[<?% gettext("Selection") %?> album]</a></font></h1> <h3> <?% gettext("Artist") %?>: <?% zeile.1 %?>, <?% gettext("Year") %?>: <?% zeile.5 %?>, diff --git a/html/now.tmpl b/html/now.tmpl index 170f667..795fc9e 100644 --- a/html/now.tmpl +++ b/html/now.tmpl @@ -39,7 +39,7 @@ <input type="text" name="data" value="<?% t %?>" size="5"> <input type="hidden" name="__cgrp" value="<?% cgi.param('__cgrp') %?>" /> <input type="submit" value="<?% gettext("Go") %?>"> - <input type="button" value="<?% gettext("Reload EPG data") %?>" onclick="location.href='?cmd=erestart'"> + <input type="button" value="<?% gettext("Update EPG data") %?>" onclick="location.href='?cmd=erestart'"> </form> <table border="0" width="95%"> diff --git a/html/rdisplay.tmpl b/html/rdisplay.tmpl index 0f31e28..8cdb4ce 100644 --- a/html/rdisplay.tmpl +++ b/html/rdisplay.tmpl @@ -73,7 +73,7 @@ <td colspan="2"><b> <a href="?cmd=rlist">[<?% gettext("Recording list") %?>]</a> <?% IF allow('rdelete') %?> - <a href="javascript:sure(document.RecordDisplay, '<?% gettext("You will delete this recording") %?>?','?cmd=rdelete&data=<?% data.RecordId %?>')"> + <a href="javascript:sure(document.RecordDisplay, '<?% gettext("Do you really want to delete these recordings?") %?>?','?cmd=rdelete&data=<?% data.RecordId %?>')"> [<?% gettext("Delete recording") %?>] </a> <?% END %?> @@ -99,7 +99,7 @@ <br /> <select name='data' onChange="di(this.form.data.options[this.form.data.options.selectedIndex].value, '?cmd=rconvert&data=')"> <?% c = 0 %?> - <option value='0'><?% gettext("Choose an action for this recording") %?>:</option> + <option value='0'><?% gettext("Choose a command to edit this recording ...") %?>:</option> <?% FOREACH cmd = param.reccmds %?> <?% c = c + 1 %?> <option value='<?% c %?>_<?% data.RecordId %?>'><?% cmd.split(':').first %?></option> diff --git a/html/rlist.tmpl b/html/rlist.tmpl index 5547b00..f6427c2 100644 --- a/html/rlist.tmpl +++ b/html/rlist.tmpl @@ -120,8 +120,8 @@ <form> <a href="?cmd=rupdate">[<?% gettext("Update recordings") %?>]</a> <?% IF allow('rdelete') %?> -<a href="#" onClick="Delete('<?% gettext("You would delete follow recordings?") %?>', -'<?% gettext("You have nothing selected!") %?>','rdelete',document.rlist)"> +<a href="#" onClick="Delete('<?% gettext("Do you want to delete the following recordings?") %?>', +'<?% gettext("Nothing selected!") %?>','rdelete',document.rlist)"> [<?% gettext("Delete recordings") %?>]</a> <?% END %?> <?% gettext("Search for recordings") %?>: diff --git a/html/search.tmpl b/html/search.tmpl index be3eed0..5cb0235 100644 --- a/html/search.tmpl +++ b/html/search.tmpl @@ -33,7 +33,7 @@ <td><?% gettext('Video format') %?>:</td> <td> <input type="radio" name="__VideoFormat" value="all" <?% IF ! cgi.param('__VideoFormat') || cgi.param('__VideoFormat') == 'all' %?>checked<?% END %?>><?% gettext('All') %?> - <input type="radio" name="__VideoFormat" value="widescreen" <?% IF cgi.param('__VideoFormat') == 'widescreen' %?>checked<?% END %?>><?% gettext('16:9 Widescreen') %?> + <input type="radio" name="__VideoFormat" value="widescreen" <?% IF cgi.param('__VideoFormat') == 'widescreen' %?>checked<?% END %?>><?% gettext('16:9 Wide screen') %?> </td> </tr> <tr> diff --git a/html/tlist.tmpl b/html/tlist.tmpl index ab5c825..2e49875 100644 --- a/html/tlist.tmpl +++ b/html/tlist.tmpl @@ -11,7 +11,7 @@ <?% END %?> <?% IF allow('tnew') %?> -<a href="?cmd=tnew">[<?% gettext("Create a new timer") %?>]</a> +<a href="?cmd=tnew">[<?% gettext("Create new timer") %?>]</a> <?% END %?> <?% IF allow('tupdate') %?> <a href="javascript:tostatus('?cmd=tupdate')">[<?% gettext("Update timers") %?>]</a> @@ -20,13 +20,13 @@ <?% INCLUDE 'widgets/referer.tmpl' %?> <?% IF allow('ttoggle') %?> -<a href="#" onClick="Toggle('<?% gettext("You have nothing selected!") %?>',document.TimerList)"> +<a href="#" onClick="Toggle('<?% gettext("Nothing selected!") %?>',document.TimerList)"> [<?% gettext("Toggle timer") %?>] </a> <?% END %?> <?% IF allow('tdelete') %?> -<a href="#" onClick="Delete('<?% gettext("You would delete follow timers?") %?>', -'<?% gettext("You have nothing selected!") %?>','tdelete',document.TimerList)"> +<a href="#" onClick="Delete('<?% gettext("Would You like to delete the following timer(s)?") %?>', +'<?% gettext("Nothing selected!") %?>','tdelete',document.TimerList)"> [<?% gettext("Delete timer") %?>] </a> @@ -47,7 +47,7 @@ <th><?% field %?></th> <?% END %?> <?% IF enableform %?> - <th><?% gettext("Select") %?></th> + <th><?% gettext("Selection") %?></th> <?% END %?> </tr> <?% FOREACH zeile = data %?> @@ -79,7 +79,7 @@ <a href="?cmd=tedit&data=<?% zeile.0 %?>" title="<?% gettext("Edit this timer") %?>"><div class="<?% myclass %?>">[E]</div></a> <?% END %?> <?% IF allow('tdelete') %?> - <a href="javascript:sure(document.TimerList, '<?% gettext("You will delete this timer") %?> : <?% escape(zeile.7.split('~').first) %?>','?cmd=tdelete&data=<?% zeile.0 %?>')" title="<?% gettext("Delete this timer") %?>"><div class="<?% myclass %?>">[D]</div></a> + <a href="javascript:sure(document.TimerList, '<?% gettext("Would You like to delete the following timer(s)?") %?> : <?% escape(zeile.7.split('~').first) %?>','?cmd=tdelete&data=<?% zeile.0 %?>')" title="<?% gettext("Would You like to delete the following timer(s)?") %?>"><div class="<?% myclass %?>">[D]</div></a> <?% END %?> </td> <?% ELSIF c == 1; # Id Status %?> @@ -102,7 +102,7 @@ </td> <?% ELSIF c == 2; # Channel Field %?> <td nowrap> - <a href="?cmd=program&data=<?% field %?>" title="<?% gettext("Jump to program guide:") %?> <?% zeile.2 %?>"><div class="<?% myclass %?>"><?% zeile.2 %?></div></a> + <a href="?cmd=program&data=<?% field %?>" title="<?% gettext("Jump to program:") %?> <?% zeile.2 %?>"><div class="<?% myclass %?>"><?% zeile.2 %?></div></a> </td> <?% ELSIF c == 7; # Title %?> <td> diff --git a/html/topten.tmpl b/html/topten.tmpl index 3d57a71..b01c220 100644 --- a/html/topten.tmpl +++ b/html/topten.tmpl @@ -8,7 +8,7 @@ <!-- TableTemplate --> <?% USE date %?> -<h1><?% gettext("TopTen Entrys") %?></h1> +<h1><?% gettext("Top Ten entrys") %?></h1> <h6><?% gettext("This Screen list the most programmed EPG Events from all XXV Users. Of course, we list only Events these are exists in your EPG Table!") %?></h6> <p/> <table> diff --git a/html/ulist.tmpl b/html/ulist.tmpl index 3081d7b..c61c42e 100644 --- a/html/ulist.tmpl +++ b/html/ulist.tmpl @@ -1,7 +1,7 @@ <!-- TableTemplate --> -<h1><?% gettext("Administration of User") %?></h1> +<h1><?% gettext("User administration") %?></h1> -<a href="?cmd=unew">[<?% gettext("Create a new account for user") %?>]</a> +<a href="?cmd=unew">[<?% gettext("Create new account for user") %?>]</a> <p> <table border="0" width="95%"> @@ -25,8 +25,8 @@ <td> <a title="<?% gettext("Edit account of user") %?>" href="?cmd=uedit&data=<?% zeile.0 %?>"> [<?% gettext("Edit") %?>]</a> - <a title="<?% gettext("Delete account of user") %?>" - href="javascript:sure(document.UserList, '<?% gettext("You will delete this account of user") %?>: <?% escape(zeile.1) %?>','?cmd=udelete&data=<?% zeile.0 %?>')"> + <a title="<?% gettext("Delete user account") %?>" + href="javascript:sure(document.UserList, '<?% gettext("Do you really want to delete this user account?") %?>: <?% escape(zeile.1) %?>','?cmd=udelete&data=<?% zeile.0 %?>')"> [<?% gettext("Del") %?>] </a> </td> diff --git a/html/widgets/password.tmpl b/html/widgets/password.tmpl index 2455ab1..f6b043e 100644 --- a/html/widgets/password.tmpl +++ b/html/widgets/password.tmpl @@ -6,6 +6,6 @@ <td class="<?% (param.count mod 2) == 0 ? 'light' : 'dark' %?>" > <?% val = cgi.param(data.NAME) || data.def %?> <input type="password" name="<?% data.NAME %?>" value="" <?% FOREACH p = param.tags; "$p ";END %?>><br/> - <input type="password" name="<?% data.NAME %?>" value="" <?% FOREACH p = param.tags; "$p ";END %?> title='<?% gettext("Entry again") %?>'> + <input type="password" name="<?% data.NAME %?>" value="" <?% FOREACH p = param.tags; "$p ";END %?> title='<?% gettext("Repeat entry") %?>'> </td> </tr> diff --git a/html/widgets/remote.tmpl b/html/widgets/remote.tmpl index 633537c..4a9dadc 100644 --- a/html/widgets/remote.tmpl +++ b/html/widgets/remote.tmpl @@ -58,7 +58,7 @@ aktiv = window.setInterval("grab()", inter); <?% END %?> <td colspan="3"><nobr> <input type="button" onclick="self.location.href='?cmd=r&monitor=<?% monitor ? 0 : 1 %?>'" name="monitor" value="<?% gettext("Monitor") %?>"> - <input type="button" onclick="switch_channel('?cmd=remote&data=Power')" name="power" value="<?% gettext("Powerdown") %?>"> + <input type="button" onclick="switch_channel('?cmd=remote&data=Power')" name="power" value="<?% gettext("Switch off") %?>"> </td> </tr> <tr> diff --git a/html/widgets/vtx.tmpl b/html/widgets/vtx.tmpl index 9d3e2fd..47640cb 100644 --- a/html/widgets/vtx.tmpl +++ b/html/widgets/vtx.tmpl @@ -31,9 +31,9 @@ </tr> </table> <?% IF param.toppage != 0 %?><a title="<?% gettext("First page") %?>" href="<?% url %?><?% param.toppage %?>">[^]</a><?% ELSE %?><span class="shadow">[^]</span><?% END %?> - <?% IF param.page_prev != 0 %?><a title="<?% gettext("Prior page") %?>"href="<?% url %?><?% param.page_prev %?>">[<<]</a><?% ELSE %?><span class="shadow">[<<]</span><?% END %?> - <?% IF param.subpage_prev != 0 %?><a title="<?% gettext("Prior subpage") %?>"href="<?% url %?><?% param.subpage_prev %?>">[<]</a><?% ELSE %?><span class="shadow">[<]</span><?% END %?> - <?% IF param.subpage_next != 0 %?><a title="<?% gettext("Next subpage") %?>"href="<?% url %?><?% param.subpage_next %?>">[>]</a><?% ELSE %?><span class="shadow">[>]</span><?% END %?> + <?% IF param.page_prev != 0 %?><a title="<?% gettext("Previous page") %?>"href="<?% url %?><?% param.page_prev %?>">[<<]</a><?% ELSE %?><span class="shadow">[<<]</span><?% END %?> + <?% IF param.subpage_prev != 0 %?><a title="<?% gettext("Prior sub page") %?>"href="<?% url %?><?% param.subpage_prev %?>">[<]</a><?% ELSE %?><span class="shadow">[<]</span><?% END %?> + <?% IF param.subpage_next != 0 %?><a title="<?% gettext("Next sub page") %?>"href="<?% url %?><?% param.subpage_next %?>">[>]</a><?% ELSE %?><span class="shadow">[>]</span><?% END %?> <?% IF param.page_next != 0 %?><a title="<?% gettext("Next page") %?>"href="<?% url %?><?% param.page_next %?>">[>>]</a><?% ELSE %?><span class="shadow">[>>]</span><?% END %?> <?% END %?> diff --git a/lib/Tools.pm b/lib/Tools.pm index e5bdce7..30998d7 100644 --- a/lib/Tools.pm +++ b/lib/Tools.pm @@ -276,7 +276,7 @@ sub load_file { #-------------------------------------------------------- my $file = shift || die "Kein File bei Loader $!"; - lg sprintf('Load file "%s" from system', + lg sprintf('Load file "%s"', $file, ); @@ -298,7 +298,7 @@ sub save_file { $data =~ s/\r\n/\n/sig; - lg sprintf('Save %s in file "%s"', + lg sprintf('Save file %s(%s)', $file, convert(length($data)) ); diff --git a/lib/XXV/MODULES/AUTOTIMER.pm b/lib/XXV/MODULES/AUTOTIMER.pm index 90efb71..2aa3171 100644 --- a/lib/XXV/MODULES/AUTOTIMER.pm +++ b/lib/XXV/MODULES/AUTOTIMER.pm @@ -12,13 +12,13 @@ use Locale::gettext; # Usage: my $modhash = $obj->module(); # ------------------ sub module { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'AUTOTIMER', Prereq => { # 'Perl::Module' => 'Description', }, - Description => gettext('This module search for epg entries with an user defined text and create new timer.'), + Description => gettext('This module searches for EPG entries with user-defined text and creates new timers.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -32,7 +32,7 @@ sub module { required => gettext('This is required!'), }, exclude => { - description => gettext('Exclude channel list for autotimer.'), + description => gettext('Exclude channels from autotimer'), type => 'string', default => 'POS > 50', check => sub{ @@ -47,13 +47,13 @@ sub module { }, Commands => { astatus => { - description => gettext('Status from autotimers'), + description => gettext('Display status of autotimers.'), short => 'as', callback => sub{ $obj->status(@_) }, DenyClass => 'alist', }, anew => { - description => gettext("Create a new autotimer"), + description => gettext("Create new autotimer"), short => 'an', callback => sub{ $obj->autotimerCreate(@_) }, Level => 'user', @@ -67,7 +67,7 @@ sub module { DenyClass => 'aedit', }, aedit => { - description => gettext("Edit a autotimer 'aid'"), + description => gettext("Edit an autotimer 'aid'"), short => 'ae', callback => sub{ $obj->autotimerEdit(@_) }, Level => 'user', @@ -80,13 +80,13 @@ sub module { DenyClass => 'alist', }, alist => { - description => gettext("List the autotimer 'aid'"), + description => gettext("Show autotimer 'aid'"), short => 'al', callback => sub{ $obj->list(@_) }, DenyClass => 'alist', }, aupdate => { - description => gettext("Start the autotimer process"), + description => gettext("Start autotimer search."), short => 'au', callback => sub{ $obj->autotimer(@_) }, Level => 'user', @@ -107,7 +107,7 @@ sub module { }, RegEvent => { 'newTimerfromAutotimer' => { - Descr => gettext('Create event entries, if a new timer from autotimer created.'), + Descr => gettext('Create event entries if an autotimer has created a new timer.'), # You have this choices (harmless is default): # 'harmless', 'interesting', 'veryinteresting', 'important', 'veryimportant' @@ -136,7 +136,7 @@ sub module { my $autotimer = getDataById($timer->{AutotimerId}, 'AUTOTIMER', 'Id'); my $title = sprintf(gettext("Autotimer('%s') found: %s"), $autotimer->{Search}, $timer->{File}); - my $description = sprintf(gettext("At: %s to %s\nDescription: %s"), + my $description = sprintf(gettext("On: %s to %s\nDescription: %s"), $timer->{NextStartTime}, fmttime($timer->{Stop}), $desc && $desc->{description} ? $desc->{description} : '' @@ -159,7 +159,7 @@ sub module { # Usage: my $report = $obj->status([$watcher, $console]); # ------------------ sub status { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $lastReportTime = shift || 0; @@ -201,7 +201,7 @@ ORDER BY unshift(@$erg, $fields); return { - message => sprintf(gettext('Autotimer has %d new timer programmed, since last report at %s'), + message => sprintf(gettext('Autotimer has programmed %d new timer(s) since last report to %s'), (scalar @$erg - 1), scalar localtime($lastReportTime)), table => $erg, }; @@ -248,7 +248,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0, panic("Session to database is'nt connected") unless($obj->{dbh}); @@ -306,7 +306,7 @@ sub _init { # Usage: $obj->autotimer([$autotimerid]); # ------------------ sub autotimer { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $autotimerid = shift; @@ -327,7 +327,7 @@ sub autotimer { my $waiter; if(ref $console && !$autotimerid && $console->typ eq 'HTML') { my $zaehler = scalar keys %$att; - $waiter = $console->wait(gettext("Look for autotimer ..."), 0, ++$zaehler, 'no'); + $waiter = $console->wait(gettext("Searching for autotimer ..."), 0, ++$zaehler, 'no'); } my $l = 0; # Lines for Waiter @@ -342,12 +342,12 @@ sub autotimer { foreach my $id (sort keys %$att) { my $a = $att->{$id}; - $waiter->next(++$l, undef, sprintf(gettext("Look for autotimer with ID(%d) with search '%s'"), $id, $a->{Search})) + $waiter->next(++$l, undef, sprintf(gettext("Search for autotimer with ID(%d) with search pattern '%s'"), $id, $a->{Search})) if(ref $waiter); if(ref $console && $autotimerid) { $console->message(' ') if($console->{TYP} eq 'HTML'); - $console->message(sprintf(gettext("Look for autotimer with ID(%d) with search '%s'"), $id, $a->{Search})); + $console->message(sprintf(gettext("Search for autotimer with ID(%d) with search pattern '%s'"), $id, $a->{Search})); } # Build SQL Command and run it .... @@ -436,16 +436,16 @@ sub autotimer { } } if($error) { - $console->err(sprintf(gettext("Can't save timer for '%s' : %s"), $events->{$Id}->{File}, $error)) + $console->err(sprintf(gettext("Could not save timer for '%s' : %s"), $events->{$Id}->{File}, $error)) if(ref $console && $autotimerid); } else { if($timerID) { ++$m; - $console->message(sprintf(gettext("Modify timer for '%s'."), $events->{$Id}->{File})) + $console->message(sprintf(gettext("Modified timer for '%s'."), $events->{$Id}->{File})) if(ref $console && $autotimerid); } else { ++$c; - $console->message(sprintf(gettext("Create timer for '%s'."), $events->{$Id}->{File})) + $console->message(sprintf(gettext("Timer for '%s' has been created."), $events->{$Id}->{File})) if(ref $console && $autotimerid); } } @@ -453,7 +453,7 @@ sub autotimer { $C += $c; $M += $m; if($c) { - my $msg = sprintf(gettext("Create %d timer for '%s'."), $c, $a->{Search}); + my $msg = sprintf(gettext("Created %d timer for '%s'."), $c, $a->{Search}); if(ref $console && $autotimerid) { $console->message($msg); } @@ -462,7 +462,7 @@ sub autotimer { } } if($m) { - my $msg = sprintf(gettext("Modify %d timer for '%s'."), $m, $a->{Search}); + my $msg = sprintf(gettext("Modified %d timer for '%s'."), $m, $a->{Search}); if(ref $console && $autotimerid) { $console->message($msg); } @@ -472,7 +472,7 @@ sub autotimer { } } - $waiter->next(undef,undef,gettext('Read new timer in data base.')) + $waiter->next(undef,undef,gettext('Read new timers into database.')) if(ref $waiter); sleep 1; @@ -484,11 +484,11 @@ sub autotimer { if(ref $console) { $console->start() if(ref $waiter); - unshift(@{$log},sprintf(gettext("Autotimer process has %d timers created and %d timers modified."), $C, $M)); + unshift(@{$log},sprintf(gettext("Autotimer process created %d timers and modified %d timers."), $C, $M)); lg join("\n", @$log); $console->message($log); $console->link({ - text => gettext("Back to autotimer list"), + text => gettext("Back to autotimer listing."), url => "?cmd=alist", }) if($console->typ eq 'HTML'); } @@ -502,7 +502,7 @@ sub autotimer { # Usage: $obj->autotimerCreate($watcher, $console, [$userdata]); # ------------------ sub autotimerCreate { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $timerid = shift || 0; @@ -517,7 +517,7 @@ sub autotimerCreate { # Usage: $obj->autotimerEdit($watcher, $console, [$atid], [$userdata]); # ------------------ sub autotimerEdit { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $timerid = shift || 0; @@ -530,7 +530,7 @@ sub autotimerEdit { if($timerid and not ref $data) { my $sth = $obj->{dbh}->prepare("select * from AUTOTIMER where Id = ?"); $sth->execute($timerid) - or return $console->err(sprintf(gettext("Autotimer with ID '%s' does not exist in the database!"),$timerid)); + or return $console->err(sprintf(gettext("The autotimer '%s' does not exist in the database."),$timerid)); $epg = $sth->fetchrow_hashref(); # Channels Ids in Namen umwandeln @@ -567,7 +567,7 @@ sub autotimerEdit { my %do = ( 'timer' => gettext('Timer'), - 'recording' => gettext('Exist recording'), + 'recording' => gettext('Existing recording'), 'chronicle' => gettext('Recording chronicle') ); my $DoneChoices = [$do{'timer'}, $do{'recording'}]; @@ -585,13 +585,16 @@ sub autotimerEdit { 'Activ' => { typ => 'confirm', def => $epg->{Activ} || 'y', - msg => gettext('Switch this autotimer on?'), + msg => gettext('Activate this autotimer'), }, 'Search' => { req => gettext('This is required!'), - msg => gettext( -"Search terms to look for EPG entries.\nYou can also improve your searches :\n* by adding 'operators' to your search terms like 'AND', 'OR', 'AND NOT' e.g. 'today AND NOT tomorrow'\n* by comma seperated multiply search terms e.g. 'today,tomorrow'\n* by minus sign to exclude search terms e.g. 'today,-tomorrow'" -), + msg => +gettext("Search terms to search for EPG entries. +You can also fine tune your search : +* by adding 'operators' to your search terms such as 'AND', 'OR', 'AND NOT' e.g. 'today AND NOT tomorrow' +* by comma-separated search terms e.g. 'today,tomorrow' +* by a hyphen to exclude search terms e.g. 'today,-tomorrow'"), def => $epg->{Search} || '', }, 'InFields' => { @@ -631,7 +634,7 @@ sub autotimerEdit { def => $epg->{Channels}, choices => $mod->ChannelArray('Name', sprintf(' NOT (%s)', $obj->{exclude})), options => 'multi', - msg => gettext('Restrict search to this channels'), + msg => gettext('Limit search to these channels'), check => sub{ my $value = shift || return; my @vals; @@ -682,20 +685,20 @@ sub autotimerEdit { my $value = $epg->{Start} || return ""; return fmttime($value); }, - msg => gettext("Starttime in format 'HH:MM'"), + msg => gettext("Start time in format 'HH:MM'"), check => sub{ my $value = shift || 0; - return undef, gettext('You set a start-time without a stop-time!') + return undef, gettext('You set a start time without an end time!') if(not $data->{Stop} and $value); return "" if(not $value); $value = fmttime($value) if($value =~ /^\d+$/sig); - return undef, gettext('No right time!') if($value !~ /^\d+:\d+$/sig); + return undef, gettext('The time is incorrect!') if($value !~ /^\d+:\d+$/sig); my @v = split(':', $value); $value = sprintf('%02d%02d',$v[0],$v[1]); if(int($value) < 2400 and int($value) >= 0) { return sprintf('%04d',$value); } else { - return undef, gettext('No right time!'); + return undef, gettext('The time is incorrect!'); } }, }, @@ -705,25 +708,25 @@ sub autotimerEdit { my $value = $epg->{Stop} || return ""; return fmttime($value); }, - msg => gettext("Endtime in format 'HH:MM'"), + msg => gettext("End time in format 'HH:MM'"), check => sub{ my $value = shift || 0; - return undef, gettext('You set a stop-time without a start-time!') + return undef, gettext('You set an end time without a start time!') if(not $data->{Start} and $value); return "" if(not $value); $value = fmttime($value) if($value =~ /^\d+$/sig); - return undef, gettext('No right time!') if($value !~ /^\d+:\d+$/sig); + return undef, gettext('The time is incorrect!') if($value !~ /^\d+:\d+$/sig); my @v = split(':', $value); $value = sprintf('%02d%02d',$v[0],$v[1]); if(int($value) < 2400 and int($value) >= 0) { return sprintf('%04d',$value); } else { - return undef, gettext('No right time!'); + return undef, gettext('The time is incorrect!'); } }, }, 'Weekdays' => { - msg => gettext('Search only on this weekdays'), + msg => gettext('Only search these weekdays'), typ => 'checkbox', choices => [$wd{'Mon'}, $wd{'Tue'}, $wd{'Wed'}, $wd{'Thu'}, $wd{'Fri'}, $wd{'Sat'}, $wd{'Sun'}], def => sub { @@ -756,11 +759,11 @@ sub autotimerEdit { 'VPS' => { typ => 'confirm', def => $epg->{VPS} || 'n', - msg => gettext('Activate VPS for new timer?'), + msg => gettext('Activate VPS for new timers'), }, 'prevminutes' => { typ => 'integer', - msg => gettext('Buffer time in minutes before the scheduled end of the recorded program.'), + msg => gettext('Buffer time in minutes before the scheduled start of a recording'), def => $epg->{prevminutes}, check => sub{ my $value = shift; @@ -768,13 +771,13 @@ sub autotimerEdit { if($value =~ /^\d+$/sig and $value >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, 'afterminutes' => { typ => 'integer', - msg => gettext('Buffer time in minutes after the scheduled end of the recorded program.'), + msg => gettext('Buffer time in minutes past the scheduled end of a recording'), def => $epg->{afterminutes}, check => sub{ my $value = shift; @@ -782,58 +785,58 @@ sub autotimerEdit { if($value =~ /^\d+$/sig and $value >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, 'MinLength' => { typ => 'integer', - msg => gettext('Minimum length in minutes'), + msg => gettext('Minimum play time in minutes'), def => $epg->{MinLength} || 0, check => sub{ my $value = shift || return; if($value =~ /^\d+$/sig and $value > 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, 'Priority' => { typ => 'integer', - msg => sprintf(gettext('Priority (0 .. %d)'),$console->{USER}->{MaxPriority} ? $console->{USER}->{MaxPriority} : 99 ), + msg => sprintf(gettext('Priority (%d ... %d)'),0,$console->{USER}->{MaxPriority} ? $console->{USER}->{MaxPriority} : 99 ), def => (defined $epg->{Priority} ? $epg->{Priority} : $modT->{Priority}), check => sub{ my $value = shift || 0; if($value =~ /^\d+$/sig and $value >= 0 and $value < 100) { if($console->{USER}->{MaxPriority} and $value > $console->{USER}->{MaxPriority}) { - return undef, sprintf(gettext('Sorry, but maximum priority is limited on %d!'), $console->{USER}->{MaxPriority}); + return undef, sprintf(gettext('Sorry, but the maximum priority is limited to %d!'), $console->{USER}->{MaxPriority}); } return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, 'Lifetime' => { typ => 'integer', - msg => sprintf(gettext('Lifetime (0 .. %d)'),$console->{USER}->{MaxLifeTime} ? $console->{USER}->{MaxLifeTime} : 99 ), + msg => sprintf(gettext('Lifetime (%d ... %d)'),0,$console->{USER}->{MaxLifeTime} ? $console->{USER}->{MaxLifeTime} : 99 ), def => (defined $epg->{Lifetime} ? $epg->{Lifetime} : $modT->{Lifetime}), check => sub{ my $value = shift || 0; if($value =~ /^\d+$/sig and $value >= 0 and $value < 100) { if($console->{USER}->{MaxLifeTime} and $value > $console->{USER}->{MaxLifeTime}) { - return undef, sprintf(gettext('Sorry, but maximum lifetime is limited on %d!'), $console->{USER}->{MaxLifeTime}); + return undef, sprintf(gettext('Sorry, but the maximum life time is limited to %d!'), $console->{USER}->{MaxLifeTime}); } return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, 'Dir' => { typ => 'string', - msg => gettext('Group all recordings on a directory'), + msg => gettext('Group all recordings into one directory'), def => $epg->{Dir}, # choices => main::getModule('TIMERS')->getRootDirs, }, @@ -841,13 +844,13 @@ sub autotimerEdit { # Ask Questions $data = $console->question(($timerid ? gettext('Edit autotimer') - : gettext('Create a new autotimer')), $questions, $data); + : gettext('Create new autotimer')), $questions, $data); if(ref $data eq 'HASH') { delete $data->{Channel}; # Last chance ;) - return $console->err(gettext('Nothing to search defined!')) + return $console->err(gettext('Nothing defined for this search!')) unless($data->{Search}); $obj->_insert($data); @@ -864,7 +867,7 @@ sub autotimerEdit { $obj->autotimer($watcher, $console, $data->{Id}); $console->link({ - text => gettext("Back to referred side"), + text => gettext("Back to previous page."), url => $console->{browser}->{Referer}, }) if($console->typ eq 'HTML'); @@ -878,10 +881,10 @@ sub autotimerEdit { # Usage: $obj->autotimerDelete($watcher, $console, $atid); # ------------------ sub autotimerDelete { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $timerid = shift || return $console->err(gettext("No ID for autotimer to delete! Please use adelete 'aid'")); # If timerid the edittimer + my $timerid = shift || return $console->err(gettext("No autotimer defined to delete! Please use adelete 'aid'!")); # If timerid the edittimer my @timers = reverse sort{ $a <=> $b } split(/[^0-9]/, $timerid); @@ -889,11 +892,11 @@ sub autotimerDelete { my $sth = $obj->{dbh}->prepare($sql); if(!$sth->execute(@timers)) { error sprintf("Can't execute query: %s.",$sth->errstr); - $console->err(sprintf gettext("Autotimer with ID '%s' does not exist in the database!"), join(',', @timers)); + $console->err(sprintf gettext("The autotimer '%s' does not exist in the database."), join(',', @timers)); return 0; } - $console->message(sprintf gettext("Autotimer %s is deleted."), join(',', @timers)); + $console->message(sprintf gettext("Autotimer %s deleted."), join(',', @timers)); debug sprintf('autotimer with id "%s" is deleted%s', join(',', @timers), ( $console->{USER} && $console->{USER}->{Name} ? sprintf(' from user: %s', $console->{USER}->{Name}) : "" ) @@ -908,10 +911,10 @@ sub autotimerDelete { # Usage: $obj->autotimerToogle($watcher, $console, $atid); # ------------------ sub autotimerToggle { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $timerid = shift || return $console->err(gettext("No ID for autotimer to toggle! Please use atoggle 'aid'")); + my $timerid = shift || return $console->err(gettext("No autotimer defined to toggle! Please use atoggle 'aid'!")); my @timers = reverse sort{ $a <=> $b } split(/[^0-9]/, $timerid); @@ -919,7 +922,7 @@ sub autotimerToggle { my $sth = $obj->{dbh}->prepare($sql); if(!$sth->execute(@timers)) { error sprintf("Can't execute query: %s.",$sth->errstr); - $console->err(sprintf(gettext("Autotimer with ID '%s' does not exist in the database!"),$timerid)); + $console->err(sprintf(gettext("The autotimer '%s' does not exist in the database."),$timerid)); return 0; } my $data = $sth->fetchall_hashref('Id'); @@ -928,7 +931,7 @@ sub autotimerToggle { for my $timer (@timers) { unless(exists $data->{$timer}) { - $console->err(sprintf(gettext("Autotimer with ID '%s' does not exist in the database!"), $timer)); + $console->err(sprintf(gettext("The autotimer '%s' does not exist in the database."), $timer)); next; } @@ -975,7 +978,7 @@ sub autotimerToggle { # Usage: $obj->list($watcher, $console, [$atid], [$params]); # ------------------ sub list { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $text = shift || ''; @@ -1046,7 +1049,7 @@ sub list { # ------------------ sub _eventsearch { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $a = shift || return error ('No Data from Autotimer!' ); my $timermod = shift || main::getModule('TIMERS') || return error ("Can't access modul TIMERS!"); @@ -1136,7 +1139,7 @@ WHERE # ------------------ sub _timerexists { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eventdata = shift || return error ('No Data from Autotimer!' ); my ($nexttime, $aidcomment) = @_; @@ -1168,7 +1171,7 @@ sub _timerexists { # ------------------ sub _timerexistsfuzzy { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eventdata = shift || return error ('No Data from Autotimer!' ); my ($nexttime, $aidcomment) = @_; @@ -1194,7 +1197,7 @@ sub _timerexistsfuzzy { # ------------------ sub _recordexists { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eventdata = shift || return error ('No Data from Autotimer!' ); my ($nexttime, $aidcomment) = @_; @@ -1216,7 +1219,7 @@ sub _recordexists { # ------------------ sub _chronicleexists { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eventdata = shift || return error ('No Data from Autotimer!' ); my ($nexttime, $aidcomment) = @_; @@ -1237,7 +1240,7 @@ sub _chronicleexists { # ------------------ sub _timerexiststitle { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eventdata = shift || return error ('No Data from Autotimer!' ); my ($nexttime, $aidcomment) = @_; @@ -1256,7 +1259,7 @@ sub _timerexiststitle { # ------------------ sub _insert { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return; if(ref $data eq 'HASH') { @@ -1285,7 +1288,7 @@ sub _insert { # Usage: my $text = $obj->_placeholder($epgdata, $autotimerdata); # ------------------ sub _placeholder { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $at = shift || return error ('No AtData!' ); @@ -1328,7 +1331,7 @@ sub _placeholder { # ------------------ sub suggest {# ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $search = shift; diff --git a/lib/XXV/MODULES/CHANNELS.pm b/lib/XXV/MODULES/CHANNELS.pm index e660dbe..5adeaa6 100644 --- a/lib/XXV/MODULES/CHANNELS.pm +++ b/lib/XXV/MODULES/CHANNELS.pm @@ -10,7 +10,7 @@ use File::stat; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'CHANNELS', Prereq => { @@ -23,7 +23,7 @@ sub module { Status => sub{ $obj->status(@_) }, Preferences => { file => { - description => gettext('Location of channels.conf on your system.'), + description => sprintf(gettext("Path of file '%s'"),'channels.conf'), default => '/var/lib/vdr/channels.conf', type => 'file', required => gettext('This is required!'), @@ -35,12 +35,12 @@ sub module { required => gettext('This is required!'), }, empty => { - description => gettext('Include channels with empty PID'), + description => gettext('Insert channels with blank PID'), default => 'n', type => 'confirm', }, filterCA => { - description => gettext('Filter channels, set all wanted CA(Common Access)'), + description => gettext('Filter channel list, set all wanted CA (Common Access)'), # 0 for FTA, 1-4 for DVB Device, 32001 for AnalogPlugin type => 'list', options => 'multi', @@ -49,7 +49,7 @@ sub module { my @knownCA; foreach my $CA (@{$obj->{knownCA}}) { my $desc; - if($CA eq '0') { $desc = gettext("Free to air"); } + if($CA eq '0') { $desc = gettext("Free-to-air"); } elsif($CA eq '1' or $CA eq '2' or $CA eq '3' @@ -69,7 +69,7 @@ sub module { }, }, stripCH => { - description => gettext("Clean channel names, only the 'long' part is visible."), + description => gettext("Cleans out channel names, only the 'long' part is visible."), # Format in vdr 1.2.6 (Format "" or "long"). it show also all parts # Format in vdr 1.3.10 (Format "short,long") # Format in vdr 1.3.12 (Format "short,long;provider") @@ -81,34 +81,34 @@ sub module { }, Commands => { cupdate => { - description => gettext('Read channels and write them into database'), + description => gettext('Read channels and write them to the database'), short => 'cu', callback => sub{ $obj->readData(@_) }, DenyClass => 'cedit', Level => 'user', }, clist => { - description => gettext("List Channels from database 'cname'"), + description => gettext("List channels from database 'cname'"), short => 'cl', callback => sub{ $obj->list(@_) }, Level => 'user', }, cnew => { - description => gettext("Create a new channel"), + description => gettext("Create new channel"), short => 'cne', callback => sub{ $obj->newChannel(@_) }, Level => 'user', DenyClass => 'cedit', }, cedit => { - description => gettext("Edit a channel 'cid'"), + description => gettext("Edits a channel 'cid'"), short => 'ced', callback => sub{ $obj->editChannel(@_) }, Level => 'user', DenyClass => 'cedit', }, cdelete => { - description => gettext("Delete one or more channels 'pos'"), + description => gettext("Deletes one or more channels 'pos'"), short => 'cdl', callback => sub{ $obj->deleteChannel(@_) }, Level => 'user', @@ -122,7 +122,7 @@ sub module { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $lastReportTime = shift || 0; @@ -134,7 +134,7 @@ sub status { my $groups = $obj->{dbh}->selectrow_arrayref($sql)->[0]; return { - message => sprintf(gettext('The system has %d saved Channels in %d Groups'), $gesamt, $groups), + message => sprintf(gettext('The system has saved %d channels from %d groups'), $gesamt, $groups), }; } @@ -188,7 +188,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0, panic("Session to database is'nt connected") unless($obj->{dbh}); @@ -246,7 +246,7 @@ sub _init { # ------------------ sub insert { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return; my $pos = shift || return; my $grp = shift || 0; @@ -323,7 +323,7 @@ sub insert { # ------------------ sub insertGrp { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $pos = shift || return; my $name = shift || 0; @@ -337,7 +337,7 @@ sub insertGrp { # ------------------ sub readData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $file = $obj->{file} || return 1, error ('No Channels File'); @@ -423,7 +423,7 @@ sub is_numeric { defined getnum($_[0]) } # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || ''; @@ -464,7 +464,7 @@ where # ------------------ sub NameToChannel { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $name = shift || return undef; my $sth = $obj->{dbh}->prepare('select Id from CHANNELS where UPPER(Name) = UPPER( ? )'); @@ -477,7 +477,7 @@ sub NameToChannel { # ------------------ sub PosToName { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $pos = shift || return undef; my $sth = $obj->{dbh}->prepare('select Name from CHANNELS where POS = ?'); @@ -490,7 +490,7 @@ sub PosToName { # ------------------ sub PosToChannel { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $pos = shift || return undef; my $sth = $obj->{dbh}->prepare('select Id from CHANNELS where POS = ?'); @@ -503,7 +503,7 @@ sub PosToChannel { # ------------------ sub ChannelGroupsArray { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $field = shift || return undef; my $where = shift || ''; $where = sprintf('WHERE %s', $where) if($where); @@ -516,7 +516,7 @@ sub ChannelGroupsArray { # ------------------ sub ChannelArray { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $field = shift || return undef; my $where = shift || ''; $where = sprintf('WHERE %s', $where) if($where); @@ -529,7 +529,7 @@ sub ChannelArray { # ------------------ sub ChannelIDArray { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $field = shift || return undef; my $where = shift || ''; $where = sprintf('WHERE %s', $where) if($where); @@ -542,7 +542,7 @@ sub ChannelIDArray { # ------------------ sub ChannelHash { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $field = shift || return undef; my $where = shift || ''; $where = sprintf('WHERE %s', $where) if($where); @@ -555,7 +555,7 @@ sub ChannelHash { # ------------------ sub ChannelToName { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return undef; my $sth = $obj->{dbh}->prepare('select Name from CHANNELS where Id = ?'); @@ -568,7 +568,7 @@ sub ChannelToName { # ------------------ sub ChannelToPos { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return undef; my $sth = $obj->{dbh}->prepare('select POS from CHANNELS where Id = ?'); @@ -582,7 +582,7 @@ sub ChannelToPos { # ------------------ sub getChannelType { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return undef; my $pos = $obj->ChannelToPos($id); if($pos and $pos >= 1) @@ -604,7 +604,7 @@ sub getChannelType { # ------------------ sub _LastChannel { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sql = sprintf('select * from CHANNELS order by POS desc limit 1'); my $erg = $obj->{dbh}->selectrow_hashref($sql); return $erg; @@ -613,7 +613,7 @@ sub _LastChannel { # ------------------ sub newChannel { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -625,7 +625,7 @@ sub newChannel { # ------------------ sub editChannel { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $cid = shift || 0; # If channelid then edit channel @@ -661,7 +661,7 @@ sub editChannel { if(int($value) > 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, } ]; @@ -692,7 +692,7 @@ sub editChannel { if(int($value) > 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -712,7 +712,7 @@ sub editChannel { 'Parameters' => { typ => 'string', def => $defaultData->{Parameters} || "", - msg => gettext("Various parameters, depends on signal source"), + msg => gettext("Various parameters, depending on signal source"), check => sub{ my $value = shift || return; if($value ne '') { @@ -731,7 +731,7 @@ sub editChannel { if(int($value) > 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -744,7 +744,7 @@ sub editChannel { if(int($value) >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -770,7 +770,7 @@ sub editChannel { if(int($value) >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -796,7 +796,7 @@ sub editChannel { if(int($value) >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -809,7 +809,7 @@ sub editChannel { if(int($value) >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -822,7 +822,7 @@ sub editChannel { if(int($value) >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -835,7 +835,7 @@ sub editChannel { if(int($value) >= 0) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -881,7 +881,7 @@ sub editChannel { # ------------------ sub saveChannel { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $data = shift || return error('No Data to Save!'); my $pos = shift || 0; @@ -923,10 +923,10 @@ sub saveChannel { # ------------------ sub deleteChannel { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; - my $channelid = shift || return $console->err(gettext("No channel to delete! Please use cdelete 'pos'")); + my $channelid = shift || return $console->err(gettext("No channel defined for deletion! Please use cdelete 'pos'!")); my $answer = shift || 0; my @channels = reverse sort{ $a <=> $b } split(/[^0-9]/, $channelid); @@ -939,7 +939,7 @@ sub deleteChannel { foreach my $pos (@channels) { unless(exists $data->{$pos}) { - $console->err(sprintf(gettext("Channel with number '%s' does not exist in database!"), $pos)); + $console->err(sprintf(gettext("Channel '%s' does not exist in the database!"), $pos)); next; } @@ -948,7 +948,7 @@ sub deleteChannel { my $confirm = $console->confirm({ typ => 'confirm', def => 'y', - msg => gettext('Are you sure to delete this channel?'), + msg => gettext('Do you want to delete this channel?'), }, $answer); next if(! $answer eq 'y'); } @@ -973,7 +973,7 @@ sub deleteChannel { $console->redirect({url => $console->{browser}->{Referer}, wait => 1}) if(ref $console and $console->typ eq 'HTML'); } else { - $console->err(gettext("No channel to delete!")); + $console->err(gettext("No channel defined for deletion!")); } return 1; @@ -982,7 +982,7 @@ sub deleteChannel { # ------------------ sub _brandNewChannels { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $oldmaximumpos = shift || return; my $sql = 'select * from CHANNELS where POS > ?'; @@ -1006,7 +1006,7 @@ sub _brandNewChannels { my $rm = main::getModule('REPORT'); $rm->news( - sprintf(gettext('Discover %d new channels!'), scalar keys %$erg), + sprintf(gettext('Found %d new channels!'), scalar keys %$erg), $text, 'clist', undef, diff --git a/lib/XXV/MODULES/CHRONICLE.pm b/lib/XXV/MODULES/CHRONICLE.pm index 790fce5..b5fb209 100644 --- a/lib/XXV/MODULES/CHRONICLE.pm +++ b/lib/XXV/MODULES/CHRONICLE.pm @@ -8,14 +8,14 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $args = { Name => 'CHRONICLE', Prereq => { # 'Perl::Module' => 'Description', }, - Description => gettext('This module store recordings at chronicle.'), + Description => gettext('This module saves recordings in a chronicle.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'Andreas Brachold', @@ -36,13 +36,13 @@ sub module { DenyClass => 'rlist', }, chrsearch => { - description => gettext("Search at chronicle for 'text'"), + description => gettext("Search chronicle for 'text'."), short => 'chrs', callback => sub{ $self->search(@_) }, DenyClass => 'rlist', }, chrdelete => { - description => gettext("Delete at chronicle with 'id'"), + description => gettext("Delete within chronicle with 'ID'"), short => 'chrd', callback => sub{ $self->delete(@_) }, DenyClass => 'redit', @@ -89,7 +89,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); if($self->{active} eq 'y') { return 0, panic("Session to database is'nt connected") @@ -131,7 +131,7 @@ sub _init { # ------------------ sub _insertData { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $sql = qq| INSERT IGNORE INTO CHRONICLE @@ -191,7 +191,7 @@ sub search { my $self = shift; my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $quest = shift || return $console->err(gettext("No 'text' to search! Please use chrsearch 'text'")); + my $quest = shift || return $console->err(gettext("No 'string' to search for! Please use chrsearch 'text'.")); $quest =~ s/\'/\./sg; $quest =~ s/\+/\\\\\+/sg; @@ -232,7 +232,7 @@ ORDER BY CHRONICLE.starttime # ------------------ sub delete { # ------------------ - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $items = shift || return $console->err(gettext("No ID to delete! Please use chrdelete 'id'")); diff --git a/lib/XXV/MODULES/CONFIG.pm b/lib/XXV/MODULES/CONFIG.pm index 036be29..f7f48b6 100644 --- a/lib/XXV/MODULES/CONFIG.pm +++ b/lib/XXV/MODULES/CONFIG.pm @@ -9,13 +9,13 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'CONFIG', Prereq => { # 'Perl::Module' => 'Description', }, - Description => gettext('This module edit, write and reconfigure the configuration.'), + Description => gettext('This module edits, writes and saves the configuration.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -23,12 +23,12 @@ sub module { Level => 'admin', Commands => { configedit => { - description => gettext("Edit configuration 'sector'"), + description => gettext("Edit configuration 'section'"), short => 'ce', callback => sub{ $obj->edit(@_) }, }, configwrite => { - description => gettext('Write configuration'), + description => gettext('Saves the configuration.'), short => 'cw', callback => sub{ $obj->write(@_) }, }, @@ -38,7 +38,7 @@ sub module { callback => sub{ $obj->get(@_) }, }, reconfigure => { - description => gettext('Reconfigure all Processes'), + description => gettext('Edit all processes'), short => 'cr', callback => sub{ $obj->reconfigure(@_) }, }, @@ -75,13 +75,13 @@ sub new { # ------------------ sub menu { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $sector = shift || 0; my $ret = {}; - $ret->{title} = gettext("Preferences for XXV"); + $ret->{title} = gettext("Settings for XXV"); $ret->{highlight} = $sector; my $mods = main::getModules; @@ -95,11 +95,11 @@ sub menu { }; } $ret->{links}->{'reconfigure'} = { - text => gettext("Reconfigure"), + text => gettext("Save configuration"), link => "?cmd=reconfigure", }; $ret->{links}->{'write'} = { - text => gettext("Write configuration"), + text => gettext("Saves the configuration."), link => "?cmd=configwrite", }; @@ -109,7 +109,7 @@ sub menu { # ------------------ sub edit { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $sector = shift || 0; @@ -122,12 +122,12 @@ sub edit { $sector = uc($sector) unless($sector eq 'General'); my $cfg = $obj->{config}->{$sector} - or return $console->err(sprintf(gettext("Sorry, but the section %s does not exist in configuration!"),$sector)); + or return $console->err(sprintf(gettext("Sorry, but section %s does not exist in the configuration!"),$sector)); my $mod = main::getModule($sector); my $prefs = $mod->{MOD}->{Preferences} - or return $console->err(sprintf(gettext("Sorry, but the 'Preferences' in Module: %s do not exist"),$sector)); + or return $console->err(sprintf(gettext("Sorry, but the settings in module: %s do not exist!"),$sector)); my $questions = []; foreach my $name (sort { lc($a) cmp lc($b) } keys(%{$prefs})) { @@ -138,7 +138,7 @@ sub edit { { typ => $prefs->{$name}->{type} || 'string', options => $prefs->{$name}->{options}, - msg => sprintf("%s:\n%s", ucfirst($name), ($prefs->{$name}->{description} || gettext('No Description'))), + msg => sprintf("%s:\n%s", ucfirst($name), ($prefs->{$name}->{description} || gettext('No description'))), def => $def, req => $prefs->{$name}->{required}, choices => $prefs->{$name}->{choices}, @@ -151,7 +151,7 @@ sub edit { $console->link({text => sprintf(gettext('%s manual'), $sector), url => "?cmd=doc&data=$sector"}) if($console->typ eq 'HTML'); - $cfg = $console->question(sprintf(gettext('Change %s configuration'), $sector), $questions, $data); + $cfg = $console->question(sprintf(gettext('Edit configuration %s'), $sector), $questions, $data); if(ref $cfg eq 'HASH') { $obj->{config}->{$sector} = $cfg; @@ -163,7 +163,7 @@ sub edit { ( $console->{USER} && $console->{USER}->{Name} ? sprintf(' from user: %s', $console->{USER}->{Name}) : "" ) ); - $console->message(sprintf(gettext("Sector: '%s' save .. please wait."), $sector)); + $console->message(sprintf(gettext("Section: '%s' saving ... please wait."), $sector)); $console->redirect({url => $console->{browser}->{Referer}, wait => 2}) if($console->typ eq 'HTML'); } @@ -172,7 +172,7 @@ sub edit { # ------------------ sub write { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; @@ -181,7 +181,7 @@ sub write { $obj->{config}->write( $configfile ) or return error( sprintf ("Can't written '%s': %s", $configfile , $! )); - $console->message(sprintf gettext("Configuration written in '%s'."), $configfile) + $console->message(sprintf gettext("Configuration written to '%s'."), $configfile) if(ref $console); $console->redirect({url => $console->{browser}->{Referer}, wait => 1}) @@ -191,19 +191,19 @@ sub write { # ------------------ sub get { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $modname = shift || 0; - return $console->err(gettext('I need a name of the module, in order to indicate the configuration!')) + return $console->err(gettext('Need a name of the module to display the configuration!')) unless($modname and ref $console); $modname = uc($modname) unless($modname eq 'General'); my $cfg = $obj->{config}->{$modname}; - $console->err(sprintf(gettext("Sorry, but the section %s does not exist in configuration!"),$modname)) + $console->err(sprintf(gettext("Sorry, but section %s does not exist in the configuration!"),$modname)) if(! $cfg and ref $console); if(ref $console) { @@ -216,7 +216,7 @@ sub get { # ------------------ sub reconfigure { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; @@ -249,7 +249,7 @@ sub reconfigure { } } else { - $console->err(sprintf(gettext("Strange, i can not find %s in %s"), $parameter, $moduleName)) + $console->err(sprintf(gettext("Cannot find %s in %s!"), $parameter, $moduleName)) if(ref $console); } } @@ -258,14 +258,14 @@ sub reconfigure { $obj->menu( $watcher, $console ) if(ref $console and $console->{TYP} eq 'HTML'); - $console->message(gettext('Reconfigure successfully')) + $console->message(gettext('Edit successful!')) if(ref $console); } # ------------------ sub realModNames { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $mods = main::getModules(); my @realModName; diff --git a/lib/XXV/MODULES/EPG.pm b/lib/XXV/MODULES/EPG.pm index e8ba1ef..5122577 100644 --- a/lib/XXV/MODULES/EPG.pm +++ b/lib/XXV/MODULES/EPG.pm @@ -10,14 +10,14 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'EPG', Prereq => { 'Date::Manip' => 'date manipulation routines', 'Time::Local' => 'efficiently compute time from local and GMT time ', }, - Description => gettext('This module reads new EPG Data and stores them in the database.'), + Description => gettext('This module reads new EPG data and saves it to the database.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -36,7 +36,7 @@ sub module { required => gettext('This is required!'), }, periods => { - description => gettext("Pre-defined list for the 'Running Now' view (comma separated list)"), + description => gettext("Preferred program times. (eg. 12:00, 18:00)"), default => '12:00,18:00,20:15,22:00', type => 'string', required => gettext('This is required!'), @@ -50,7 +50,7 @@ sub module { }, Commands => { search => { - description => gettext('Search in EPG Data'), + description => gettext('Search within EPG data'), short => 's', callback => sub{ $obj->search(@_) }, }, @@ -60,17 +60,17 @@ sub module { callback => sub{ $obj->program(@_) }, }, display => { - description => gettext("Show program event 'eventid'"), + description => gettext("Show program 'eventid'"), short => 'd', callback => sub{ $obj->display(@_) }, }, now => { - description => gettext('Display events is running now'), + description => gettext('Display events currently showing.'), short => 'n', callback => sub{ $obj->runningNow(@_) }, }, next => { - description => gettext('Display events is running next'), + description => gettext('Display events showing next.'), short => 'nx', callback => sub{ $obj->runningNext(@_) }, }, @@ -80,7 +80,7 @@ sub module { callback => sub{ $obj->schema(@_) }, }, erestart => { - description => gettext('Reload EPG data'), + description => gettext('Update EPG data.'), short => 'er', callback => sub{ my $watcher = shift || return error ('No Watcher!'); @@ -95,7 +95,7 @@ sub module { Level => 'admin', }, erun => { - description => gettext('Display the epg event running in vdr'), + description => gettext('Display the current program running in the VDR'), short => 'en', callback => sub{ $obj->NowOnChannel(@_) }, Level => 'user', @@ -122,7 +122,7 @@ sub module { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $lastReportTime = shift || 0; @@ -153,7 +153,7 @@ sub status { } return { - message => sprintf(gettext('EPG table contains %d entries and since the last login at %s %d new entries'), + message => sprintf(gettext('EPG table contains %d entries and since the last login on %s %d new entries.'), $total, scalar localtime($lastReportTime), $newEntrys), }; } @@ -195,7 +195,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0, panic("Session to database is'nt connected") unless($obj->{dbh}); @@ -260,7 +260,7 @@ sub _init { # ------------------ sub startReadEpgData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; @@ -308,7 +308,7 @@ sub startReadEpgData { # ------------------ sub updated { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cb = shift || 0; my $log = shift || 0; @@ -329,7 +329,7 @@ sub updated { # ------------------ sub compareEpgData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vdata = shift || return error('No data'); my $watcher = shift; my $console = shift; @@ -407,7 +407,7 @@ sub compareEpgData { # ------------------ sub moveOldEPGEntrys { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); # Copy and delete old EPG Entrys $obj->{dbh}->do('REPLACE INTO OLDEPG SELECT * FROM EPG WHERE (UNIX_TIMESTAMP(EPG.starttime) + EPG.duration) < UNIX_TIMESTAMP()'); @@ -417,7 +417,7 @@ sub moveOldEPGEntrys { # ------------------ sub deleteDoubleEPGEntrys { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); # Delete double EPG Entrys my $erg = $obj->{dbh}->selectall_arrayref('SELECT eventid FROM EPG GROUP BY starttime, channel_id having count(*) > 1'); @@ -459,7 +459,7 @@ sub replace { # ------------------ sub encodeEpgId { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $epgid = shift || return error('No EPG Id!'); my $channel = shift || return error('No Channel!'); @@ -475,7 +475,7 @@ sub encodeEpgId { # ------------------ sub readEpgData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vdata = shift || return error('Problem to read Data!'); my $count = shift || 0; my $dataHash = {}; @@ -504,7 +504,7 @@ sub readEpgData { $channel = $event->{channel}; my $eventid = $obj->encodeEpgId($event->{eventid}, $channel); - $event->{title} = gettext("No Title") + $event->{title} = gettext("No title") unless($event->{title}); $event->{description} = "" unless($event->{description}); @@ -574,7 +574,7 @@ sub readEpgData { # ------------------ sub search { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift; @@ -664,7 +664,7 @@ sub search { # ------------------ sub program { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $channel = shift || $obj->{dbh}->selectrow_arrayref("select POS from CHANNELS limit 1")->[0]; @@ -720,10 +720,10 @@ order by # ------------------ sub display { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $eventid = shift || return $console->err(gettext("No EventID to display the Event Programm! Please use display 'eventid'")); + my $eventid = shift || return $console->err(gettext("No ID defined to display this program! Please use display 'eid'!")); my %f = ( 'Id' => umlaute(gettext('Service')), @@ -778,7 +778,7 @@ where if(scalar @{$erg} != 0 ); } - return $console->err(sprintf(gettext("No data for event '%d' present to display!"),$eventid)) + return $console->err(sprintf(gettext("No data to display for event '%d'!"),$eventid)) if(scalar @{$erg} == 0 ); unshift(@$erg, $fields); @@ -790,7 +790,7 @@ where # ------------------ sub runningNext { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift; @@ -878,7 +878,7 @@ ORDER BY # ------------------ sub runningNow { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $zeit = shift || time; @@ -954,7 +954,7 @@ ORDER BY # ------------------ sub NowOnChannel { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $channel = shift || $obj->_actualChannel || return error('No Channel!'); @@ -1002,7 +1002,7 @@ LIMIT 1 # ------------------ sub _actualChannel { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $erg = $obj->{svdrp}->command('chan'); my ($chanpos, $channame) = $erg->[1] =~ /^250\s+(\d+)\s+(\S+)/sig; @@ -1012,7 +1012,7 @@ sub _actualChannel { # ------------------ sub schema { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $zeit = shift || time; @@ -1100,7 +1100,7 @@ ORDER BY # ------------------ sub checkOnTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $eid = shift || return error('No Id'); @@ -1139,7 +1139,7 @@ WHERE # ------------------ sub getDescription {# ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $eid = shift || 0; @@ -1153,7 +1153,7 @@ sub getDescription {# ------------------ # ------------------ sub toFullHour { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $zeit = shift || return error ('No Time to convert!' ); my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = @@ -1166,7 +1166,7 @@ sub toFullHour { # ------------------ sub getId { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return error ('No Id!' ); my $fields = shift || '*'; @@ -1187,7 +1187,7 @@ sub getId { # ------------------ sub suggest {# ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $search = shift; diff --git a/lib/XXV/MODULES/EVENTS.pm b/lib/XXV/MODULES/EVENTS.pm index 7ea1de1..409592d 100644 --- a/lib/XXV/MODULES/EVENTS.pm +++ b/lib/XXV/MODULES/EVENTS.pm @@ -10,7 +10,7 @@ use File::Find; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'EVENTS', Prereq => { @@ -98,7 +98,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); main::after(sub{ $obj->{EVENTS} = $obj->searchForEvents(); @@ -115,7 +115,7 @@ sub _init { # ------------------ sub searchForEvents { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $mods = main::getModules(); my $events = {}; diff --git a/lib/XXV/MODULES/GRAB.pm b/lib/XXV/MODULES/GRAB.pm index ec2b25b..bb97e36 100644 --- a/lib/XXV/MODULES/GRAB.pm +++ b/lib/XXV/MODULES/GRAB.pm @@ -10,7 +10,7 @@ use File::Find; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'GRAB', Prereq => { @@ -51,7 +51,7 @@ sub module { type => 'integer', }, font => { - description => gettext('True type font to draw image text.'), + description => gettext('TrueType font to draw overlay text'), default => 'VeraIt.ttf', type => 'list', choices => $obj->findttf, @@ -129,7 +129,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); main::after(sub{ $obj->{svdrp} = main::getModule('SVDRP'); @@ -145,7 +145,7 @@ sub _init { # ------------------ sub grab { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $file = $obj->{file}; @@ -203,7 +203,7 @@ sub grab { # ------------------ sub display { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -220,7 +220,7 @@ sub display { # ------------------ sub makeImgText { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $file = shift || $obj->{file} || return error ('No File to display'); @@ -270,7 +270,7 @@ sub makeImgText { sub findttf # ------------------ { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $found; find({ wanted => sub{ if($File::Find::name =~ /\.ttf$/sig) { diff --git a/lib/XXV/MODULES/HTTPD.pm b/lib/XXV/MODULES/HTTPD.pm index b760f0c..3e5ab64 100644 --- a/lib/XXV/MODULES/HTTPD.pm +++ b/lib/XXV/MODULES/HTTPD.pm @@ -34,7 +34,7 @@ my $mime = { # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'HTTPD', Prereq => { @@ -58,7 +58,7 @@ sub module { required => gettext('This is required!'), }, Clients => { - description => gettext('Maximum number from simultaneous connections to the same time'), + description => gettext('Maximum number of simultaneous connections'), default => 5, type => 'integer', required => gettext('This is required!'), @@ -76,14 +76,14 @@ sub module { required => gettext('This is required!'), }, HtmlRoot => { - description => gettext('Used Skin'), + description => gettext('Skin used'), default => 'default', type => 'list', required => gettext('This is required!'), choices => sub{ return $obj->findskins }, }, StartPage => { - description => gettext('First page, which is to be seen when logon'), + description => gettext('Startup screen'), default => 'now', type => 'list', required => gettext('This is required!'), @@ -101,7 +101,7 @@ sub module { ], }, Debug => { - description => gettext('Dump additional debugging information, needed only for software development.'), + description => gettext('Dump additional debugging information, required only for software development.'), default => 'n', type => 'confirm', }, @@ -153,7 +153,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); # globals my $channels; @@ -201,7 +201,7 @@ sub init { sub communicator { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!' ); # read new line and report it @@ -259,7 +259,7 @@ sub communicator my $userMod = main::getModule('USER'); if(ref $userMod and $userMod->{active} eq 'y') { $console->{USER} = $userMod->check($handle, $data->{username}, $data->{password}); - $console->login(gettext('You have no permissions to this system!')) + $console->login(gettext('You are not authorized to use this system!')) unless(exists $console->{USER}->{Level}); } @@ -358,7 +358,7 @@ sub _readline { # ------------------ sub parseRequest { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $socket = shift || return error ('No Handle!' ); my $logout = shift || 0; @@ -419,7 +419,7 @@ sub parseRequest { # ------------------ sub handleInput { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $cgi = shift || return error ('No CGI Object'); @@ -464,20 +464,20 @@ sub handleInput { # ------------------ sub usage { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return main::getModule('TELNET')->usage(@_); } # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift || return; my $lastReportTime = shift || 0; return { - message => sprintf(gettext('Traffic on HTTPD Socket since %s: send: %d kbytes - received: %d kbytes - connects: %d'), + message => sprintf(gettext('Traffic on HTTPD Socket since %s: sent: %d kbytes - received: %d kbytes - connections: %d'), $obj->{STATUS}->{'starttime'}, convert($obj->{STATUS}->{'sendbytes'}), convert($obj->{STATUS}->{'readbytes'}), $obj->{STATUS}->{'connects'} ), }; @@ -487,7 +487,7 @@ sub status { sub findskins # ------------------ { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $found; find({ wanted => sub{ if(-d $File::Find::name @@ -520,7 +520,7 @@ sub unzip { my $file = shift || return error ('No File'); my $gz = gzopen($file, "rb") - or return $obj->msg(undef, sprintf(gettext("can't open file '%s' : %s"), $file, &gzerror )); + or return $obj->msg(undef, sprintf(gettext("Could not open file '%s'! : %s"), $file, &gzerror )); my $text; while($gz->gzread(my $buffer) > 0) { @@ -543,7 +543,7 @@ sub unzip { # getip:localhost sub checkvalue { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift || return error ('No Data!' ); diff --git a/lib/XXV/MODULES/INTERFACE.pm b/lib/XXV/MODULES/INTERFACE.pm index bd98fd6..0197239 100644 --- a/lib/XXV/MODULES/INTERFACE.pm +++ b/lib/XXV/MODULES/INTERFACE.pm @@ -11,7 +11,7 @@ use strict; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'INTERFACE', Prereq => { @@ -86,7 +86,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); if($obj->{active} eq 'y') { @@ -132,7 +132,7 @@ BEGIN { # Usage: my $data = $obj->getCommand($cmd, [$data, $params]); # ------------------ sub getCommand { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cmd = shift || return error ('No Command!' ); my $data = shift; @@ -143,7 +143,7 @@ BEGIN { # ------------------ sub handleInput { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $ucmd = shift || return error ('No Command'); my $udata = shift; @@ -171,7 +171,7 @@ BEGIN { # ------------------ sub usage { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return main::getModule('TELNET')->usage(@_); } diff --git a/lib/XXV/MODULES/LOGREAD.pm b/lib/XXV/MODULES/LOGREAD.pm index 409c69b..086dfde 100644 --- a/lib/XXV/MODULES/LOGREAD.pm +++ b/lib/XXV/MODULES/LOGREAD.pm @@ -12,13 +12,13 @@ $|++; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'LOGREAD', Prereq => { # 'Perl::Module' => 'Description', }, - Description => gettext('This module read the xxv log file and show it on console.'), + Description => gettext('This module reads the xxv log file and displays it on the console.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -38,13 +38,13 @@ sub module { required => gettext('This is required!'), }, rows => { - description => gettext('How much lines to display?'), + description => gettext('Lines to display'), default => '100', type => 'integer', required => gettext('This is required!'), }, syslog => { - description => gettext('Path of syslog file?'), + description => sprintf(gettext("Path of file '%s'"),'syslog'), default => '/var/log/syslog', type => 'file', required => gettext('This is required!'), @@ -92,7 +92,7 @@ sub new { # ------------------ sub logger { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $logname = shift || 'standard'; @@ -142,7 +142,7 @@ sub logger { my $logfile = $obj->{logfiles}->{$logname}->{logfile}; my @out = $obj->tail($logfile); - return $console->msg(undef, sprintf(gettext("Can't read log file %s!"), $logfile)) + return $console->msg(undef, sprintf(gettext("Could not read log file %s!"), $logfile)) unless(scalar @out); my $output = $obj->parseLogOutput($obj->{logfiles}->{$logname}, \@out); @@ -166,7 +166,7 @@ sub logger { # ------------------ sub tail { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $logfile = shift || return error ('No Logfile!' ); my $rows = shift || $obj->{rows}; @@ -179,7 +179,7 @@ sub tail { # ------------------ sub parseLogOutput { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $log = shift || return error ('No Prefs for logfile!' ); my $out = shift || return; @@ -203,7 +203,7 @@ sub parseLogOutput { # ------------------ sub parseData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $ret = shift || return error('No Referenced Array'); my $data = shift || 0; diff --git a/lib/XXV/MODULES/MEDIALIB.pm b/lib/XXV/MODULES/MEDIALIB.pm index c15cd84..e06da26 100644 --- a/lib/XXV/MODULES/MEDIALIB.pm +++ b/lib/XXV/MODULES/MEDIALIB.pm @@ -11,7 +11,7 @@ use File::Path; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'MEDIALIB', @@ -191,7 +191,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0, panic("Session to database is'nt connected") unless($obj->{dbh}); @@ -282,7 +282,7 @@ sub _init { # Usage: my $report = $obj->status([$watcher, $console]); # ------------------ sub status { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; @@ -303,7 +303,7 @@ FROM # ------------------ sub researchMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -334,7 +334,7 @@ sub researchMedia { # ------------------ sub createMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -346,7 +346,7 @@ sub createMedia { # ------------------ sub copyMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -373,7 +373,7 @@ WHERE # ------------------ sub importMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -456,7 +456,7 @@ sub importMedia { # ------------------ sub searchMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -543,7 +543,7 @@ ORDER BY title # ------------------ sub editMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -591,7 +591,7 @@ WHERE # ------------------ sub listMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || ""; @@ -651,7 +651,7 @@ ORDER BY title # ------------------ sub displayMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || ""; @@ -697,7 +697,7 @@ WHERE id = ? # ------------------ sub saveMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || ""; @@ -741,7 +741,7 @@ sub saveMedia { # ------------------ sub deleteMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || ""; @@ -781,7 +781,7 @@ sub deleteMedia { # ------------------ sub _saveActors { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $input = shift || ''; @@ -847,7 +847,7 @@ sub _saveActors { # ------------------ sub _saveGenres { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $videoid = shift || 0; my $genres = shift || []; #print Dumper( $videoid,$genres); @@ -875,7 +875,7 @@ sub _saveGenres { # ------------------ sub _saveMedia { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to Save!' ); if(ref $data eq 'HASH') { @@ -902,7 +902,7 @@ sub _saveMedia { # ------------------ sub _get_actors { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $input = shift || return ''; $input =~ s/\r\n/\n/g; @@ -946,7 +946,7 @@ WHERE # ------------------ sub _get_actors_as_hash_by_name { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $input = shift || return ''; $input =~ s/\r\n/\n/g; @@ -968,7 +968,7 @@ WHERE } sub _nocover { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $HTTPD = main::getModule('HTTPD'); my $nocover = sprintf('%s/%s/images/nocover', $HTTPD->{paths}->{HTMLDIR}, $HTTPD->{HtmlRoot}); @@ -992,7 +992,7 @@ sub _nocover { # ------------------ sub mediacache { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -1032,7 +1032,7 @@ sub mediacache { # ------------------ sub _get_mediatype_as_array { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return [ [1,'DVD'], @@ -1056,7 +1056,7 @@ sub _get_mediatype_as_array { # ------------------ sub _get_mediatype_as_hash { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $types = $obj->_get_mediatype_as_array; @@ -1073,7 +1073,7 @@ sub _get_mediatype_as_hash { # ------------------ sub _get_mediatype_namebyid { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return error ('No Mediatype ID given'); my $types = $obj->_get_mediatype_as_array; @@ -1087,7 +1087,7 @@ sub _get_mediatype_namebyid { # ------------------ sub _get_mediatype_idbyname { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $name = shift || return error ('No Mediatype Name given'); my $types = $obj->_get_mediatype_as_array; @@ -1101,7 +1101,7 @@ sub _get_mediatype_idbyname { # ------------------ sub _get_videogenres_byvideoid { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || 0; return [] unless $id; @@ -1128,7 +1128,7 @@ WHERE # ------------------ sub _get_videogenres_as_hash_by_id { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $genres = $obj->_get_videogenres_as_array; @@ -1145,7 +1145,7 @@ sub _get_videogenres_as_hash_by_id { # ------------------ sub _get_videogenres_as_hash_by_name { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $genres = $obj->_get_videogenres_as_array; @@ -1162,7 +1162,7 @@ sub _get_videogenres_as_hash_by_name { # ------------------ sub _get_videogenres_as_hash { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return { gettext('Action') => { @@ -1253,7 +1253,7 @@ sub _get_videogenres_as_hash { 'id' => 22, 'name' => 'Biography', }, - gettext('MLHistory') => { + gettext('History') => { 'id' => 23, 'name' => 'History', }, @@ -1272,7 +1272,7 @@ sub _get_videogenres_as_hash { # ------------------ sub _get_videogenres_as_array { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $hashref = $obj->_get_videogenres_as_hash; @@ -1286,7 +1286,7 @@ sub _get_videogenres_as_array { # ------------------ sub _getsearchsfields_as_array { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return [ [ 'title', gettext('Title') ], @@ -1306,7 +1306,7 @@ sub _getsearchsfields_as_array { # ------------------ sub _get_ranges_as_array { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return [ [ 'NUM', gettext('#') ], diff --git a/lib/XXV/MODULES/MUSIC.pm b/lib/XXV/MODULES/MUSIC.pm index e624486..031cfa6 100644 --- a/lib/XXV/MODULES/MUSIC.pm +++ b/lib/XXV/MODULES/MUSIC.pm @@ -13,7 +13,7 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'MUSIC', Prereq => { @@ -86,7 +86,7 @@ sub module { }, }, mugglei => { - description => gettext('Path to the binary from mugglei.'), + description => sprintf(gettext("Path of command '%s'"),'mugglei'), default => 'mugglei', type => 'file', }, @@ -189,7 +189,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 1 if($obj->{active} eq 'n'); @@ -318,7 +318,7 @@ sub _init { # ------------------ sub refresh { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; @@ -437,7 +437,7 @@ sub refresh { # ------------------ sub play { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift || return error ('No data'); @@ -452,7 +452,7 @@ sub play { # ------------------ sub playlist { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift || return error ('No data'); @@ -508,7 +508,7 @@ sub playlist { # ------------------ sub search { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $text = shift || return $console->err(gettext("No Text to search! Please use msearch 'text'")); @@ -519,7 +519,7 @@ sub search { # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $search = shift; @@ -685,7 +685,7 @@ sub list { # ------------------ sub handleInput { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Request!' ); my $cgi = CGI->new( $data->{Query} ); @@ -705,7 +705,7 @@ sub handleInput { # ------------------ sub field2path { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $field = shift || return error ('No Field!' ); my $data = shift || return error ('No ids!' ); my $pathfield; @@ -736,7 +736,7 @@ sub field2path { # ------------------ sub insert { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return 0; my @setdata; @@ -755,7 +755,7 @@ sub insert { # ------------------ sub stream { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $files = shift || return error ('No Files!' ); my $client = shift || return error ('No Client!' ); @@ -784,7 +784,7 @@ sub stream { # ------------------ sub parseRequest { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $hdl = shift || return error ('No Request!' ); my ($Req, $size) = getFromSocket($hdl); @@ -833,7 +833,7 @@ Unknown Request : # ------------------ sub GroupArray { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $field = shift || return undef; my $table = shift; my $idfield = shift; @@ -863,7 +863,7 @@ sub GroupArray { # ------------------ sub GenreArray { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $dbh = ($obj->{mdbh} ? $obj->{mdbh} : $obj->{dbh}); @@ -882,7 +882,7 @@ sub GenreArray { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $lastReportTime = shift || 0; @@ -915,7 +915,7 @@ sub status { # ------------------ sub getcovers { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $force = shift; @@ -1047,7 +1047,7 @@ sub getcovers { # ------------------ sub _findcoverfromcache { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $album = shift || return error ('No Album!' ); my $artist = shift || 0; my $typ = shift || 'absolute'; @@ -1074,7 +1074,7 @@ sub _findcoverfromcache { # ------------------ sub unique { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $text = shift || return ''; $text =~ s/[^0-9a-z]//sig; @@ -1084,7 +1084,7 @@ sub unique { # ------------------ sub ConnectToMuggleDB { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $dsn = shift || return 0; $dsn =~ s/^\s+//; @@ -1103,10 +1103,10 @@ sub ConnectToMuggleDB { if($mdbh) { $mdbh->{InactiveDestroy} = 1; $mdbh->{mysql_auto_reconnect} = 1; - debug('Successfully connect to: %s', $dsn); + debug('Connect to database: %s successful.', $dsn); return $mdbh; } else { - debug('No GiantDisc data base. Use standard music data base!'); + debug('GiantDisc database not found! Use standard music database!'); return 0; } } else { @@ -1117,7 +1117,7 @@ sub ConnectToMuggleDB { # ------------------ sub _findcover { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $file = shift || return error ('No file!' ); my $artist = shift; my $album = shift; @@ -1217,7 +1217,7 @@ sub _findcover { # ------------------ sub coverimage { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift || return error ('No data'); @@ -1288,7 +1288,7 @@ sub coverimage { # ------------------ sub getfile { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift || return error ('No data'); @@ -1326,7 +1326,7 @@ sub getfile { # ------------------ sub suggest {# ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $search = shift; diff --git a/lib/XXV/MODULES/RECORDS.pm b/lib/XXV/MODULES/RECORDS.pm index 809ccd7..977723d 100644 --- a/lib/XXV/MODULES/RECORDS.pm +++ b/lib/XXV/MODULES/RECORDS.pm @@ -16,14 +16,14 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'RECORDS', Prereq => { 'Time::Local' => 'efficiently compute time from local and GMT time ', }, - Description => gettext('This module managed recordings.'), + Description => gettext('This module manages recordings.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -31,7 +31,7 @@ sub module { Status => sub{ $obj->status(@_) }, Preferences => { commandfile => { - description => gettext('Location of reccmds.conf on your system.'), + description => sprintf(gettext("Path of file '%s'"),'reccmds.conf'), default => '/var/lib/vdr/reccmds.conf', type => 'file', required => gettext("This is required!"), @@ -49,22 +49,22 @@ sub module { required => gettext("This is required!"), }, videodir => { - description => gettext('Directory, where vdr recordings are stored.'), + description => gettext('Directory where recordings are stored'), default => '/var/lib/video', type => 'dir', required => gettext("This is required!"), }, previewbinary => { - description => gettext('Location of used program to produce preview images on your system.'), + description => gettext('Location of used program to produce thumbnails on your system.'), default => '/usr/bin/mplayer', type => 'file', required => gettext("This is required!"), }, previewcommand => { - description => gettext('Please choose the used program to produce preview images.'), + description => gettext('The program used to create thumbnails'), type => 'list', choices => [ - [gettext('Nothing'), 'Nothing'], + [gettext('None'), 'Nothing'], ['MPlayer1.0pre5', 'MPlayer1.0pre5'], ['MPlayer1.0pre6', 'MPlayer1.0pre6'], ['vdr2jpeg', 'vdr2jpeg'], @@ -73,12 +73,12 @@ sub module { required => gettext("This is required!"), }, previewcount => { - description => gettext('How many preview images produce?'), + description => gettext('Produce how many thumbnails'), default => 3, type => 'integer', }, previewlistthumbs => { - description => gettext('Display list records with thumbnails?'), + description => gettext('Display recording list with thumbnails?'), default => 'n', type => 'confirm', }, @@ -89,7 +89,7 @@ sub module { required => gettext('This is required!'), }, vfat => { - description => gettext('Set this if your filename encoded for vfat filesystems'), + description => gettext('VDR compiled for VFAT system (VFAT=1)'), default => 'y', type => 'confirm', }, @@ -102,7 +102,7 @@ sub module { DenyClass => 'rlist', }, rlist => { - description => gettext('List recordings'), + description => gettext('List of recordings'), short => 'rl', callback => sub{ $obj->list(@_) }, DenyClass => 'rlist', @@ -142,7 +142,7 @@ sub module { DenyClass => 'redit', }, rplay => { - description => gettext("Play recording 'rid' in vdr"), + description => gettext("Play recording 'rid' in the VDR."), short => 'rpv', callback => sub{ $obj->play(@_) }, Level => 'user', @@ -163,7 +163,7 @@ sub module { }, RegEvent => { 'deleteRecord' => { - Descr => gettext('Create event entries, if a record deleted.'), + Descr => gettext('Create event entries if a recording has been deleted.'), # You have this choices (harmless is default): # 'harmless', 'interesting', 'veryinteresting', 'important', 'veryimportant' @@ -249,7 +249,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); unless($obj->{dbh}) { panic("Session to database is'nt connected"); @@ -301,7 +301,7 @@ sub _init { $obj->readData(); $obj->{countReading} += 1; return 1; - }, "RECORDS: Store records in database ...", 20); + }, "RECORDS: Store recordings in database ...", 20); 1; } @@ -317,8 +317,8 @@ sub dot1000 { # ------------------ sub parseData { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $vdata = shift || return error('Problem to read Data!'); + my $obj = shift || return error('No object defined!'); + my $vdata = shift || return error('Problem to read data!'); my ($event, $hash, $id, $date, $hour, $minute, $state, $duration, $title, $day, $month, $year); my $dataHash = {}; @@ -381,7 +381,7 @@ sub scandirectory {# ------------------ # ------------------ sub readData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $waiter = shift; @@ -605,9 +605,9 @@ sub readData { if(ref $console) { $console->start() if(ref $waiter); if(scalar @{$err} == 0) { - $console->message(sprintf(gettext("Write %d recordings in database."), scalar @merkIds)); + $console->message(sprintf(gettext("Write %d recordings to the database."), scalar @merkIds)); } else { - unshift(@{$err}, sprintf(gettext("Write only %d recordings in database. Can\'t assign %d recordings."), scalar @merkIds , scalar @{$err})); + unshift(@{$err}, sprintf(gettext("Write %d recordings to the database. Cannot assign %d recordings."), scalar @merkIds , scalar @{$err})); lg join("\n", @$err); $console->err($err); } @@ -623,7 +623,7 @@ sub readData { # ------------------ sub updated { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cb = shift || 0; my $log = shift || 0; @@ -643,16 +643,16 @@ sub updated { # ------------------ sub refresh { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $waiter; if(ref $console) { if($console->typ eq 'HTML') { - $waiter = $console->wait(gettext("Get informations from recordings ..."),0,1000,'no'); + $waiter = $console->wait(gettext("Get information on recordings ..."),0,1000,'no'); } else { - $console->msg(gettext("Get informations from recordings ...")); + $console->msg(gettext("Get information on recordings ...")); } } @@ -662,7 +662,7 @@ sub refresh { # ------------------ sub insert { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $attr = shift || return 0; my $sth = $obj->{dbh}->prepare( @@ -691,7 +691,7 @@ sub insert { # ------------------ sub _updateEvent { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $event = shift || return undef; my $sth = $obj->{dbh}->prepare('UPDATE OLDEPG SET duration=?, starttime=FROM_UNIXTIME(?), addtime=FROM_UNIXTIME(?) where eventid=?'); @@ -715,10 +715,10 @@ sub _updateState {# ------------------ # ------------------ sub analyze { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $recattr = shift || return error ('No data to analyze!'); - lg sprintf('Analyze record "%s" from system', + lg sprintf('Analyze recording "%s"', $recattr->{title}, ); @@ -785,11 +785,11 @@ sub analyze { # ------------------ sub videoInfo { # ------------------ - my $obj = shift || return error ('No object!' ); + my $obj = shift || return error('No object defined!'); my $title = shift || return error ('No title!' ); my $starttime = shift || return error ('No title!' ); - lg sprintf('Get videoInfo from record "%s"', $title ); + lg sprintf('Get information from recording "%s"', $title ); my $month=sprintf("%02d",(localtime($starttime))[4]+1); my $day=sprintf("%02d",(localtime($starttime))[3]); @@ -899,7 +899,7 @@ sub videoInfo { # ------------------ sub videoPreview { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eventid = shift || return error ('No eventid!'); my $info = shift || return error ('No InfoHash!'); my $rebuild = shift || 0; @@ -1026,10 +1026,10 @@ sub _mark2frames{ # ------------------ sub SearchEpgId { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $start = shift || return error ('No Start!' ); my $dur = shift || return; - my $title = shift || return error ('No Title!' ); + my $title = shift || return error ('No title!' ); my $subtitle = shift; my $channel = shift; @@ -1078,11 +1078,11 @@ qq|SELECT * FROM OLDEPG WHERE # ------------------ sub createOldEventId { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return error ('No Id!' ); my $start = shift || return error ('No Starttime!' ); my $duration = shift || 0; - my $title = shift || return error ('No Title!' ); + my $title = shift || return error ('No title!' ); my $subtitle = shift; my $info = shift; @@ -1130,10 +1130,10 @@ sub createOldEventId { # ------------------ sub display { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $recordid = shift || return $console->err(gettext("No RecordID to display the recording! Please use rdisplay 'rid'")); + my $recordid = shift || return $console->err(gettext("No recording defined for display! Please use rdisplay 'rid'")); my $start = "e.starttime"; my $stopp = "FROM_UNIXTIME(UNIX_TIMESTAMP(e.starttime) + e.duration)"; @@ -1188,17 +1188,17 @@ where # ------------------ sub play { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $recordid = shift || return $console->err(gettext("No RecordID to play the recording! Please use rplay 'rid'")); + my $recordid = shift || return $console->err(gettext("No recording defined for playback! Please use rplay 'rid'.")); my $sql = qq|SELECT RecordID FROM RECORDS WHERE RecordMD5 = ?|; my $sth = $obj->{dbh}->prepare($sql); my $rec; if(!$sth->execute($recordid) || !($rec = $sth->fetchrow_hashref())) { - return $console->err(sprintf(gettext("RecordID '%s' does not exist in the database!"),$recordid)); + return $console->err(sprintf(gettext("Recording '%s' does not exist in the database!"),$recordid)); } my $cmd = sprintf('PLAY %d begin', $rec->{RecordID}); @@ -1208,17 +1208,17 @@ sub play { # ------------------ sub cut { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $recordid = shift || return $console->err(gettext("No RecordID to play the recording! Please use rplay 'rid'")); + my $recordid = shift || return $console->err(gettext("No recording defined for playback! Please use rplay 'rid'.")); my $sql = qq|SELECT RecordID FROM RECORDS WHERE RecordMD5 = ?|; my $sth = $obj->{dbh}->prepare($sql); my $rec; if(!$sth->execute($recordid) || !($rec = $sth->fetchrow_hashref())) { - return $console->err(sprintf(gettext("RecordID '%s' does not exist in the database!"),$recordid)); + return $console->err(sprintf(gettext("Recording '%s' does not exist in the database!"),$recordid)); } my $cmd = sprintf('EDIT %d', $rec->{RecordID}); @@ -1228,7 +1228,7 @@ sub cut { # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $text = shift || ""; @@ -1320,7 +1320,7 @@ GROUP BY # ------------------ sub search { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $text = shift || return $obj->list($watcher,$console); @@ -1389,10 +1389,10 @@ WHERE # ------------------ sub delete { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $record = shift || return $console->err(gettext("No Recording ID to delete! Please use rdelete 'id'")); + my $record = shift || return $console->err(gettext("No recording defined for deletion! Please use rdelete 'id'.")); my $answer = shift || 0; my @rcs = split(/_/, $record); @@ -1444,7 +1444,7 @@ sub delete { $obj->{svdrp}->queue_cmds(sprintf("delr %s",$r->{Id})); push(@todelete,$r->{Title}); # Remember title - # Remove recordings from request, if found in database + # Delete recordings from request, if found in database my $i = 0; for my $x (@recordings) { if ( $x eq $recording->[2] ) { # Remove known MD5 from user request @@ -1455,7 +1455,7 @@ sub delete { } } - $console->err(sprintf(gettext("Recording with number '%s' does not exist in the database!"), + $console->err(sprintf(gettext("Recording '%s' does not exist in the database!"), join('\',\'',@recordings))) if(ref $console and scalar @recordings); if($obj->{svdrp}->queue_cmds('COUNT')) { @@ -1504,10 +1504,10 @@ sub is_empty_dir { # ------------------ sub redit { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $recordid = shift || return $console->err(gettext("No RecordID to edit!")); + my $recordid = shift || return $console->err(gettext("No recording defined for editing!")); my $data = shift || 0; my $rec; @@ -1528,7 +1528,7 @@ WHERE |; my $sth = $obj->{dbh}->prepare($sql); $sth->execute($recordid) - or return $console->err(sprintf(gettext("RecordID '%s' does not exist in the database!"),$recordid)); + or return $console->err(sprintf(gettext("Recording '%s' does not exist in the database!"),$recordid)); $rec = $sth->fetchrow_hashref(); } @@ -1541,7 +1541,7 @@ WHERE if(-r $file) { my $text = load_file($file) - or $console->err(sprintf(gettext("Can't open file '%s' : %s"),$file,$!)); + or $console->err(sprintf(gettext("Cannot open file '%s' : %s!"),$file,$!)); foreach my $zeile (split(/[\r\n]/, $text)) { if($zeile =~ /^D\s+(.+)/s) { @@ -1580,28 +1580,28 @@ WHERE }, 'lifetime' => { typ => 'integer', - msg => gettext('Lifetime (0 .. 99)'), + msg => sprintf(gettext('Lifetime (%d ... %d)'),0,99), def => int($rec->{Lifetime}), check => sub{ my $value = shift || 0; if($value >= 0 and $value < 100) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, req => gettext("This is required!"), }, 'priority' => { typ => 'integer', - msg => gettext('Priority (0 .. 99)'), + msg => sprintf(gettext('Priority (%d ... %d)'),0,99), def => int($rec->{Prio}), check => sub{ my $value = shift || 0; if($value >= 0 and $value < 100) { return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, req => gettext("This is required!"), @@ -1641,7 +1641,7 @@ WHERE }, 'marks' => { param => {type => 'text'}, - msg => gettext("Marks"), + msg => gettext("Cut marks"), def => $marks || '', }, ]; @@ -1653,7 +1653,7 @@ WHERE my $dropEPGEntry = 0; my $ChangeRecordingData = 0; - debug sprintf('Record "%s" is changed%s', + debug sprintf('Recording "%s" has changed%s', $rec->{title}, ( $console->{USER} && $console->{USER}->{Name} ? sprintf(' from user: %s', $console->{USER}->{Name}) : "" ) ); @@ -1669,7 +1669,7 @@ WHERE $data->{summary} =~ s/\s+$//; # no trailing white space if(-r $file) { my $text = load_file($file) - or $console->err(sprintf(gettext("Can't open file '%s' : %s"),$file,$!)); + or $console->err(sprintf(gettext("Cannot open file '%s' : %s!"),$file,$!)); foreach my $zeile (split(/[\r\n]/, $text)) { $zeile =~ s/^\s+//; $zeile =~ s/\s+$//; @@ -1814,9 +1814,9 @@ WHERE my $waiter; if(ref $console) { if($console->typ eq 'HTML') { - $waiter = $console->wait(gettext('Recording is edited!'),0,1000,'no'); + $waiter = $console->wait(gettext('Recording edited!'),0,1000,'no'); }else { - $console->msg(gettext('Recording is edited!')); + $console->msg(gettext('Recording edited!')); } } $obj->readData($watcher,$console,$waiter); @@ -1832,7 +1832,7 @@ WHERE # Load Reccmds's sub _loadreccmds { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); unless($obj->{reccmds}) { $obj->{reccmds} = []; @@ -1849,7 +1849,7 @@ sub _loadreccmds { # ------------------ sub conv { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $data = shift || 0; @@ -1857,7 +1857,7 @@ sub conv { $obj->_loadreccmds; unless(scalar @{$obj->{reccmds}}) { - $console->err(gettext('No reccmds.conf on your System!')); + $console->err(gettext('No reccmds.conf on your system!')); return 1; } @@ -1869,10 +1869,10 @@ sub conv { } my ($cmdid, $recid) = split(/[\s_]/, $data); - my $cmd = (split(':', $obj->{reccmds}->[$cmdid-1]))[-1] || return $console->err(gettext("I can't find this CommandID")); - my $path = $obj->IdToPath($recid) || return $console->err(gettext("I can't find this RecordID")); + my $cmd = (split(':', $obj->{reccmds}->[$cmdid-1]))[-1] || return $console->err(gettext("Cannot find this command ID!")); + my $path = $obj->IdToPath($recid) || return $console->err(sprintf(gettext("Recording '%s' does not exist in the database!"),$recid)); - debug sprintf('Call command "%s" on record "%s"%s', + debug sprintf('Call command "%s" on recording "%s"%s', $cmd, $path, ( $console->{USER} && $console->{USER}->{Name} ? sprintf(' from user: %s', $console->{USER}->{Name}) : "" ) @@ -1881,12 +1881,12 @@ sub conv { my $call = "$cmd \"$path\""; my $output = `$call`; if( $? >> 8 > 0) { - $console->message(sprintf(gettext("Sorry! Call %s %s Error output: %s"), $cmd, $path, $output)); + $console->message(sprintf(gettext("Sorry! Call %s %s with error output: %s"), $cmd, $path, $output)); } else { - $console->message(sprintf(gettext("Call %s %s With output: %s"), $cmd, $path, $output)); + $console->message(sprintf(gettext("Call %s %s with output: %s"), $cmd, $path, $output)); } $console->link({ - text => gettext("Back to recordings list"), + text => gettext("Back to recording list"), url => "?cmd=rlist", }) if($console->typ eq 'HTML'); return 1; @@ -1895,7 +1895,7 @@ sub conv { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $lastReportTime = shift; @@ -1934,7 +1934,7 @@ ORDER BY # ------------------ sub IdToPath { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return undef; my $sth = $obj->{dbh}->prepare('select Path from RECORDS where RecordMD5 = ?'); @@ -1947,7 +1947,7 @@ sub IdToPath { # ------------------ sub getPreviewFiles { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $id = shift || return error ('No EventID!' ); # look for pictures @@ -1967,12 +1967,12 @@ sub getPreviewFiles { # ------------------ sub getGroupIds { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $recid = shift || return error ('No Record ID!' ); + my $obj = shift || return error('No object defined!'); + my $recid = shift || return error ('No recording defined!' ); my $epgid = getDataById($recid, 'RECORDS', 'RecordMD5'); if(!$epgid) { - error sprintf("Can't find Record for id %s!", $recid); + error sprintf("Can't find recording '%s'!", $recid); return; } my $epgdata = main::getModule('EPG')->getId($epgid->{eventid}); @@ -2025,8 +2025,8 @@ GROUP BY # ------------------ sub translate { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $title = shift || return error ('No Title in translate!'); + my $obj = shift || return error('No object defined!'); + my $title = shift || return error ('No title in translate!'); my $vfat = shift || $obj->{vfat}; if($vfat eq 'y') @@ -2051,7 +2051,7 @@ sub translate { # return value as integer sub _recordinglength { # ------------------ - my $obj = shift || return 0, error ('No Object!' ); + my $obj = shift || return 0, error('No object defined!'); my $path = shift || return 0, error ('Missing path from recording!' ); my $f = sprintf("%s/index.vdr", $path); @@ -2072,8 +2072,8 @@ sub _recordinglength { # ------------------ sub converttitle { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $title = shift || return error ('No Title in translate!'); + my $obj = shift || return error('No object defined!'); + my $title = shift || return error ('No title in translate!'); my $vfat = shift || $obj->{vfat}; if($vfat eq 'y') { @@ -2092,7 +2092,7 @@ sub converttitle { # ------------------ sub suggest {# ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $search = shift; diff --git a/lib/XXV/MODULES/REMOTE.pm b/lib/XXV/MODULES/REMOTE.pm index 3980e68..4eaba23 100644 --- a/lib/XXV/MODULES/REMOTE.pm +++ b/lib/XXV/MODULES/REMOTE.pm @@ -8,7 +8,7 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'REMOTE', Prereq => { @@ -34,7 +34,7 @@ sub module { required => gettext('This is required!'), }, commands => { - description => gettext('The path to the commands.conf'), + description => sprintf(gettext("Path of file '%s'"),'commands.conf'), default => '/var/lib/vdr/commands.conf', type => 'file', required => gettext('This is required!'), @@ -103,7 +103,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); main::after(sub{ $obj->{svdrp} = main::getModule('SVDRP'); @@ -122,13 +122,13 @@ sub init { # ------------------ sub parse { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0 unless (exists $obj->{commands}); if(! -r $obj->{commands}) { - error (sprintf("can't open file '%s' : %s",$obj->{commands},$!)); + error (sprintf("Could not open file '%s'! : %s",$obj->{commands},$!)); return 0; } @@ -151,7 +151,7 @@ sub parse { # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $cmds = $obj->parse(); @@ -167,7 +167,7 @@ sub list { # ------------------ sub command { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $command = shift || return error ('No Command!'); @@ -199,7 +199,7 @@ sub command { # ------------------ sub remote { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $command = shift; @@ -249,7 +249,7 @@ sub remote { # ------------------ sub switch { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $channel = shift || ''; diff --git a/lib/XXV/MODULES/REPORT.pm b/lib/XXV/MODULES/REPORT.pm index 6ab335c..55e57fa 100644 --- a/lib/XXV/MODULES/REPORT.pm +++ b/lib/XXV/MODULES/REPORT.pm @@ -10,7 +10,7 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'REPORT', Prereq => { @@ -114,7 +114,7 @@ sub new { 'important', ); return 1; - }, "Send restart Message to News channel ..."); + }, "Send restart message to news modules ..."); return $self; } @@ -122,7 +122,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); # Load the NEWS Plugins ... my @mods = glob($obj->{paths}->{NEWSMODS}.'/*.pm'); @@ -164,7 +164,7 @@ sub init { # ------------------ sub report { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $modulename = shift || ''; @@ -192,8 +192,8 @@ sub report { # ------------------ sub news { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $title = shift || return error ('No Title!' ); + my $obj = shift || return error('No object defined!'); + my $title = shift || return error ('No title!' ); my $text = shift || ''; my $cmd = shift || ''; my $id = shift || ''; @@ -237,7 +237,7 @@ sub news { # ------------------ sub request { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!' ); my $console = shift || return error ('No Console!' ); # To this time you can set on @@ -267,7 +267,7 @@ sub request { # ------------------ sub scala { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $typ = shift || return 10; $obj->{SCALA} = { diff --git a/lib/XXV/MODULES/ROBOT.pm b/lib/XXV/MODULES/ROBOT.pm index adfc295..733b1aa 100644 --- a/lib/XXV/MODULES/ROBOT.pm +++ b/lib/XXV/MODULES/ROBOT.pm @@ -10,7 +10,7 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'ROBOT', Prereq => { @@ -74,7 +74,7 @@ sub new { # ------------------ sub saveRobot { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $rname = shift || return error ('No robot Name!' ); my $rsub = shift || return error ('No Robot sub!' ); @@ -89,7 +89,7 @@ sub saveRobot { # ------------------ sub register { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $rname = shift || return error ('No robot Name!' ); my @args = @_; @@ -102,7 +102,7 @@ sub register { # ------------------ sub start { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $rname = shift || return error ('No Robot Name to start!'); my $watcher = shift; my $console = shift; @@ -143,7 +143,7 @@ sub start { # ------------------ sub clean { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $rname = shift || return error ('No Robot Name to clean!'); delete $obj->{jobs}->{$rname}; } @@ -152,7 +152,7 @@ sub clean { # ------------------ sub result { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $rname = shift || return error ('No robot Name!' ); return $obj->{result}->{$rname}; @@ -162,7 +162,7 @@ sub result { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $rname = shift; diff --git a/lib/XXV/MODULES/SHARE.pm b/lib/XXV/MODULES/SHARE.pm index 8ed918e..a052135 100644 --- a/lib/XXV/MODULES/SHARE.pm +++ b/lib/XXV/MODULES/SHARE.pm @@ -11,7 +11,7 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub AUTOLOAD { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cmd = (split('::', $AUTOLOAD))[-1]; return if($cmd eq 'DESTROY'); @@ -33,7 +33,7 @@ sub AUTOLOAD { # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'SHARE', Prereq => { @@ -118,7 +118,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{SessionId} = $obj->generateUniqueId unless($obj->{SessionId}); @@ -147,7 +147,7 @@ sub _init { # ------------------ sub getSoapData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return unless($obj->{SOAP} and $obj->{active} eq 'y'); lg 'Start interval share to get for Levels!'; $obj->{EventLevels} = $obj->getEventLevels(); @@ -159,7 +159,7 @@ sub getSoapData { # ------------------ sub generateUniqueId { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sessionId; for(my $i=0 ; $i< 16 ;) @@ -178,7 +178,7 @@ sub generateUniqueId { # ------------------ sub ConnectToSOAP { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sid = shift || $obj->{SessionId} || return error ('No SesionID!' ); my $uri = shift || $obj->{uri}; my $prx = shift || $obj->{proxy}; @@ -206,7 +206,7 @@ sub ConnectToSOAP { # ------------------ sub getEventLevel { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $eid = shift || return; return unless($obj->{EventLevels}); @@ -218,7 +218,7 @@ sub getEventLevel { # ------------------ sub TopTen { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $anzahl = shift || 10; @@ -259,7 +259,7 @@ sub TopTen { # ------------------ sub CmdToSoap { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $soap = shift || return error ('No SOAP!' ); my $cmd = shift || return error ('No Command!' ); my @arg = @_; diff --git a/lib/XXV/MODULES/STATUS.pm b/lib/XXV/MODULES/STATUS.pm index 9f2af34..a658059 100644 --- a/lib/XXV/MODULES/STATUS.pm +++ b/lib/XXV/MODULES/STATUS.pm @@ -12,13 +12,13 @@ use File::Find; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'STATUS', Prereq => { # 'Perl::Module' => 'Description', }, - Description => gettext('This module analyze your system and print the result.'), + Description => gettext('This module analyzes your system and displays the result.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -50,17 +50,17 @@ sub module { type => "file", }, interval => { - description => gettext('Interval in seconds to remember data'), + description => gettext('Interval in seconds to save data'), default => 60, type => "integer", }, history => { - description => gettext('How long to remember the historical data in hours'), + description => gettext('Save historical data, in hours'), default => 3, type => "integer", }, font => { - description => gettext('True type font to draw image text.'), + description => gettext('TrueType font to draw overlay text'), default => 'Vera.ttf', type => 'list', choices => $obj->findttf, @@ -99,17 +99,17 @@ sub module { callback => sub{ $obj->vitals(@_) }, }, network => { - description => gettext('Display the network informations'), + description => gettext('Displays network information'), short => 'sn', callback => sub{ $obj->network(@_) }, }, hardware => { - description => gettext('Display the hardware informations'), + description => gettext('Displays hardware information'), short => 'sh', callback => sub{ $obj->hardware(@_) }, }, memory => { - description => gettext('Display the memory informations'), + description => gettext('Displays memory information'), short => 'sm', callback => sub{ $obj->memory(@_) }, }, @@ -165,7 +165,7 @@ sub new { # ------------------ sub remember { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $longsteps = int(($obj->{history} * 60 * 60) / $obj->{interval}); @@ -192,7 +192,7 @@ sub remember { # ------------------ sub vitals { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -219,7 +219,7 @@ sub vitals { # ------------------ sub network { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -237,7 +237,7 @@ sub network { # ------------------ sub hardware { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -265,7 +265,7 @@ sub hardware { # ------------------ sub memory { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -283,7 +283,7 @@ sub memory { # ------------------ sub filesys { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -306,7 +306,7 @@ sub filesys { # Takes Celcius temperatures and converts to Farenheit sub tempConvert { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $celcius = $_[0]; my $result = (( $celcius * 9) / 5 ) + 32; @@ -322,7 +322,7 @@ sub tempConvert { # Get the system's name sub name { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $result = hostname(); return $result; @@ -332,7 +332,7 @@ sub name { # Get the system's IP address sub IP { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $result = inet_ntoa(scalar(gethostbyname($obj->name())) || scalar(gethostbyname('localhost'))); return $result; @@ -342,7 +342,7 @@ sub IP { # Get the system's kernel version sub kernel { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $result = load_file("/proc/sys/kernel/osrelease"); $result =~ s/\n//sig; @@ -353,7 +353,7 @@ sub kernel { # Get the system's uptime sub uptime { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $buffer = load_file('/proc/uptime'); @@ -414,7 +414,7 @@ sub uptime { # Get information on network devices in the system sub netDevs { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $clr = shift || 0; my $buffer = load_file('/proc/net/dev'); @@ -436,7 +436,7 @@ sub netDevs { # Get the current memory info sub meminfo { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $clr = shift || 0; my $ret = {}; @@ -457,7 +457,7 @@ sub meminfo { # Get current cpu info sub CPU { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $buffer = load_file('/proc/cpuinfo'); @@ -492,7 +492,7 @@ sub CPU { # Get CPU usage info and return a percentage sub util { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); open(STAT, "/proc/stat") or return error "Can't open /proc/stat\n"; my $buffer = <STAT>; @@ -532,7 +532,7 @@ sub util { # Get the number of current users logged in sub users { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $result = `$obj->{whoBinary} | $obj->{wcBinary} -l` or return error "Can't execute $obj->{whoBinary} or $obj->{wcBinary}\n"; @@ -544,7 +544,7 @@ sub users { # Get the list of PCI devices sub pci { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0 if(! -r "/proc/pci"); @@ -562,7 +562,7 @@ sub pci { # Get the list of IDE devices sub ide { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my @ideModelList; my @ideCapacityList; @@ -598,7 +598,7 @@ sub ide { # Get the list of SCSI devices sub scsi { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $ret = [[qw/Device Vendor Model Type/]]; my $file = "/proc/scsi/scsi"; @@ -658,7 +658,7 @@ sub scsi { # Get the current load averages sub load { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $clr = shift || 0; my $buffer = load_file("/proc/loadavg"); @@ -679,7 +679,7 @@ sub load { # Get the status of currently mounted filesystems sub mounts{ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $clr = shift || 0; my $df = `$obj->{dfBinary} -TP -x cdfs -x iso9660 -x udf` @@ -705,7 +705,7 @@ sub mounts{ # ------------------ sub videoMounts { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $videodir = shift || return error ('No Video dir!'); my $mounts = $obj->mounts; @@ -725,7 +725,7 @@ sub videoMounts { sub findttf # ------------------ { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $found; find({ wanted => sub{ if($File::Find::name =~ /\.ttf$/sig) { @@ -746,7 +746,7 @@ sub findttf # ------------------ sub watchDog { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $mou = shift || return error ('No Data!' ); # Not all 15 seconds a panic message ;) diff --git a/lib/XXV/MODULES/STREAM.pm b/lib/XXV/MODULES/STREAM.pm index 5242a26..84b72d6 100644 --- a/lib/XXV/MODULES/STREAM.pm +++ b/lib/XXV/MODULES/STREAM.pm @@ -13,7 +13,7 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'STREAM', Prereq => { @@ -37,14 +37,14 @@ sub module { type => 'string', }, mimetyp => { - description => gettext('Used mime-typ to deliver video streams.'), + description => gettext('Used mime type to deliver video streams'), default => 'video/x-mpegurl', type => 'string', }, }, Commands => { playrecord => { - description => gettext("Play the record over samba or nfs."), + description => gettext("Play recordings via samba or NFS."), short => 'pre', callback => sub{ $obj->play_record(@_) }, DenyClass => 'stream', @@ -94,7 +94,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); 1; } @@ -103,7 +103,7 @@ sub init { # ------------------ sub live_stream { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $channel = shift || return $console->err(gettext("No ChannelID to Stream! Please use livestream 'cid'")); @@ -129,14 +129,14 @@ sub live_stream { $console->out($data, $obj->{mimetyp}, %{$arg} ); } else { - $console->err(gettext("Sorry, stream is'nt supported")); + $console->err(gettext("Sorry, this stream is not supported!")); } } # ------------------ sub play_record { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $recid = shift || return $console->err(gettext("No RecordID to Play! Please use rplay 'rid'")); @@ -174,7 +174,7 @@ sub play_record { $console->out($data, $obj->{mimetyp}, %{$arg} ); } else { - $console->err(gettext("Sorry, stream is'nt supported")); + $console->err(gettext("Sorry, this stream is not supported!")); } } 1; diff --git a/lib/XXV/MODULES/SVDRP.pm b/lib/XXV/MODULES/SVDRP.pm index 632d1bd..493583a 100644 --- a/lib/XXV/MODULES/SVDRP.pm +++ b/lib/XXV/MODULES/SVDRP.pm @@ -11,26 +11,26 @@ $|++; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'SVDRP', Prereq => { 'Net::Telnet' => 'Net::Telnet allows you to make client connections to a TCP port and do network I/O', }, - Description => gettext('This module a telnet client for sdvrp.'), + Description => gettext('This module serves as telnet client for sdvrp.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', LastAuthor => (split(/ /, '$Author$'))[1], Preferences => { VdrHost => { - description => gettext('Name of the host that runs vdr'), + description => gettext('Name of host that runs the VDR.'), default => 'localhost', type => 'host', required => gettext('This is required!'), }, VdrPort => { - description => gettext('SVDRP-port of the running vdr client'), + description => gettext('SVDRP port on the running VDR'), default => 2001, type => 'integer', required => gettext('This is required!'), @@ -98,7 +98,7 @@ sub new { # ------------------ sub queue_cmds { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cmd = shift || 'CALL'; if($cmd eq 'CALL') { @@ -115,7 +115,7 @@ sub queue_cmds { # ------------------ sub command { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cmd = shift; my $host = $obj->{VdrHost}; @@ -199,7 +199,7 @@ sub command { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return; @@ -211,10 +211,10 @@ sub status { # ------------------ sub scommand { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $text = shift || return $console->err(gettext("No Command! Please use scommand 'cmd'")); + my $text = shift || return $console->err(gettext("No command defined! Please use scommand 'cmd'.")); my $erg = $obj->command($text); $console->msg($erg, $obj->err); @@ -224,7 +224,7 @@ sub scommand { # ------------------ sub err { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{ERROR}; } diff --git a/lib/XXV/MODULES/TELNET.pm b/lib/XXV/MODULES/TELNET.pm index 8377634..7974109 100644 --- a/lib/XXV/MODULES/TELNET.pm +++ b/lib/XXV/MODULES/TELNET.pm @@ -10,7 +10,7 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'TELNET', Prereq => { @@ -30,7 +30,7 @@ sub module { required => gettext('This is required!'), }, Clients => { - description => gettext('Maximum number from simultaneous connections to the same time'), + description => gettext('Maximum number of simultaneous connections'), default => 5, type => 'integer', required => gettext('This is required!'), @@ -50,7 +50,7 @@ sub module { }, Commands => { help => { - description => gettext("This will display all commands or the helptext from the 'module name'"), + description => gettext("This will display all commands or description of module 'name'."), short => 'h', callback => sub{ return $obj->usage(@_); @@ -89,13 +89,13 @@ sub module { Level => 'admin' }, reload => { - description => gettext("This will reload all Modules."), + description => gettext("Restart all modules."), short => 'rel', callback => sub{ my ($w, $c, $l) = @_; $Module::Reload::Debug = 2; Module::Reload->check; - $c->message(gettext("Modules reloaded.")); + $c->message(gettext("Modules loaded.")); }, Level => 'admin' }, @@ -142,7 +142,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); # globals my $channels; @@ -249,7 +249,7 @@ sub init { # ------------------ sub usage { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $modulename = shift || 0; @@ -303,7 +303,7 @@ sub usage { # ------------------ sub handleInput { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $line = shift || return; diff --git a/lib/XXV/MODULES/TIMERS.pm b/lib/XXV/MODULES/TIMERS.pm index 1cd7db1..f3e59b8 100644 --- a/lib/XXV/MODULES/TIMERS.pm +++ b/lib/XXV/MODULES/TIMERS.pm @@ -9,13 +9,13 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'TIMERS', Prereq => { # 'Perl::Module' => 'Description', }, - Description => gettext('This module parse the timers.conf and save this in the database.'), + Description => gettext('This module reads timers and saves it to the database.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -29,17 +29,17 @@ sub module { required => gettext("This is required!"), }, prevminutes => { - description => gettext('Buffer time in minutes before the scheduled end of the recorded program.'), + description => gettext('Buffer time in minutes before the scheduled start of a recording'), default => 5, type => 'integer', }, afterminutes => { - description => gettext('Buffer time in minutes after the scheduled end of the recorded program.'), + description => gettext('Buffer time in minutes past the scheduled end of a recording'), default => 5, type => 'integer', }, Priority => { - description => gettext('Defining the priority of this timer and of recordings created by this timer.'), + description => gettext('Priority of a timer for recordings when creating a new timer'), default => 50, type => 'integer', }, @@ -49,22 +49,22 @@ sub module { type => 'integer', }, DVBCards => { - description => gettext('How much DVB cards in your system?'), + description => gettext('How much DVB cards exist on this system'), default => 1, type => 'integer', }, deactive => { - description => gettext('Delete inactive timers after his end time?'), + description => gettext('Delete inactive timers after end time'), default => 'n', type => 'confirm', }, usevpstime => { - description => gettext('Use VPS start time?'), + description => gettext('Use VPS start time'), default => 'n', type => 'confirm', }, adjust => { - description => gettext('Timers adjust, if EPG entry were changed?'), + description => gettext('Change timers if EPG entries change'), default => 'y', type => 'confirm', }, @@ -83,7 +83,7 @@ sub module { DenyClass => 'tlist', }, tupdate => { - description => gettext("Read timers and write into database"), + description => gettext("Read timers and write them to the database"), short => 'tu', callback => sub{ $obj->readData(@_)}, Level => 'user', @@ -125,7 +125,7 @@ sub module { }, RegEvent => { 'newTimerfromUser' => { - Descr => gettext('Create event entries, if a new timer created by user.'), + Descr => gettext('Create event entries if the user has created a new timer.'), # You have this choices (harmless is default): # 'harmless', 'interesting', 'veryinteresting', 'important', 'veryimportant' @@ -152,7 +152,7 @@ sub module { return if($timer->{AutotimerId}); my $desc = getDataById($timer->{eventid}, 'EPG', 'eventid') if($timer->{eventid}); my $title = sprintf(gettext("New timer found: %s"),$timer->{File}); - my $description = sprintf(gettext("At: %s to %s\nDescription: %s"), + my $description = sprintf(gettext("On: %s to %s\nDescription: %s"), $timer->{NextStartTime}, fmttime($timer->{Stop}), $desc && $desc->{description} ? $desc->{description} : '' @@ -181,7 +181,7 @@ sub module { }, 'deleteTimer' => { - Descr => gettext('Create event entries, if timer deleted by user.'), + Descr => gettext('Create event entries if the user has deleted a timer.'), Level => 'interesting', SearchForEvent => { Msg => 'delt', @@ -195,7 +195,7 @@ sub module { my $timer = getDataById($args->{TimerId}, 'TIMERS', 'Id'); my $title = sprintf(gettext("Timer deleted: %s"),$timer->{File}); my $desc = getDataById($timer->{eventid}, 'EPG', 'eventid') if($timer->{eventid}); - my $description = sprintf(gettext("At: %s to %s\nDescription: %s"), + my $description = sprintf(gettext("On: %s to %s\nDescription: %s"), $timer->{NextStartTime}, fmttime($timer->{Stop}), $desc && $desc->{description} ? $desc->{description} : '' @@ -218,7 +218,7 @@ sub module { ], }, 'toggleTimer' => { - Descr => gettext('Create event entries, if timer toggled by user.'), + Descr => gettext('Create event entries if the user has toggled a timer.'), Level => 'interesting', SearchForEvent => { Msg => 'modt', @@ -232,7 +232,7 @@ sub module { my $event = shift; my $timer = getDataById($args->{TimerId}, 'TIMERS', 'Id'); my $title = sprintf(gettext("Timer toggled: %s to %s"),$timer->{File},$args->{Type}); - my $description = sprintf(gettext("Description: %s\nAt: %s to %s"), + my $description = sprintf(gettext("Description: %s\nOn: %s to %s"), $timer->{Summary}, $timer->{NextStartTime}, fmttime($timer->{Stop}) @@ -260,7 +260,7 @@ sub module { ], }, 'updateTimer' => { - Descr => gettext('Create event entries, if timer updated.'), + Descr => gettext('Create event entries if a timer has been updated.'), Level => 'harmless', SearchForEvent => { Msg => 'Reread', @@ -299,7 +299,7 @@ sub module { # ------------------ sub status { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; my $lastReportTime = shift || 0; @@ -317,7 +317,7 @@ sub status { } return { - message => sprintf(gettext('%d Timers exists.'), $total), + message => sprintf(gettext('%d timer exists.'), $total), }; } @@ -358,7 +358,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0, panic("Session to database is'nt connected") unless($obj->{dbh}); @@ -423,7 +423,7 @@ sub _init { # ------------------ sub saveTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error('No Data to Save!'); my $timerid = shift || 0; @@ -473,7 +473,7 @@ sub saveTimer { # ------------------ sub newTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $epgid = shift || 0; @@ -499,7 +499,7 @@ WHERE eventid = ? |); $sth->execute($obj->{prevminutes} * 60, $obj->{prevminutes} * 60, $obj->{afterminutes} * 60, $epgid) - or return $console->err(sprintf(gettext("Event ID '%s' does not exist in the database!"),$epgid)); + or return $console->err(sprintf(gettext("Event '%s' does not exist in the database!"),$epgid)); $epg = $sth->fetchrow_hashref(); } if(not ref $epg) { @@ -536,7 +536,7 @@ WHERE # ------------------ sub editTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $timerid = shift || 0; # If timerid the edittimer @@ -563,7 +563,7 @@ WHERE Id = ? |); $sth->execute($timerid) - or return $console->err(sprintf(gettext("Timer ID '%s' does not exist in the database!"),$timerid)); + or return $console->err(sprintf(gettext("Timer '%s' does not exist in the database!"),$timerid)); $timerData = $sth->fetchrow_hashref(); } elsif (ref $data eq 'HASH') { $timerData = $data; @@ -583,18 +583,18 @@ WHERE 'Activ' => { typ => 'confirm', def => (defined $timerData->{Status} and ($timerData->{Status} & 1) ? 'y' : 'n'), - msg => gettext('Switch this timer on?'), + msg => gettext('Enable this timer'), }, 'VPS' => { typ => 'confirm', def => (defined $timerData->{Status} and ($timerData->{Status} & 4) ? 'y' : 'n'), - msg => gettext('VPS for this timer on?'), + msg => gettext('Enable VPS for this timer'), }, 'ChannelID' => { typ => 'list', def => $con ? $mod->ChannelToPos($timerData->{channel_id}) : $timerData->{channel_id}, choices => $con ? $mod->ChannelArray('Name') : $mod->ChannelIDArray('Name'), - msg => gettext('Which channel should recorded?'), + msg => gettext('Which channel should recorded'), req => gettext("This is required!"), check => sub{ my $value = shift || return; @@ -615,7 +615,7 @@ WHERE 'Day' => { typ => $con ? 'string' : 'date', def => $timerData->{Day}, - msg => gettext("Please enter a day (1 to 31) or the weekday in format 'MDMDFSS'."), + msg => gettext("Enter a day (1 to 31) or weekday in format 'MTWTFSS'"), req => gettext("This is required!"), check => sub{ my $value = shift || return; @@ -626,7 +626,7 @@ WHERE or $value =~ /^\S{7}$/) { # MTWTFSS return $value; } else { - return undef, gettext('No right day or corrupt format!'); + return undef, gettext('The day is incorrect or was in a wrong format!'); } }, }, @@ -635,17 +635,17 @@ WHERE def => sub{ return fmttime($timerData->{Start}); }, - msg => gettext("Starttime in format 'HH:MM'"), + msg => gettext("Start time in format 'HH:MM'"), check => sub{ my $value = shift; $value = fmttime($value) if($value =~ /^\d+$/sig); - return undef, gettext('No right time!') if($value !~ /^\d+:\d+$/sig); + return undef, gettext('The time is incorrect!') if($value !~ /^\d+:\d+$/sig); my @v = split(':', $value); $value = sprintf('%02d%02d',$v[0],$v[1]); if(int($value) < 2400 and int($value) >= 0) { return sprintf('%04d',$value); } else { - return undef, gettext('No right time!'); + return undef, gettext('The time is incorrect!'); } }, }, @@ -654,49 +654,49 @@ WHERE def => sub{ return fmttime($timerData->{Stop} || 0 ); }, - msg => gettext("Endtime in format 'HH:MM'"), + msg => gettext("End time in format 'HH:MM'"), check => sub{ my $value = shift; $value = fmttime($value) if($value =~ /^\d+$/sig); - return undef, gettext('No right time!') if($value !~ /^\d+:\d+$/sig); + return undef, gettext('The time is incorrect!') if($value !~ /^\d+:\d+$/sig); my @v = split(':', $value); $value = sprintf('%02d%02d',$v[0],$v[1]); if(int($value) < 2400 and int($value) >= 0) { return sprintf('%04d',$value); } else { - return undef, gettext('No right time!'); + return undef, gettext('The time is incorrect!'); } }, }, 'Priority' => { typ => 'integer', - msg => sprintf(gettext('Priority (0 .. %d)'),$console->{USER}->{MaxPriority} ? $console->{USER}->{MaxPriority} : 99 ), + msg => sprintf(gettext('Priority (%d ... %d)'),0,$console->{USER}->{MaxPriority} ? $console->{USER}->{MaxPriority} : 99 ), def => int($timerData->{Priority}), check => sub{ my $value = shift || 0; if($value =~ /^\d+$/sig and $value >= 0 and $value < 100) { if($console->{USER}->{MaxPriority} and $value > $console->{USER}->{MaxPriority}) { - return undef, sprintf(gettext('Sorry, but maximum priority is limited on %d!'), $console->{USER}->{MaxPriority}); + return undef, sprintf(gettext('Sorry, but the maximum priority is limited to %d!'), $console->{USER}->{MaxPriority}); } return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, 'Lifetime' => { typ => 'integer', - msg => sprintf(gettext('Lifetime (0 .. %d)'),$console->{USER}->{MaxLifeTime} ? $console->{USER}->{MaxLifeTime} : 99 ), + msg => sprintf(gettext('Lifetime (%d ... %d)'),0,$console->{USER}->{MaxLifeTime} ? $console->{USER}->{MaxLifeTime} : 99 ), def => int($timerData->{Lifetime}), check => sub{ my $value = shift || 0; if($value =~ /^\d+$/sig and $value >= 0 and $value < 100) { if($console->{USER}->{MaxLifeTime} and $value > $console->{USER}->{MaxLifeTime}) { - return undef, sprintf(gettext('Sorry, but maximum lifetime is limited on %d!'), $console->{USER}->{MaxLifeTime}); + return undef, sprintf(gettext('Sorry, but the maximum life time is limited to %d!'), $console->{USER}->{MaxLifeTime}); } return int($value); } else { - return undef, gettext('No right Value!'); + return undef, gettext('Value incorrect!'); } }, }, @@ -779,10 +779,10 @@ WHERE # ------------------ sub deleteTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; - my $timerid = shift || return $console->err(gettext("No Timer ID to delete! Please use tdelete 'tid'")); # If timerid the edittimer + my $timerid = shift || return $console->err(gettext("No timer defined for deletion! Please use tdelete 'tid'.")); # If timerid the edittimer my $answer = shift || 0; my @timers = reverse sort{ $a <=> $b } split(/[^0-9]/, $timerid); @@ -796,7 +796,7 @@ sub deleteTimer { my $mod = main::getModule('CHANNELS') or return; foreach my $tid (@timers) { unless(exists $data->{$tid}) { - $console->err(sprintf(gettext("Timer with number '%s' does not exist in the database!"), $tid)); + $console->err(sprintf(gettext("Timer '%s' does not exist in the database!"), $tid)); next; } @@ -843,10 +843,10 @@ sub deleteTimer { # ------------------ sub toggleTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $timerid = shift || return $console->err(gettext("No Timer ID to toggle! Please use ttoggle 'id'")); # If timerid the edittimer + my $timerid = shift || return $console->err(gettext("No timer defined to toggle! Please use ttoggle 'id'.")); # If timerid the edittimer my @timers = reverse sort{ $a <=> $b } split(/[^0-9]/, $timerid); @@ -860,7 +860,7 @@ sub toggleTimer { for my $timer (@timers) { unless(exists $data->{$timer}) { - $console->err(sprintf(gettext("Timer with number '%s' does not exist in the database!"), $timer)); + $console->err(sprintf(gettext("Timer '%s' does not exist in the database!"), $timer)); next; } @@ -914,7 +914,7 @@ sub toggleTimer { # ------------------ sub insert { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return; my $pos = shift || return; my $checked = shift || 0; @@ -971,7 +971,7 @@ sub insert { # ------------------ sub readData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift; my $console = shift; @@ -1025,7 +1025,7 @@ sub readData { event(sprintf('Reread %d timers and written to DB!', $c)); } - $console->message(sprintf(gettext("Write %d timers in database."), $c), {overlapping => $overlapping}) + $console->message(sprintf(gettext("%d timer written to database."), $c), {overlapping => $overlapping}) if(ref $console and $console->typ ne 'AJAX'); $console->redirect({url => $console->{browser}->{Referer}, wait => 1}) @@ -1039,7 +1039,7 @@ sub readData { # ------------------ sub updated { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cb = shift || 0; my $log = shift || 0; @@ -1058,7 +1058,7 @@ sub updated { # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $text = shift || ''; @@ -1073,11 +1073,11 @@ sub list { my %f = ( 'Id' => umlaute(gettext('Sv')), 'Status' => umlaute(gettext('Status')), - 'Prg' => umlaute(gettext('Prg')), + 'Day' => umlaute(gettext('Day')), 'Channel' => umlaute(gettext('Channel')), 'Start' => umlaute(gettext('Start')), 'Stop' => umlaute(gettext('Stop')), - 'File' => umlaute(gettext('File')), + 'Title' => umlaute(gettext('Title')), 'Priority' => umlaute(gettext('Priority')), ); @@ -1087,10 +1087,10 @@ SELECT t.Status as $f{'Status'}, c.Name as $f{'Channel'}, c.Pos as __Pos, - t.Day as $f{'Prg'}, + t.Day as $f{'Day'}, DATE_FORMAT(t.NextStartTime, '%H:%i') as $f{'Start'}, DATE_FORMAT(t.NextStopTime, '%H:%i') as $f{'Stop'}, - t.File as $f{'File'}, + t.File as $f{'Title'}, t.Priority as $f{'Priority'}, UNIX_TIMESTAMP(t.NextStartTime) as __Day, t.Collision as __Collision, @@ -1114,10 +1114,10 @@ SELECT t.Status as $f{'Status'}, c.Name as $f{'Channel'}, c.Pos as __Pos, - t.Day as $f{'Prg'}, + t.Day as $f{'Day'}, DATE_FORMAT(t.NextStartTime, '%H:%i') as $f{'Start'}, DATE_FORMAT(t.NextStopTime, '%H:%i') as $f{'Stop'}, - t.File as $f{'File'}, + t.File as $f{'Title'}, t.Priority as $f{'Priority'}, UNIX_TIMESTAMP(t.NextStartTime) as __Day, t.Collision as __Collision, @@ -1151,7 +1151,7 @@ ORDER BY # ------------------ sub getTimerById { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $tid = shift || return error ('No TimerId!' ); my $sql = qq| @@ -1179,7 +1179,7 @@ WHERE my $sth = $obj->{dbh}->prepare($sql); $sth->execute($tid) - or return error(sprintf("Timer ID '%s' does not exist in the database!",$tid)); + or return error(sprintf("Timer '%s' does not exist in the database!",$tid)); return $sth->fetchrow_hashref(); } @@ -1187,7 +1187,7 @@ WHERE # ------------------ sub getRunningTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $rowname = shift || 'Id'; my $sql = "select $rowname from TIMERS where NOW() between NextStartTime and NextStopTime AND (Status & 1)"; my $erg = $obj->{dbh}->selectall_hashref($sql, $rowname); @@ -1197,7 +1197,7 @@ sub getRunningTimer { # ------------------ sub getNewTimers { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $oldTimers = shift || return; my $ret = []; @@ -1212,7 +1212,7 @@ sub getNewTimers { # ------------------ sub getOldDeactivTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sql = "select Id from TIMERS where not (Status & 1) and UNIX_TIMESTAMP(NextStopTime) > UNIX_TIMESTAMP() + (60*60*24*28)"; my $erg = $obj->{dbh}->selectall_hashref($sql, 'Id'); @@ -1227,7 +1227,7 @@ sub getOldDeactivTimer { # ------------------ sub getCheckTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sql = qq| SELECT t.Id as Id, t.Status as Status,t.ChannelID as ChannelID, t.Priority as Priority, t.Lifetime as Lifetime, @@ -1301,7 +1301,7 @@ SELECT t.Id as Id, t.Status as Status,t.ChannelID as ChannelID, # ------------------ sub getEpgIds { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sql = "select Id, Status & 1 as Status, eventid from TIMERS where eventid > 0"; my $erg = $obj->{dbh}->selectall_hashref($sql, 'eventid'); return $erg; @@ -1310,7 +1310,7 @@ sub getEpgIds { # ------------------ sub getEpgDesc { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $tid = shift || return error ('No TimerId!' ); my $sql = qq| @@ -1324,7 +1324,7 @@ where my $sth = $obj->{dbh}->prepare($sql); $sth->execute($tid) - or return error(sprintf("Timer ID '%s' does not exist in the database!",$tid)); + or return error(sprintf("Timer '%s' does not exist in the database!",$tid)); my $erg = $sth->fetchrow_hashref(); return $erg ? $erg->{description} : ''; } @@ -1332,7 +1332,7 @@ where # ------------------ sub getOverlappingTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $sql = qq| select @@ -1366,7 +1366,7 @@ where TIMERS.ChannelID = CHANNELS.Id # ------------------ sub checkOverlapping { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $NextStartTime = $data->{NextStartTime}; @@ -1449,7 +1449,7 @@ ORDER BY # ------------------ sub getNextTimer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $erg = $obj->{svdrp}->command('NEXT abs'); my @eerg = grep(/^250/, @$erg); @@ -1475,8 +1475,8 @@ sub getNextTimer { my $reportmod = main::getModule('REPORT'); $reportmod->news( - sprintf(gettext("Timer %d with title '%s' is start to recording!"), $data->{Id}, $data->{File}), - sprintf(gettext("on channel: %s until %s"), $data->{Channel}, fmttime($data->{Stop})), + sprintf(gettext("Timer %d with title '%s' has started the recording!"), $data->{Id}, $data->{File}), + sprintf(gettext("on channel: %s to %s"), $data->{Channel}, fmttime($data->{Stop})), 'tedit', $data->{Id}, 'harmless' @@ -1491,7 +1491,7 @@ sub getNextTimer { # ------------------ sub _getNextEpgId { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $timer = shift || return error ('No Hash!' ); my $e; @@ -1549,7 +1549,7 @@ sub _getNextEpgId { # ------------------ sub getNextTime { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $dor = shift || return error ('No Day!' ); my $start = shift || return error ('No Starttime!' ); my $stop = shift || return error ('No Stoptime!' ); @@ -1631,7 +1631,7 @@ sub getNextTime { # Usage: $hash = $obj->getTimersByAutotimer([$aid, $aid, $aid, ...]); # ------------------ sub getTimersByAutotimer { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $aids = shift || return $obj->{AIDS}; $obj->{AIDS} = {}; @@ -1657,7 +1657,7 @@ sub getTimersByAutotimer { # Usage: $hash = $obj->getRootDirs([$count]); # ------------------ sub getRootDirs { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $count = shift || 1; my $sql = "select distinct SUBSTRING_INDEX(File,'~',$count) from TIMERS;"; my $erg = $obj->{dbh}->selectall_arrayref($sql); @@ -1687,7 +1687,7 @@ sub my_strftime { # ------------------ sub suggest {# ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $search = shift; diff --git a/lib/XXV/MODULES/USER.pm b/lib/XXV/MODULES/USER.pm index 8e51a33..8ab2f0a 100644 --- a/lib/XXV/MODULES/USER.pm +++ b/lib/XXV/MODULES/USER.pm @@ -11,7 +11,7 @@ use File::Path; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'USER', Prereq => { @@ -19,17 +19,17 @@ sub module { => 'Efficiently match IPv4 addresses against IPv4 ranges via regexp ', }, Description => -gettext("This module managed a Useradministration Interface. -for use you can set a Level to the hole Modul with -a parameter 'Level' in the main root or you can set -the same parameter in a function."), +gettext("This module manages the User administration. +You may set a level for the whole module with +the 'Level' parameter in the main module +or the same parameter is set for each function."), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', LastAuthor => (split(/ /, '$Author$'))[1], Preferences => { active => { - description => gettext('Switch the Userauthentification on or off'), + description => gettext('Enable user authentication'), default => 'y', type => 'confirm', }, @@ -41,7 +41,7 @@ the same parameter in a function."), my $value = shift || return; my @ips = split(/\s*,\s*/, $value); for (@ips) { - return undef, sprintf(gettext('Your IP number (%s) is wrong! You need a IP with range (xxx.xxx.xxx.xxx/xx)'), $_) + return undef, sprintf(gettext('Your IP number (%s) is wrong! You need an IP in range (xxx.xxx.xxx.xxx/xx)'), $_) unless ($_ =~ /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d+/); } return $value; @@ -55,7 +55,7 @@ the same parameter in a function."), my $value = shift || return; my @ips = split(/\s*,\s*/, $value); for (@ips) { - return undef, sprintf(gettext('Your IP number (%s) is wrong! You need a IP with range (xxx.xxx.xxx.xxx/xx)'), $_) + return undef, sprintf(gettext('Your IP number (%s) is wrong! You need an IP in range (xxx.xxx.xxx.xxx/xx)'), $_) unless ($_ =~ /\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\/\d+/); } return $value; @@ -70,25 +70,25 @@ the same parameter in a function."), }, Commands => { unew => { - description => gettext('Create a new account for user'), + description => gettext('Create new user account'), short => 'un', callback => sub{ $obj->create(@_) }, Level => 'admin', }, udelete => { - description => gettext("Delete a account of user 'uid'"), + description => gettext("Delete user account 'uid'"), short => 'ud', callback => sub{ $obj->delete(@_) }, Level => 'admin', }, uedit => { - description => gettext("Edit a account of user 'uid'"), + description => gettext("Edit user account 'uid'"), short => 'ue', callback => sub{ $obj->edit(@_) }, Level => 'admin', }, uprefs => { - description => gettext("Change the own preferences"), + description => gettext("Change preferences"), short => 'up', callback => sub{ $obj->userprefs(@_) }, Level => 'user', @@ -100,7 +100,7 @@ the same parameter in a function."), Level => 'admin', }, logout => { - description => gettext("Logout from the current Session"), + description => gettext("Log out from current session."), short => 'exit', callback => sub{ my $watcher = shift || return error ('No Watcher!'); @@ -184,7 +184,7 @@ sub new { # ------------------ sub _init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return 0, panic("Session to database is'nt connected") unless($obj->{dbh}); @@ -226,7 +226,7 @@ sub _init { # Usage: my $ok = $obj->create($watcher, $console, 0, {name => 'user', ...}); # ------------------ sub create { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -239,7 +239,7 @@ sub create { # ------------------ sub userprefs { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || $obj->{USER}->{Id}; @@ -249,7 +249,7 @@ sub userprefs { if($id and not ref $data) { my $sth = $obj->{dbh}->prepare('select * from USER where Id = ?'); $sth->execute($id) - or return $console->err(sprintf(gettext("Account for user with ID '%s' does not exist in the database!"),$id)); + or return $console->err(sprintf(gettext("User account '%s' does not exist in the database!"),$id)); $user = $sth->fetchrow_hashref(); } @@ -269,7 +269,7 @@ sub userprefs { # take the old password as default if($console->typ eq 'HTML') { if($value->[0] and $value->[0] ne $value->[1]) { - return undef, gettext("Field with 1st and 2nd password must be equal to confirm!"); + return undef, gettext("The fields with the 1st and the 2nd password must match!"); } else { return $value->[0]; } @@ -281,7 +281,7 @@ sub userprefs { }, 'UserPrefs' => { def => $user->{UserPrefs} || '', - msg => gettext("Personality preferences for this User: ModName::Param=value, "), + msg => gettext("Personal preferences for this user: ModName::Param=value, "), typ => 'string', check => sub{ my $value = shift || return; @@ -289,7 +289,7 @@ sub userprefs { my ($modname, $parameter, $value) = $pref =~ /(\S+)::(\S+)\=(.+)/sg; if(my $mod = main::getModule($modname)) { unless(exists $mod->{$parameter}) { - return undef, sprintf(gettext("The Parameter '%s' in Module '%s' doesn't exist!"),$parameter, $mod); + return undef, sprintf(gettext("The parameter '%s' in module '%s' does not exist!"),$parameter, $mod); } } } @@ -299,17 +299,17 @@ sub userprefs { ]; # Ask Questions - $data = $console->question(sprintf(gettext('Edit preferences of user: %s'), $obj->{USER}->{Name}), $questions, $data); + $data = $console->question(sprintf(gettext('Edit preferences: %s'), $obj->{USER}->{Name}), $questions, $data); if(ref $data eq 'HASH') { $obj->_insert($data); $obj->refreshUserSettings($data->{UserPrefs}, $user->{UserPrefs}); - $console->message(gettext('Account for user saved!')); + $console->message(gettext('User account saved!')); if($console->typ eq 'HTML') { $console->redirect({url => '?', parent => 'top', wait => 2}); - $console->message(gettext('Please wait ... refresh the interface!')); + $console->message(gettext('Please wait ... refreshing interface!')); } } return 1; @@ -322,7 +322,7 @@ sub userprefs { # Usage: my $ok = $obj->edit($watcher, $console, $id, [$data]); # ------------------ sub edit { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $id = shift || 0; @@ -332,7 +332,7 @@ sub edit { if($id and not ref $data) { my $sth = $obj->{dbh}->prepare('select * from USER where Id = ?'); $sth->execute($id) - or return $console->err(sprintf(gettext("Account for user with ID '%s' does not exist in the database!"),$id)); + or return $console->err(sprintf(gettext("User account '%s' does not exist in the database!"),$id)); $user = $sth->fetchrow_hashref(); # question erwartet ein Array @@ -352,7 +352,7 @@ sub edit { def => $user->{Id} || 0, }, 'Name' => { - msg => gettext("Name from this account"), + msg => gettext("Name of user account"), req => gettext('This is required!'), def => $user->{Name} || '', }, @@ -367,7 +367,7 @@ sub edit { # take the old password as default if($console->typ eq 'HTML') { if($value->[0] and $value->[0] ne $value->[1]) { - return undef, gettext("Field with 1st and 2nd password must be equal to confirm!"); + return undef, gettext("The fields with the 1st and the 2nd password must match!"); } else { return $value->[0]; } @@ -430,7 +430,7 @@ sub edit { my ($modname, $parameter, $value) = $pref =~ /(\S+)::(\S+)\=(.+)/sg; if(my $mod = main::getModule($modname)) { unless(exists $mod->{$parameter}) { - return undef, sprintf(gettext("The Parameter '%s' in Module '%s' doesn't exist!"),$parameter, $mod); + return undef, sprintf(gettext("The parameter '%s' in module '%s' does not exist!"),$parameter, $mod); } } } @@ -438,25 +438,25 @@ sub edit { }, }, 'MaxLifeTime' => { - msg => gettext("Maximally permitted value for lifetime on timers"), + msg => gettext("Maximum permitted value for lifetime with timers"), def => $user->{MaxLifeTime} || '0', type => 'integer', check => sub{ my $value = shift || return 0; unless(int($value) and int($value) > 0 and int($value) < 100) { - return undef, gettext("This value is not a integer or not between 0 and 100"); + return undef, gettext("This value is not an integer or not between 0 and 100"); } return $value; }, }, 'MaxPriority' => { - msg => gettext("Maximally permitted value for priority on timers"), + msg => gettext("Maximum permitted value for priority with timers"), def => $user->{MaxPriority} || '0', type => 'integer', check => sub{ my $value = shift || return 0; unless(int($value) and int($value) > 0 and int($value) < 100) { - return undef, gettext("This value is not a integer or not between 0 and 100"); + return undef, gettext("This value is not an integer or not between 0 and 100"); } return $value; }, @@ -464,8 +464,8 @@ sub edit { ]; # Ask Questions - $data = $console->question(($id ? gettext('Edit account of user') - : gettext('Create a new account for user')), $questions, $data); + $data = $console->question(($id ? gettext('Edit user account') + : gettext('Create new user account')), $questions, $data); if(ref $data eq 'HASH') { $obj->_insert($data); @@ -476,7 +476,7 @@ sub edit { ( $console->{USER} && $console->{USER}->{Name} ? sprintf(' from user: %s', $console->{USER}->{Name}) : "" ) ); - $console->message(gettext('Account for user saved!')); + $console->message(gettext('User account saved!')); $console->redirect({url => $console->{browser}->{Referer}, wait => 2}) if($console->typ eq 'HTML'); } @@ -489,15 +489,15 @@ sub edit { # Usage: my $ok = $obj->delete($watcher, $console, $id); # ------------------ sub delete { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); - my $id = shift || return $console->err(gettext("No ID for Account of user to delete! Please use udelete 'uid'")); + my $id = shift || return $console->err(gettext("No user account defined to delete! Please use udelete 'uid'.")); my $sth = $obj->{dbh}->prepare('delete from USER where Id = ?'); $sth->execute($id) - or return $console->err(sprintf(gettext("Account for user with ID '%s' does not exist in the database!"),$id)); - $console->message(sprintf gettext("Account of user %s is deleted."), $id); + or return $console->err(sprintf(gettext("User account '%s' does not exist in the database!"),$id)); + $console->message(sprintf gettext("User account %s deleted."), $id); debug sprintf('Delete user account "%s"%s', $id, @@ -513,7 +513,7 @@ sub delete { # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); @@ -550,7 +550,7 @@ from # Usage: my $ok = $obj->logout(); # ------------------ sub logout { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); lg sprintf('Logout called%s', $obj->{USER}->{Name} ? sprintf(" by user %s", $obj->{USER}->{Name}) : "" @@ -572,7 +572,7 @@ sub logout { # ------------------ sub _checkIp { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $handle = shift || return; my $ip = getip($handle); @@ -601,7 +601,7 @@ sub _checkIp { # Usage: my $userHash = $obj->check($handle); # ------------------ sub check { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $handle = shift || return; if($obj->_checkIp($handle)) { @@ -646,7 +646,7 @@ sub check { # ------------------ sub refreshUserSettings { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $newprefs = shift || ''; my $oldprefs = shift || ''; @@ -667,7 +667,7 @@ sub refreshUserSettings { # ------------------ sub setUserSettings { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $prefs = shift || return error ('No Settings??'); my $mode = shift || 'set'; @@ -690,7 +690,7 @@ sub setUserSettings { # ------------------ sub allowCommand { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $modCfg = shift || return error('No Moduleinformation'); my $cmdName = shift || return error('No Command name'); my $user = shift || return error('No User'); @@ -733,7 +733,7 @@ sub t_checkCommand { } # ------------------ sub checkCommand { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $console = shift || return error ('No Console' ); my $ucmd = shift || return error ('No Command' ); my $DontdumpViolation = shift || ''; @@ -759,7 +759,7 @@ sub checkCommand { $cmdname = $cmdName; # Check on active Modul if(exists $mods->{$modName}->{active} and $cfg->{$modCfg->{Name}}->{active} eq 'n') { - $err = sprintf(gettext("Sorry but the module %s is inactive! Switch this active in %s:Preferences:active = y"), + $err = sprintf(gettext("Sorry, but the module %s is inactive! Enable it with %s:Preferences:active = y"), $modCfg->{Name}, $modCfg->{Name}); $shorterr = 'noactive'; } @@ -767,7 +767,7 @@ sub checkCommand { if($obj->{active} eq 'y') { # Check Userlevel and Permissions unless($obj->allowCommand($modCfg, $cmdName, $console->{USER},$DontdumpViolation)) { - $err = gettext('You have no permissions on this command!'); + $err = gettext('You are not authorized for this function!'); $shorterr = 'noperm'; } } @@ -775,7 +775,7 @@ sub checkCommand { } } unless($ok) { - $err = sprintf(gettext("I don't understand the command '%s' \n"), $ucmd); + $err = sprintf(gettext("I do not understand the command '%s' \n"), $ucmd); $shorterr = 'noexists'; } @@ -796,7 +796,7 @@ sub t_checkCmdSyntax { } # ------------------ sub checkCmdSyntax { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $mods = main::getModules(); my $shorts = {}; @@ -826,7 +826,7 @@ sub t_getLevel { } # ------------------ sub getLevel { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $name = shift || return; # Level Table @@ -847,7 +847,7 @@ sub getLevel { # ------------------ sub _insert { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return; if(ref $data eq 'HASH') { @@ -900,7 +900,7 @@ sub _insert { # Usage: my $tmpdir = $obj->userTmp([username]); # ------------------ sub userTmp { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $user = ($obj->{active} eq 'y' ? ( shift || ($obj->{USER}->{Name}?$obj->{USER}->{Name}:"nobody") ) : "nobody" ); # /var/cache/xxv/temp/xpix/$PID diff --git a/lib/XXV/MODULES/VTX.pm b/lib/XXV/MODULES/VTX.pm index 6828126..fbf214a 100644 --- a/lib/XXV/MODULES/VTX.pm +++ b/lib/XXV/MODULES/VTX.pm @@ -9,7 +9,7 @@ use Locale::gettext; ################################################################################ # This module method must exist for XXV sub module { - my $self = shift || return error ('No Object!' ); + my $self = shift || return error('No object defined!'); my $args = { Name => 'VTX', Prereq => { diff --git a/lib/XXV/MODULES/WAPD.pm b/lib/XXV/MODULES/WAPD.pm index 3e139d5..95ca6bf 100644 --- a/lib/XXV/MODULES/WAPD.pm +++ b/lib/XXV/MODULES/WAPD.pm @@ -21,7 +21,7 @@ my $mime = { # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'WAPD', Prereq => { @@ -43,7 +43,7 @@ sub module { required => gettext('This is required!'), }, Clients => { - description => gettext('Maximum number from simultaneous connections to the same time'), + description => gettext('Maximum number of simultaneous connections'), default => 5, type => 'integer', required => gettext('This is required!'), @@ -61,14 +61,14 @@ sub module { required => gettext('This is required!'), }, WMLRoot => { - description => gettext('Used Skin'), + description => gettext('Skin used'), default => 'wml', type => 'list', required => gettext('This is required!'), choices => $obj->findskins, }, # StartPage => { -# description => gettext('First page, which is to be seen when logon'), +# description => gettext('Startup screen'), # default => 'now', # type => 'list', # required => gettext('This is required!'), @@ -127,7 +127,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); # globals my $channels; @@ -193,7 +193,7 @@ sub init { my $userMod = main::getModule('USER'); if(ref $userMod and $userMod->{active} eq 'y') { $console->{USER} = $userMod->check($handle, $data->{username}, $data->{password}); - $console->login(gettext('You have no permissions to this system!')) + $console->login(gettext('You are not authorized to use this system!')) unless(exists $console->{USER}->{Level}); } @@ -244,7 +244,7 @@ sub init { # ------------------ sub parseRequest { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $hdl = shift || return error ('No Handle!' ); my $logout = shift || 0; @@ -282,7 +282,7 @@ sub parseRequest { # ------------------ sub handleInput { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $watcher = shift || return error ('No Watcher!'); my $console = shift || return error ('No Console'); my $cgi = shift || return error ('No CGI Object'); @@ -326,7 +326,7 @@ sub handleInput { # ------------------ sub usage { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return main::getModule('TELNET')->usage(@_); } @@ -334,7 +334,7 @@ sub usage { sub findskins # ------------------ { - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $found; find({ wanted => sub{ if(-d $File::Find::name and -e $File::Find::name.'/wapd.tmpl' ) { diff --git a/lib/XXV/OUTPUT/Ajax.pm b/lib/XXV/OUTPUT/Ajax.pm index a3e96dc..772ca54 100644 --- a/lib/XXV/OUTPUT/Ajax.pm +++ b/lib/XXV/OUTPUT/Ajax.pm @@ -13,7 +13,7 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'Ajax', Prereq => { @@ -32,7 +32,7 @@ sub module { # ------------------ sub AUTOLOAD { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || {}; my $params = shift || 0; @@ -99,7 +99,7 @@ sub new { # ------------------ sub out { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || 0; my $para = shift || 0; my $name = shift || 'noName'; @@ -127,7 +127,7 @@ sub out { # ------------------ sub printout { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $nopack = shift || $obj->{nopack} || 0; @@ -153,7 +153,7 @@ sub printout { # ------------------ sub header { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $typ = shift || return error ('No Type!' ); my $arg = shift || {}; @@ -175,7 +175,7 @@ sub header { # ------------------ sub headerNoAuth { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $typ = shift || 'text/html'; $obj->{header} = 401; @@ -188,7 +188,7 @@ sub headerNoAuth { # ------------------ sub msg { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || 0; my $err = shift || 0; @@ -208,14 +208,14 @@ sub msg { # ------------------ sub typ { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{TYP}; } # ------------------ sub setCall { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $name = shift || return error ('No Name!' ); $obj->{call} = $name; @@ -225,7 +225,7 @@ sub setCall { # ------------------ sub browser { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{browser}; } diff --git a/lib/XXV/OUTPUT/Console.pm b/lib/XXV/OUTPUT/Console.pm index 0f59cc5..7d46545 100644 --- a/lib/XXV/OUTPUT/Console.pm +++ b/lib/XXV/OUTPUT/Console.pm @@ -17,7 +17,7 @@ use vars qw($AUTOLOAD); # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'Telnet', Prereq => { @@ -25,7 +25,7 @@ sub module { 'Text::ASCIITable' => 'Create a nice formatted table using ASCII characters.', 'Term::ReadLine::Perl' => 'a quick implementation of the minimal interface to Readline', }, - Description => gettext('This receive and send ASCII messages'), + Description => gettext('This receives and sends ASCII messages'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -37,14 +37,14 @@ sub module { # ------------------ sub AUTOLOAD { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || {}; my $params = shift || 0; my $name = (split('::', $AUTOLOAD))[-1]; return if($name eq 'DESTROY'); - $obj->message(gettext("Sorry, but this command is not available in this Interface!")); + $obj->message(gettext("Sorry, but this command is not available in this interface!")); } # ------------------ @@ -93,7 +93,7 @@ sub new { # ------------------ sub printout { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); $data =~ s/[^\r]\n/\r\n/sig; @@ -105,7 +105,7 @@ sub printout { # ------------------ sub message { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $t = Text::ASCIITable->new(); @@ -123,7 +123,7 @@ sub message { # ------------------ sub push { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); $obj->printout($data); @@ -131,7 +131,7 @@ sub push { # ------------------ sub msg { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $err = shift || return $obj->message($data); @@ -141,7 +141,7 @@ sub msg { # ------------------ sub err { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $t = Text::ASCIITable->new; @@ -159,13 +159,13 @@ sub err { # ------------------ sub menu { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $t = Text::ASCIITable->new; $t->setOptions( $obj->{TableDefaults} ); $t->setCols(gettext('Module'), - gettext('Short cut'), + gettext("Abbreviation"), gettext('Name'), gettext('Description')); @@ -183,11 +183,11 @@ sub menu { # ------------------ sub littlemenu { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $text = $data->{title}."\n"; - $text .= gettext("Please use command and one of the following sectors:\n"); + $text .= gettext("Please use the command and one of the following sectors:\n"); $text .= join(', ', sort keys %{$data->{links}}); $obj->message($text); @@ -196,7 +196,7 @@ sub littlemenu { # ------------------ sub login { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $questions = [ @@ -218,7 +218,7 @@ sub login { # ------------------ sub table { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); my $param = shift || {}; my $noPrint = shift || 0; @@ -279,7 +279,7 @@ sub table { # ------------------ sub question { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $title = shift || 0; my $questions = shift || return error ('No Data!' ); my $erg = shift || {}; @@ -302,16 +302,16 @@ sub question { # Check on directory if($data->{typ} eq 'dir' and $data->{required} and not -d $erg->{$name}) { - ($erg->{$name}, $error) = (undef, sprintf(gettext("Directory '%s' is doesn't exist!"), $erg->{$name})); + ($erg->{$name}, $error) = (undef, sprintf(gettext("Directory '%s' does not exist!"), $erg->{$name})); } # Check on file if($data->{typ} eq 'file' and $data->{required} and not -e $erg->{$name}) { - ($erg->{$name}, $error) = (undef, sprintf(gettext("File '%s' is doesn't exist!"), $erg->{$name})); + ($erg->{$name}, $error) = (undef, sprintf(gettext("File '%s' does not exist!"), $erg->{$name})); } if($error) { - $obj->err(sprintf(gettext("Error at field '%s' (%s) : %s"), $data->{msg}, $name, $error)); + $obj->err(sprintf(gettext("Error '%s' (%s) : %s!"), $data->{msg}, $name, $error)); last; } } @@ -339,7 +339,7 @@ sub question { # ------------------ sub list { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $t = $obj->{term}; my $error; @@ -389,7 +389,7 @@ sub list { # ------------------ sub string { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $t = $obj->{term}; my $error; @@ -430,35 +430,35 @@ sub string { # ------------------ sub file { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->string(@_); } # ------------------ sub dir { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->string(@_); } # ------------------ sub password { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->string(@_); } # ------------------ sub date { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->string(@_); } # ------------------ sub integer { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $t = $obj->{term}; my $error; @@ -495,7 +495,7 @@ sub integer { # ------------------ sub confirm { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $t = $obj->{term}; my $error; @@ -509,7 +509,7 @@ sub confirm { if($data->{def} and ! $answer); # Only yes or no ... - $error = gettext("Please answer with 'y'es or 'n'o: ") + $error = gettext("Please answer 'y'es or 'n'o: ") if($answer !~ /^[y|n]$/); # Required value ... @@ -533,7 +533,7 @@ sub confirm { # ------------------ sub hidden { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); return error('No <def> in hidden Variable!') @@ -544,16 +544,16 @@ sub hidden { # ------------------ sub image { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data to display'); - return $obj->message(gettext("Sorry, but i cannot display an image on this Interface.")); + return $obj->message(gettext("Sorry, cannot display images in this interface.")); } # ------------------ sub checkbox { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $t = $obj->{term}; my $error; @@ -586,7 +586,7 @@ sub checkbox { # ------------------ sub radio { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || return error ('No Data!' ); my $t = $obj->{term}; my $error; @@ -603,7 +603,7 @@ sub radio { if($data->{req} and not $answer); # only one of all ... - $error = sprintf(gettext("You can only use one of this items: %s"), join(',', @{$data->{choices}})) + $error = sprintf(gettext("You can only use one of these elements: %s"), join(',', @{$data->{choices}})) unless(grep( $answer eq $_, @{$data->{choices}})); @@ -624,7 +624,7 @@ sub radio { # ------------------ sub pod { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $modname = uc(shift) || return error ('No Modname!' ); $modname = ucfirst($modname) if($modname eq 'GENERAL'); @@ -651,7 +651,7 @@ sub pod { # ------------------ sub txtfile { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $filename = shift || return error ('No TxtFile to diplay!' ); my $param = shift || {}; @@ -668,7 +668,7 @@ sub txtfile { # ------------------ sub remote { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $text = qq! .-----------------------. @@ -699,7 +699,7 @@ sub remote { # ------------------ sub _myallowansi_cb { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $_ = shift; s/\33\[(\d+(;\d+)?)?[musfwhojBCDHRJK]//g; return length($_); @@ -708,7 +708,7 @@ sub _myallowansi_cb { # ------------------ sub _parseData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $fields = shift || return error ('No Fields!' ); my $data = shift || return error ('No Data!' ); diff --git a/lib/XXV/OUTPUT/Dump.pm b/lib/XXV/OUTPUT/Dump.pm index f82e86e..c7c4d35 100644 --- a/lib/XXV/OUTPUT/Dump.pm +++ b/lib/XXV/OUTPUT/Dump.pm @@ -9,12 +9,12 @@ use Tools; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'Dump', Prereq => { }, - Description => gettext('This receive and send Dump messages.'), + Description => gettext('This receives and sends dump messages.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -25,7 +25,7 @@ sub module { # ------------------ sub AUTOLOAD { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return if($AUTOLOAD =~ /DESTROY$/); dumper(\@_); @@ -56,7 +56,7 @@ sub new { # ------------------ sub typ { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{TYP}; } diff --git a/lib/XXV/OUTPUT/HTML/PUSH.pm b/lib/XXV/OUTPUT/HTML/PUSH.pm index 7c7d7df..79b05c7 100644 --- a/lib/XXV/OUTPUT/HTML/PUSH.pm +++ b/lib/XXV/OUTPUT/HTML/PUSH.pm @@ -49,7 +49,7 @@ sub new { # ------------------ sub start { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $out = shift || 0; $obj->{handle}->print($obj->{cgi}->multipart_init(-boundary=>'----here we go!')); $obj->print($out) if($out); @@ -58,7 +58,7 @@ sub start { # ------------------ sub print { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $msg = shift || return; my $type = shift || 'text/html'; @@ -70,7 +70,7 @@ sub print { # ------------------ sub follow_print { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $msg = shift || return; my $type = shift || 'text/html'; @@ -84,7 +84,7 @@ sub follow_print { # ------------------ sub stop { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{handle}->print($obj->{cgi}->multipart_end); $obj->{handle}->print($obj->{cgi}->header( -type => 'text/html', diff --git a/lib/XXV/OUTPUT/HTML/WAIT.pm b/lib/XXV/OUTPUT/HTML/WAIT.pm index 8ebd430..8987e38 100644 --- a/lib/XXV/OUTPUT/HTML/WAIT.pm +++ b/lib/XXV/OUTPUT/HTML/WAIT.pm @@ -75,7 +75,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{STEP} = 0; $obj->{pusher}->start(); @@ -85,7 +85,7 @@ sub init { # ------------------ sub next { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cur = shift || $obj->{MAX}; my $end = shift || 0; my $msg = shift || 0; @@ -130,7 +130,7 @@ sub next { # ------------------ sub end { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $msg = shift || 0; return $obj->next(undef, $obj->{MAX}, 1, $msg); @@ -140,28 +140,28 @@ sub end { # ------------------ sub endcallback { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{endcallback} = shift || return $obj->{endcallback}; } # ------------------ sub max { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{MAX} = shift || return $obj->{MAX}; } # ------------------ sub min { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{MIN} = shift || return $obj->{MIN}; } # ------------------ sub screen { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{SCREEN} = shift || return $obj->{SCREEN}; } diff --git a/lib/XXV/OUTPUT/Html.pm b/lib/XXV/OUTPUT/Html.pm index af2c6c4..efd36c7 100644 --- a/lib/XXV/OUTPUT/Html.pm +++ b/lib/XXV/OUTPUT/Html.pm @@ -19,13 +19,13 @@ $SIG{CHLD} = 'IGNORE'; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'Html', Prereq => { 'HTML::TextToHTML' => 'convert plain text file to HTML. ', }, - Description => gettext('This receive and send HTML messages.'), + Description => gettext('This receives and sends HTML messages.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -37,7 +37,7 @@ sub module { # ------------------ sub AUTOLOAD { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || {}; my $params = shift || 0; @@ -131,9 +131,9 @@ sub new { # ------------------ sub parseTemplate { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $name = shift || return error ('No Name!' ); - my $data = shift || return error ('No Data!' ); + my $obj = shift || return error('No object defined!'); + my $name = shift || return error('No name defined!'); + my $data = shift || return error('No data defined!'); my $params = shift || {}; my $output; @@ -147,7 +147,7 @@ sub parseTemplate { # ------------------ sub index { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{nopack} = 1; $obj->{call} = 'index'; my $params = {}; @@ -159,10 +159,10 @@ sub index { # ------------------ sub parseTemplateFile { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $name = shift || return error ('No Name!' ); - my $data = shift || return error ('No Data!' ); - my $params = shift || return error ('No params!' ); + my $obj = shift || return error('No object defined!'); + my $name = shift || return error ('No name defined!' ); + my $data = shift || return error ('No data defined!' ); + my $params = shift || return error ('No paramters defined!' ); my $call = shift || 'nothing'; $obj->parseData($data) @@ -273,8 +273,8 @@ sub parseTemplateFile { version => sub{ return main::getVersion }, loadfile => sub{ return load_file(@_) }, writefile => sub{ - my $filename = shift || return error('No Filename to write'); - my $data = shift || return error('Nothing data to write'); + my $filename = shift || return error('No filename defined!'); + my $data = shift || return error('No data defined!'); my $dir = $u->userTmp; @@ -308,7 +308,7 @@ sub parseTemplateFile { # ------------------ sub out { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $text = shift || 'no Text for Output'; my $type = shift || 'text/html'; my %args = @_; @@ -325,7 +325,7 @@ sub out { # ------------------ sub printout { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $nopack = shift || $obj->{nopack} || 0; if($obj->{output} && $obj->{handle}) { @@ -347,24 +347,10 @@ sub printout { } # ------------------ -sub getType { -# ------------------ - my $obj = shift || return error ('No Object!' ); - my $typ = shift || 'text/html'; - - my $typefile = sprintf('%s/%s', $obj->{htmdir}, 'GENERICTYP'); - if(-e $typefile and -r $typefile) { - $typ = load_file($typefile); - $typ =~ s/[\r|\n]//sig; - } - return $typ; -} - -# ------------------ sub header { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $typ = $obj->getType(shift) || return error ('No Type!' ); + my $obj = shift || return error('No object defined!'); + my $typ = shift || 'text/html'; my $arg = shift || {}; $arg->{'Content-encoding'} = 'gzip' @@ -387,10 +373,11 @@ sub header { # ------------------ sub statusmsg { # ------------------ - my $obj = shift || return error ('No Object!'); - my $state = shift || return error ('No Status!'); + my $obj = shift || return error('No object defined!'); + my $state = shift || return error('No state defined!'); my $msg = shift; my $title = shift; + my $typ = shift || 'text/html'; unless(defined $obj->{header}) { $obj->{nopack} = 1; @@ -421,12 +408,11 @@ sub statusmsg { $arg->{'WWW-Authenticate'} = "Basic realm=\"xxvd\"" if($state == 401); - $arg->{'expires'} = "now" - if($state != 304); + $arg->{'expires'} = (($state != 304) || (defined $obj->{nocache} && $obj->{nocache})) ? "now" : "+7d"; $obj->{header} = $state; $obj->{output_header} = $obj->{cgi}->header( - -type => 'text/html', + -type => $typ, -status => $status, %{$arg}, ); @@ -445,7 +431,7 @@ sub statusmsg { # Send HTTP Status 401 (Authorization Required) sub login { # ------------------ - my $obj = shift || return error ('No Object!'); + my $obj = shift || return error('No object defined!'); my $msg = shift || ''; $obj->statusmsg(401,$msg,gettext("Authorization required")); @@ -455,7 +441,7 @@ sub login { # Send HTTP Status 403 (Access Forbidden) sub status403 { # ------------------ - my $obj = shift || return error ('No Object!'); + my $obj = shift || return error('No object defined!'); my $msg = shift || ''; $obj->statusmsg(403,$msg,gettext("Forbidden")); @@ -466,22 +452,22 @@ sub status403 { # Send HTTP Status 404 (File not found) sub status404 { # ------------------ - my $obj = shift || return error ('No Object!'); - my $file = shift || return error ('No File!'); + my $obj = shift || return error('No object defined!'); + my $file = shift || return error('No file defined!'); my $why = shift || ""; $file =~ s/$obj->{htmdir}\///g; # Don't post html root, avoid spy out - $obj->statusmsg(404,sprintf(gettext("Can't open file '%s' : %s"),$file,$why), + $obj->statusmsg(404,sprintf(gettext("Cannot open file '%s' : %s!"),$file,$why), gettext("Not found")); } # ------------------ sub question { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $titel = shift || 'undef'; - my $questions = shift || return error ('No Data!' ); + my $questions = shift || return error ('No data defined!'); my $erg = shift || 0; my $q = $obj->{cgi}; @@ -507,12 +493,12 @@ sub question { # Check on directory if($data->{typ} eq 'dir' and $data->{required} and not -d $erg->{$name}) { - ($erg->{$name}, $error) = (undef, sprintf(gettext("Directory '%s' is doesn't exist!"), $erg->{$name})); + ($erg->{$name}, $error) = (undef, sprintf(gettext("Directory '%s' does not exist!"), $erg->{$name})); } # Check on file if($data->{typ} eq 'file' and $data->{required} and not -e $erg->{$name}) { - ($erg->{$name}, $error) = (undef, sprintf(gettext("File '%s' is doesn't exist!"), $erg->{$name})); + ($erg->{$name}, $error) = (undef, sprintf(gettext("File '%s' does not exist!"), $erg->{$name})); } # Check on password (is not set the take the old password) @@ -521,7 +507,7 @@ sub question { } if($error) { - $obj->err(sprintf(gettext("Error at field '%s' (%s) : %s"), $data->{msg}, $name, $error)); + $obj->err(sprintf(gettext("Error '%s' (%s) : %s!"), $data->{msg}, $name, $error)); last; } } @@ -558,7 +544,7 @@ sub question { # ------------------ sub wait { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $msg = shift || gettext("Please wait ..."); my $min = shift || 0; my $max = shift || 0; @@ -610,8 +596,8 @@ sub wait { # ------------------ sub datei { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $file = shift || return error ('No File!'); + my $obj = shift || return error('No object defined!'); + my $file = shift || return error('No file defined!'); my $typ = shift; my %args = (); @@ -624,12 +610,6 @@ sub datei { return $obj->status404($file,$!) if(!$blocks); - # header only if caching - $args{'ETag'} = sprintf('%x-%x-%x',$ino, $size, $mtime); - return $obj->statusmsg(304) - if($obj->{browser}->{'Match'} - && $args{'ETag'} eq $obj->{browser}->{'Match'}); - $typ = $obj->{mime}->{lc((split('\.', $file))[-1])} if(!$typ); $typ = "application/octet-stream" @@ -638,6 +618,12 @@ sub datei { $obj->{nopack} = 1 if($typ =~ /image\// || $typ =~ /video\//); + # header only if caching + $args{'ETag'} = sprintf('%x-%x-%x',$ino, $size, $mtime); + return $obj->statusmsg(304,undef,undef,$typ) + if($obj->{browser}->{'Match'} + && $args{'ETag'} eq $obj->{browser}->{'Match'}); + my(@MON)=qw/Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec/; my(@WDAY) = qw/Sun Mon Tue Wed Thu Fri Sat/; my($sec,$min,$hour,$mday,$mon,$year,$wday) = gmtime($mtime); @@ -684,7 +670,7 @@ sub datei { } while $r && $bytes > 0; close(FH); } else { - error sprintf("I can't open file '%s' : %s", $file,$!); + error sprintf("Could not open file '%s'! : %s", $file,$!); } $handle->close(); }; @@ -706,8 +692,8 @@ sub datei { # ------------------ sub image { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $file = shift || return error ('No File!'); + my $obj = shift || return error('No object defined!'); + my $file = shift || return error('No file defined!'); my $typ = shift; return $obj->datei($file,$typ); } @@ -715,8 +701,8 @@ sub image { # ------------------ sub pod { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $modname = uc(shift) || return error ('No Modname!' ); + my $obj = shift || return error('No object defined!'); + my $modname = uc(shift) || return error ('No modul defined!'); $modname = ucfirst($modname) if($modname eq 'GENERAL'); my $podfile = sprintf('%s/%s.pod', $obj->{paths}->{PODPATH}, $modname); @@ -738,7 +724,7 @@ sub pod { my $html = load_file($outfile); $html = $1 if($html =~ /\<body.*?\>(.+?)\<\/body\>/si); $obj->link({ - text => gettext("Back to configuration screen"), + text => gettext("Back to configuration page."), url => $obj->{browser}->{Referer}, }); @@ -748,8 +734,8 @@ sub pod { # ------------------ sub txtfile { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $filename = shift || return error ('No TxtFile to display!' ); + my $obj = shift || return error('No object defined!'); + my $filename = shift || return error ('No file defined!'); my $param = shift || {}; my $txtfile = sprintf('%s/%s.txt', $obj->{paths}->{DOCPATH}, $filename); @@ -782,15 +768,15 @@ sub txtfile { # ------------------ sub typ { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{TYP}; } # ------------------ sub setCall { # ------------------ - my $obj = shift || return error ('No Object!' ); - my $name = shift || return error ('No Name!' ); + my $obj = shift || return error('No object defined!'); + my $name = shift || return error ('No name defined!'); $obj->{call} = $name; return $obj->{call}; @@ -799,7 +785,7 @@ sub setCall { # ------------------ sub browser { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{browser}; } @@ -807,7 +793,7 @@ sub browser { # ------------------ sub msg { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || 0; my $err = shift || 0; @@ -822,7 +808,7 @@ sub msg { # ------------------ sub parseData { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $dta = shift || return ''; if(ref $dta eq 'HASH') { diff --git a/lib/XXV/OUTPUT/NEWS/JABBER.pm b/lib/XXV/OUTPUT/NEWS/JABBER.pm index 7a6206e..18e5602 100644 --- a/lib/XXV/OUTPUT/NEWS/JABBER.pm +++ b/lib/XXV/OUTPUT/NEWS/JABBER.pm @@ -14,7 +14,7 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'NEWS::JABBER', Prereq => { @@ -77,7 +77,7 @@ Then you must receive a message in your running jabber client. }, }, level => { - description => gettext('Minimum level of the messages which can be displayed (1 ... 100)'), + description => gettext('Minimum level of messages which can be displayed (1 ... 100)'), default => 1, type => 'integer', required => gettext('This is required!'), @@ -90,19 +90,19 @@ Then you must receive a message in your running jabber client. }, }, receiveUser => { - description => gettext('User to advise (as Jabberaccount to@jabber.server.org)'), + description => gettext('User to be notified (as Jabber account to@jabber.server.org)'), default => '', type => 'string', required => gettext('This is required!'), }, user => { - description => gettext('Jabberaccount to send message (from@jabber.server.org)'), + description => gettext('Jabber account to send message (from@jabber.server.org)'), default => '', type => 'string', required => gettext('This is required!'), }, passwd => { - description => gettext('Password from Jabberaccount'), + description => gettext('Password for Jabber account'), default => '', type => 'password', required => gettext('This is required!'), @@ -113,7 +113,7 @@ Then you must receive a message in your running jabber client. # If no password given the take the old password as default if($value->[0] and $value->[0] ne $value->[1]) { - return undef, gettext("Field with 1st and 2nd password must be equal to confirm!"); + return undef, gettext("The fields with the 1st and the 2nd password must match!"); } else { return $value->[0]; } @@ -167,7 +167,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $url = sprintf("http://%s:%s/", $obj->{host}, main::getModule('HTTPD')->{Port}); 1; @@ -176,7 +176,7 @@ sub init { # ------------------ sub jconnect { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $jcon = Net::XMPP::Client->new( debuglevel => 0, @@ -208,7 +208,7 @@ sub jconnect { # ------------------ sub jdisconnect { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $cnx = shift || 0; $cnx->Disconnect() @@ -221,7 +221,7 @@ sub jdisconnect { # ------------------ sub send { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No Vars!' ); return undef, lg('This function is deactivated!') @@ -244,7 +244,7 @@ sub send { # ------------------ sub read { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No News!' ); return $obj->send($vars); @@ -255,9 +255,9 @@ sub read { # ------------------ sub req { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); - return gettext('The Module NEWS::JABBER is not active!') + return gettext('The module NEWS::JABBER is not active!') if($obj->{active} ne 'y'); my $vars = { @@ -277,7 +277,7 @@ sub req { # ------------------ sub xmpp_check_result { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my ($txt,$res,$cnx)=@_; return error("Error '$txt': result undefined") diff --git a/lib/XXV/OUTPUT/NEWS/MAIL.pm b/lib/XXV/OUTPUT/NEWS/MAIL.pm index 93bd187..8ef872b 100644 --- a/lib/XXV/OUTPUT/NEWS/MAIL.pm +++ b/lib/XXV/OUTPUT/NEWS/MAIL.pm @@ -15,7 +15,7 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'NEWS::MAIL', Prereq => { @@ -41,7 +41,7 @@ sub module { }, }, level => { - description => gettext('Minimum level of the messages which can be displayed (1 ... 100)'), + description => gettext('Minimum level of messages which can be displayed (1 ... 100)'), default => 1, type => 'integer', required => gettext('This is required!'), @@ -68,24 +68,24 @@ sub module { }, }, address => { - description => gettext('One or more mail addresses for sending the news'), + description => gettext('One or more mail addresses for sending the messages'), default => 'unknown@example.com, everybody@example.com', type => 'string', required => gettext('This is required!'), }, from_address => { - description => gettext('Mail address to senders describe.'), + description => gettext('Mail address to describe the sender.'), default => 'xxv@vdr.de', type => 'string', }, smtp => { - description => gettext('Hostname from SMTP mail server'), + description => gettext('SMTP mail server host name'), default => main::getModule('STATUS')->name, type => 'host', required => gettext('This is required!'), }, susr => { - description => gettext('Username for mail server access'), + description => gettext('User name for mail server access'), default => 'xxv', type => 'string', }, @@ -100,7 +100,7 @@ sub module { # If no password given the take the old password as default if($value->[0] and $value->[0] ne $value->[1]) { - return undef, gettext("Field with 1st and 2nd password must be equal to confirm!"); + return undef, gettext("The fields with the 1st and the 2nd password must match!"); } else { return $value->[0]; } @@ -172,7 +172,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{INITE} = 1; $obj->{LastReportTime} = time; @@ -194,7 +194,7 @@ sub init { # ------------------ sub send { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return error('This function is deactivated!') if($obj->{active} ne 'y'); @@ -230,7 +230,7 @@ sub send { # ------------------ sub parseHeader { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $output = ''; my $vars = { @@ -249,7 +249,7 @@ sub parseHeader { # ------------------ sub parseFooter { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $output = ''; @@ -270,7 +270,7 @@ sub parseFooter { # ------------------ sub read { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No News!' ); my $output = ''; @@ -290,16 +290,16 @@ sub read { # ------------------ sub req { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $test = shift || 0; - return gettext('The Module NEWS::Mail is not active!') + return gettext('The module NEWS::Mail is not active!') if($obj->{active} ne 'y'); my $content = ''; if($test) { $obj->send; - $content .= gettext('A mail with the following content is send to your Mailaccount!'); + $content .= gettext('A mail with the following content has been sent to your mail account!'); $content .= "\n\n"; } diff --git a/lib/XXV/OUTPUT/NEWS/RSS.pm b/lib/XXV/OUTPUT/NEWS/RSS.pm index 43178d4..129452b 100644 --- a/lib/XXV/OUTPUT/NEWS/RSS.pm +++ b/lib/XXV/OUTPUT/NEWS/RSS.pm @@ -14,13 +14,13 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'NEWS::RSS', Prereq => { 'XML::RSS' => 'SMTP Protocol module to connect and send emails', }, - Description => gettext('This NEWS module generate an RSS Newsfeed for your rss reader.'), + Description => gettext('This NEWS module generates an RSS news feed for your RSS reader.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -40,7 +40,7 @@ sub module { }, }, level => { - description => gettext('Minimum level of the messages which can be displayed (1 ... 100)'), + description => gettext('Minimum level of messages which can be displayed (1 ... 100)'), default => 1, type => 'integer', required => gettext('This is required!'), @@ -102,7 +102,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); $obj->{INITE} = 1; 1; @@ -111,7 +111,7 @@ sub init { # ------------------ sub createRSS { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $ver = shift || 1; my $account = sprintf("%s@%s", $ENV{USER}, main::getModule('STATUS')->name); my $url = sprintf("http://%s:%s/", $obj->{host}, main::getModule('HTTPD')->{Port}); @@ -126,10 +126,10 @@ sub createRSS { $rss->channel( title => gettext("XXV RSS 1.0"), 'link' => $url, - description => gettext("Important messages from your vdr/xxv"), + description => gettext("Important messages from your VDR/XXV"), dc => { date => datum(time,'int'), - subject => gettext("XXV Messages"), + subject => gettext("XXV messages"), creator => $account, language => setlocale(POSIX::LC_MESSAGES), }, @@ -150,7 +150,7 @@ sub createRSS { $rss->channel( title => gettext("XXV RSS 2.0"), 'link' => $url, - description => gettext("Important messages from your vdr/xxv"), + description => gettext("Important messages from your VDR/XXV"), language => setlocale(POSIX::LC_MESSAGES), pubDate => datum(time, 'rss'), lastBuildDate => datum($lastbuild, 'rss'), @@ -166,7 +166,7 @@ sub createRSS { # ------------------ sub send { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No Vars!' ); ++$obj->{COUNT}; @@ -186,7 +186,7 @@ sub send { # ------------------ sub read { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No News!' ); return undef, lg('This function is deactivated!') @@ -205,10 +205,10 @@ sub read { # ------------------ sub req { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $params = shift || {}; - return gettext('The Module NEWS::RSS is not active!') + return gettext('The module NEWS::RSS is not active!') if($obj->{active} ne 'y'); my $rss = $obj->createRSS($params->{version}) diff --git a/lib/XXV/OUTPUT/NEWS/VDR.pm b/lib/XXV/OUTPUT/NEWS/VDR.pm index 9568e15..38ad12a 100644 --- a/lib/XXV/OUTPUT/NEWS/VDR.pm +++ b/lib/XXV/OUTPUT/NEWS/VDR.pm @@ -14,10 +14,10 @@ use Locale::gettext; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'NEWS::VDR', - Description => gettext('This NEWS module generate a messages for vdr interface.'), + Description => gettext('This NEWS module generates messages for the VDR interface.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -37,7 +37,7 @@ sub module { }, }, level => { - description => gettext('Minimum level of the messages which can be displayed (1 ... 100)'), + description => gettext('Minimum level of messages which can be displayed (1 ... 100)'), default => 1, type => 'integer', required => gettext('This is required!'), @@ -97,7 +97,7 @@ sub new { # ------------------ sub init { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $url = sprintf("http://%s:%s/", $obj->{host}, main::getModule('HTTPD')->{Port}); $obj->{INITE} = 1; @@ -109,7 +109,7 @@ sub init { # ------------------ sub send { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No Vars!' ); return undef, lg('This function is deactivated!') @@ -130,7 +130,7 @@ sub send { # ------------------ sub read { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $vars = shift || return error ('No News!' ); return $obj->send($vars); @@ -141,10 +141,10 @@ sub read { # ------------------ sub req { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $test = shift || 0; - return gettext('The Module NEWS::VDR is not active!') + return gettext('The module NEWS::VDR is not active!') if($obj->{active} ne 'y'); my $vars = { @@ -158,7 +158,7 @@ sub req { }; $obj->read($vars); - return gettext('A message is send to your SVDRPServer!'); + return gettext('A message has been sent to your VDR!'); } diff --git a/lib/XXV/OUTPUT/Wml.pm b/lib/XXV/OUTPUT/Wml.pm index f3bda9f..2d2ff59 100644 --- a/lib/XXV/OUTPUT/Wml.pm +++ b/lib/XXV/OUTPUT/Wml.pm @@ -12,13 +12,13 @@ use Pod::Html; # ------------------ sub module { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $args = { Name => 'Wml', Prereq => { 'Template' => 'Front-end module to the Template Toolkit ', }, - Description => gettext('This receive and send Wap messages.'), + Description => gettext('This receives and sends WAP messages.'), Version => (split(/ /, '$Revision$'))[1], Date => (split(/ /, '$Date$'))[1], Author => 'xpix', @@ -30,7 +30,7 @@ sub module { # ------------------ sub AUTOLOAD { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || {}; my $params = shift || 0; @@ -106,7 +106,7 @@ sub new { # ------------------ sub parseTemplate { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $name = shift || return error ('No Name!' ); my $data = shift || return error ('No Data!' ); my $params = shift || {}; @@ -175,7 +175,7 @@ sub parseTemplate { # ------------------ sub out { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $text = shift || 'no Text for Output'; my $type = shift || 'text/vnd.wap.wml'; my %args = @_; @@ -194,7 +194,7 @@ sub out { # ------------------ sub header { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $typ = shift || return error ('No Type!' ); my $arg = shift || {}; @@ -264,13 +264,13 @@ sub status404 { $file =~ s/$obj->{wmldir}\///g; # Don't post wml root, avoid spy out - $obj->statusmsg(sprintf(gettext("Can't open file '%s' : %s"),$file,$why),"404 File not found"); + $obj->statusmsg(sprintf(gettext("Cannot open file '%s' : %s!"),$file,$why),"404 File not found"); } # ------------------ sub question { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $titel = shift || 'undef'; my $questions = shift || return error ('No Data!' ); my $erg = shift || 0; @@ -294,16 +294,16 @@ sub question { # Check on directory if($data->{typ} eq 'dir' and $data->{required} and not -d $erg->{$name}) { - ($erg->{$name}, $error) = (undef, sprintf(gettext("Directory '%s' is doesn't exist!"), $erg->{$name})); + ($erg->{$name}, $error) = (undef, sprintf(gettext("Directory '%s' does not exist!"), $erg->{$name})); } # Check on file if($data->{typ} eq 'file' and $data->{required} and not -e $erg->{$name}) { - ($erg->{$name}, $error) = (undef, sprintf(gettext("File '%s' is doesn't exist!"), $erg->{$name})); + ($erg->{$name}, $error) = (undef, sprintf(gettext("File '%s' does not exist!"), $erg->{$name})); } if($error) { - $obj->err(sprintf(gettext("Error at field '%s' (%s) : %s"), $data->{msg}, $name, $error)); + $obj->err(sprintf(gettext("Error '%s' (%s) : %s!"), $data->{msg}, $name, $error)); last; } } @@ -337,7 +337,7 @@ sub question { # ------------------ sub image { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $file = shift || return error ('No File!' ); my $typ = shift || $obj->{mime}->{lc((split('\.', $file))[-1])} or return error("No Type in Mimehash or File: $file"); @@ -351,7 +351,7 @@ sub image { # ------------------ sub datei { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $file = shift || return error ('No File!' ); my $data = load_file($file) @@ -363,7 +363,7 @@ sub datei { # ------------------ sub pod { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $modname = shift || return error ('No Modname!' ); $modname = ucfirst($modname) if($modname eq 'GENERAL'); @@ -382,7 +382,7 @@ sub pod { my $html = load_file($outfile); $html = $1 if($html =~ /\<body.*?\>(.+?)\<\/body\>/si); $obj->link({ - text => gettext("Back to configuration screen"), + text => gettext("Back to configuration page."), url => $obj->{browser}->{Referer}, }); $obj->message($html); @@ -391,14 +391,14 @@ sub pod { # ------------------ sub typ { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{TYP}; } # ------------------ sub setCall { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $name = shift || return error ('No Name!' ); $obj->{call} = $name; @@ -408,7 +408,7 @@ sub setCall { # ------------------ sub browser { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); return $obj->{browser}; } @@ -416,7 +416,7 @@ sub browser { # ------------------ sub msg { # ------------------ - my $obj = shift || return error ('No Object!' ); + my $obj = shift || return error('No object defined!'); my $data = shift || {}; my $err = shift; diff --git a/locale/Makefile b/locale/Makefile index 5c26102..f9ab799 100644 --- a/locale/Makefile +++ b/locale/Makefile @@ -55,7 +55,14 @@ MODULES = ../lib/XXV/MODULES/AUTOTIMER.pm \ ../html/widgets/*.tmpl \ ../html/javascript/*.js \ ../wml/*.tmpl \ - ../wml/widgets/*.tmpl + ../wml/widgets/*.tmpl +# ../../XXV-Skins/stone/*.tmpl \ +# ../../XXV-Skins/stone_flat/*.tmpl \ +# ../../XXV-Skins/stone/widgets/*.tmpl \ +# ../../XXV-Skins/deltab/*.tmpl \ +# ../../XXV-Skins/deltab/widgets/*.tmpl \ +# ../../XXV-Skins/xstyle/*.tmpl \ +# ../../XXV-Skins/xstyle/widgets/*.tmpl \ ### TODO Need Touch if only a Modul is changed diff --git a/locale/de.po b/locale/de.po index 52fe1ba..813dd76 100644 --- a/locale/de.po +++ b/locale/de.po @@ -7,9 +7,9 @@ # msgid "" msgstr "" -"Project-Id-Version: XXV 0.93\n" +"Project-Id-Version: XXV 0.95\n" "POT-Creation-Date: 2005-01-12 18:55\n" -"PO-Revision-Date: 2007-08-11 18:40+0100\n" +"PO-Revision-Date: 2007-09-09 12:17+0100\n" "Last-Translator: Andreas Brachold <vdr07 at deltab.de>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "MIME-Version: 1.0\n" @@ -17,88 +17,78 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" #-------------------- -#: ../bin/xxvd:101 ../bin/xxvd:116 ../bin/xxvd:89 ../bin/xxvd:95 ../lib/XXV/MODULES/AUTOTIMER.pm:31 ../lib/XXV/MODULES/AUTOTIMER.pm:590 ../lib/XXV/MODULES/AUTOTIMER.pm:600 ../lib/XXV/MODULES/CHANNELS.pm:28 ../lib/XXV/MODULES/CHANNELS.pm:34 ../lib/XXV/MODULES/CHANNELS.pm:681 ../lib/XXV/MODULES/CHANNELS.pm:707 ../lib/XXV/MODULES/CHANNELS.pm:720 ../lib/XXV/MODULES/CHANNELS.pm:759 ../lib/XXV/MODULES/CHANNELS.pm:785 ../lib/XXV/MODULES/CHRONICLE.pm:27 ../lib/XXV/MODULES/EPG.pm:35 ../lib/XXV/MODULES/EPG.pm:41 ../lib/XXV/MODULES/EPG.pm:47 ../lib/XXV/MODULES/EVENTS.pm:34 ../lib/XXV/MODULES/GRAB.pm:29 ../lib/XXV/MODULES/GRAB.pm:35 ../lib/XXV/MODULES/HTTPD.pm:57 ../lib/XXV/MODULES/HTTPD.pm:63 ../lib/XXV/MODULES/HTTPD.pm:69 ../lib/XXV/MODULES/HTTPD.pm:75 ../lib/XXV/MODULES/HTTPD.pm:81 ../lib/XXV/MODULES/HTTPD.pm:88 ../lib/XXV/MODULES/INTERFACE.pm:32 ../lib/XXV/MODULES/INTERFACE.pm:38 ../lib/XXV/MODULES/INTERFACE.pm:44 ../lib/XXV/MODULES/LOGREAD.pm:31 ../lib/XXV/MODULES/LOGREAD.pm:37 ../lib/XXV/MODULES/LOGREAD.pm:43 ../lib/XXV/MODULES/LOGREAD.pm:49 ../lib/XXV/MODULES/MEDIALIB.pm:33 ../lib/XXV/MODULES/MEDIALIB.pm:39 ../lib/XXV/MODULES/MEDIALIB.pm:45 ../lib/XXV/MODULES/MEDIALIB.pm:51 ../lib/XXV/MODULES/MEDIALIB.pm:57 ../lib/XXV/MODULES/MUSIC.pm:40 ../lib/XXV/MODULES/MUSIC.pm:46 ../lib/XXV/MODULES/MUSIC.pm:52 ../lib/XXV/MODULES/MUSIC.pm:58 ../lib/XXV/MODULES/MUSIC.pm:69 ../lib/XXV/MODULES/MUSIC.pm:75 ../lib/XXV/MODULES/RECORDS.pm:1578 ../lib/XXV/MODULES/RECORDS.pm:1592 ../lib/XXV/MODULES/RECORDS.pm:1606 ../lib/XXV/MODULES/RECORDS.pm:1625 ../lib/XXV/MODULES/RECORDS.pm:36 ../lib/XXV/MODULES/RECORDS.pm:42 ../lib/XXV/MODULES/RECORDS.pm:48 ../lib/XXV/MODULES/RECORDS.pm:54 ../lib/XXV/MODULES/RECORDS.pm:60 ../lib/XXV/MODULES/RECORDS.pm:72 ../lib/XXV/MODULES/RECORDS.pm:88 ../lib/XXV/MODULES/REMOTE.pm:27 ../lib/XXV/MODULES/REMOTE.pm:33 ../lib/XXV/MODULES/REMOTE.pm:39 ../lib/XXV/MODULES/REPORT.pm:29 ../lib/XXV/MODULES/REPORT.pm:35 ../lib/XXV/MODULES/ROBOT.pm:28 ../lib/XXV/MODULES/SHARE.pm:51 ../lib/XXV/MODULES/SHARE.pm:57 ../lib/XXV/MODULES/SHARE.pm:63 ../lib/XXV/MODULES/SHARE.pm:69 ../lib/XXV/MODULES/STATUS.pm:31 ../lib/XXV/MODULES/STATUS.pm:37 ../lib/XXV/MODULES/STATUS.pm:42 ../lib/XXV/MODULES/STATUS.pm:48 ../lib/XXV/MODULES/STREAM.pm:31 ../lib/XXV/MODULES/SVDRP.pm:29 ../lib/XXV/MODULES/SVDRP.pm:35 ../lib/XXV/MODULES/SVDRP.pm:41 ../lib/XXV/MODULES/TELNET.pm:29 ../lib/XXV/MODULES/TELNET.pm:35 ../lib/XXV/MODULES/TELNET.pm:41 ../lib/XXV/MODULES/TELNET.pm:47 ../lib/XXV/MODULES/TIMERS.pm:28 ../lib/XXV/MODULES/TIMERS.pm:597 ../lib/XXV/MODULES/TIMERS.pm:610 ../lib/XXV/MODULES/TIMERS.pm:618 ../lib/XXV/MODULES/TIMERS.pm:705 ../lib/XXV/MODULES/USER.pm:263 ../lib/XXV/MODULES/USER.pm:355 ../lib/XXV/MODULES/USER.pm:361 ../lib/XXV/MODULES/USER.pm:386 ../lib/XXV/MODULES/USER.pm:67 ../lib/XXV/MODULES/VTX.pm:32 ../lib/XXV/MODULES/VTX.pm:38 ../lib/XXV/MODULES/WAPD.pm:42 ../lib/XXV/MODULES/WAPD.pm:48 ../lib/XXV/MODULES/WAPD.pm:54 ../lib/XXV/MODULES/WAPD.pm:60 ../lib/XXV/MODULES/WAPD.pm:66 ../lib/XXV/MODULES/WAPD.pm:73 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:101 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:107 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:69 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:82 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:95 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:33 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:46 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:59 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:73 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:84 ../lib/XXV/OUTPUT/NEWS/RSS.pm:32 ../lib/XXV/OUTPUT/NEWS/RSS.pm:45 ../lib/XXV/OUTPUT/NEWS/VDR.pm:29 ../lib/XXV/OUTPUT/NEWS/VDR.pm:42 +#: ../bin/xxvd:102 ../bin/xxvd:117 ../bin/xxvd:90 ../bin/xxvd:96 ../lib/XXV/MODULES/AUTOTIMER.pm:32 ../lib/XXV/MODULES/AUTOTIMER.pm:591 ../lib/XXV/MODULES/AUTOTIMER.pm:604 ../lib/XXV/MODULES/CHANNELS.pm:29 ../lib/XXV/MODULES/CHANNELS.pm:35 ../lib/XXV/MODULES/CHANNELS.pm:682 ../lib/XXV/MODULES/CHANNELS.pm:708 ../lib/XXV/MODULES/CHANNELS.pm:721 ../lib/XXV/MODULES/CHANNELS.pm:760 ../lib/XXV/MODULES/CHANNELS.pm:786 ../lib/XXV/MODULES/CHRONICLE.pm:28 ../lib/XXV/MODULES/EPG.pm:36 ../lib/XXV/MODULES/EPG.pm:42 ../lib/XXV/MODULES/EPG.pm:48 ../lib/XXV/MODULES/EVENTS.pm:35 ../lib/XXV/MODULES/GRAB.pm:30 ../lib/XXV/MODULES/GRAB.pm:36 ../lib/XXV/MODULES/HTTPD.pm:58 ../lib/XXV/MODULES/HTTPD.pm:64 ../lib/XXV/MODULES/HTTPD.pm:70 ../lib/XXV/MODULES/HTTPD.pm:76 ../lib/XXV/MODULES/HTTPD.pm:82 ../lib/XXV/MODULES/HTTPD.pm:89 ../lib/XXV/MODULES/INTERFACE.pm:33 ../lib/XXV/MODULES/INTERFACE.pm:39 ../lib/XXV/MODULES/INTERFACE.pm:45 ../lib/XXV/MODULES/LOGREAD.pm:32 ../lib/XXV/MODULES/LOGREAD.pm:38 ../lib/XXV/MODULES/LOGREAD.pm:44 ../lib/XXV/MODULES/LOGREAD.pm:50 ../lib/XXV/MODULES/MEDIALIB.pm:34 ../lib/XXV/MODULES/MEDIALIB.pm:40 ../lib/XXV/MODULES/MEDIALIB.pm:46 ../lib/XXV/MODULES/MEDIALIB.pm:52 ../lib/XXV/MODULES/MEDIALIB.pm:58 ../lib/XXV/MODULES/MUSIC.pm:41 ../lib/XXV/MODULES/MUSIC.pm:47 ../lib/XXV/MODULES/MUSIC.pm:53 ../lib/XXV/MODULES/MUSIC.pm:59 ../lib/XXV/MODULES/MUSIC.pm:70 ../lib/XXV/MODULES/MUSIC.pm:76 ../lib/XXV/MODULES/RECORDS.pm:1579 ../lib/XXV/MODULES/RECORDS.pm:1593 ../lib/XXV/MODULES/RECORDS.pm:1607 ../lib/XXV/MODULES/RECORDS.pm:1626 ../lib/XXV/MODULES/RECORDS.pm:37 ../lib/XXV/MODULES/RECORDS.pm:43 ../lib/XXV/MODULES/RECORDS.pm:49 ../lib/XXV/MODULES/RECORDS.pm:55 ../lib/XXV/MODULES/RECORDS.pm:61 ../lib/XXV/MODULES/RECORDS.pm:73 ../lib/XXV/MODULES/RECORDS.pm:89 ../lib/XXV/MODULES/REMOTE.pm:28 ../lib/XXV/MODULES/REMOTE.pm:34 ../lib/XXV/MODULES/REMOTE.pm:40 ../lib/XXV/MODULES/REPORT.pm:30 ../lib/XXV/MODULES/REPORT.pm:36 ../lib/XXV/MODULES/ROBOT.pm:29 ../lib/XXV/MODULES/SHARE.pm:52 ../lib/XXV/MODULES/SHARE.pm:58 ../lib/XXV/MODULES/SHARE.pm:64 ../lib/XXV/MODULES/SHARE.pm:70 ../lib/XXV/MODULES/STATUS.pm:32 ../lib/XXV/MODULES/STATUS.pm:38 ../lib/XXV/MODULES/STATUS.pm:43 ../lib/XXV/MODULES/STATUS.pm:49 ../lib/XXV/MODULES/STREAM.pm:32 ../lib/XXV/MODULES/SVDRP.pm:30 ../lib/XXV/MODULES/SVDRP.pm:36 ../lib/XXV/MODULES/SVDRP.pm:42 ../lib/XXV/MODULES/TELNET.pm:30 ../lib/XXV/MODULES/TELNET.pm:36 ../lib/XXV/MODULES/TELNET.pm:42 ../lib/XXV/MODULES/TELNET.pm:48 ../lib/XXV/MODULES/TIMERS.pm:29 ../lib/XXV/MODULES/TIMERS.pm:598 ../lib/XXV/MODULES/TIMERS.pm:611 ../lib/XXV/MODULES/TIMERS.pm:619 ../lib/XXV/MODULES/TIMERS.pm:706 ../lib/XXV/MODULES/USER.pm:264 ../lib/XXV/MODULES/USER.pm:356 ../lib/XXV/MODULES/USER.pm:362 ../lib/XXV/MODULES/USER.pm:387 ../lib/XXV/MODULES/USER.pm:68 ../lib/XXV/MODULES/VTX.pm:33 ../lib/XXV/MODULES/VTX.pm:39 ../lib/XXV/MODULES/WAPD.pm:43 ../lib/XXV/MODULES/WAPD.pm:49 ../lib/XXV/MODULES/WAPD.pm:55 ../lib/XXV/MODULES/WAPD.pm:61 ../lib/XXV/MODULES/WAPD.pm:67 ../lib/XXV/MODULES/WAPD.pm:74 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:102 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:108 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:70 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:83 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:96 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:34 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:47 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:60 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:74 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:85 ../lib/XXV/OUTPUT/NEWS/RSS.pm:33 ../lib/XXV/OUTPUT/NEWS/RSS.pm:46 ../lib/XXV/OUTPUT/NEWS/VDR.pm:30 ../lib/XXV/OUTPUT/NEWS/VDR.pm:43 msgid "This is required!" msgstr "Das ist erforderlich!" #-------------------- -#: ../bin/xxvd:106 ../lib/XXV/MODULES/USER.pm:271 ../lib/XXV/MODULES/USER.pm:369 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:115 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:102 -msgid "Field with 1st and 2nd password must be equal to confirm!" +#: ../bin/xxvd:107 ../lib/XXV/MODULES/USER.pm:272 ../lib/XXV/MODULES/USER.pm:370 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:116 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:103 +msgid "The fields with the 1st and the 2nd password must match!" msgstr "Das Feld mit 1. und 2. Passwort muß gleich sein, um es zu bestätigen!" #-------------------- -#: ../bin/xxvd:113 +#: ../bin/xxvd:114 msgid "Initialization script to restart xxv" msgstr "Initialisierung-Skript zum xxv-System Neustart" #-------------------- -#: ../bin/xxvd:121 -msgid "Generate the documentation in doc directory." +#: ../bin/xxvd:122 +msgid "Generate the documentation into the doc directory." msgstr "Generiere die Dokumentation ins doc Verzeichnis." #-------------------- -#: ../bin/xxvd:127 -msgid "Shows text files." +#: ../bin/xxvd:128 +msgid "Display program information." msgstr "Zeigt Textdateien." #-------------------- -#: ../bin/xxvd:138 -msgid "Call initialization script to restart xxv system." +#: ../bin/xxvd:139 +msgid "Call initialization script to restart the xxv system." msgstr "Rufe den Initialisierung-Skript auf, um das xxv-System neuzustarten." #-------------------- -#: ../bin/xxvd:552 ../bin/xxvd:554 -msgid "Documentation is generated in '%s'." +#: ../bin/xxvd:553 +msgid "Documentation has been generated in '%s'." msgstr "Dokumentation wurde in '%s' generiert" #-------------------- -#: ../bin/xxvd:578 -msgid "The xxv system will restart now. Please try a relogin in %d seconds." +#: ../bin/xxvd:579 +msgid "The xxv system will restart now. Please try to re-login in %d seconds." msgstr "Das xxv-System startet jetzt neu. Versuchen Sie bitte ein erneute Anmeldung in den %d Sekunden" #-------------------- -#: ../bin/xxvd:588 -msgid "Can't restart xxv system ! Script for initialization is'nt executable." +#: ../bin/xxvd:589 +msgid "Cannot restart the xxv system! Script for initialization cannot be executed." msgstr "Neustart des xxv-System nicht möglich! Skript für Initialisierung ist nicht ausführbar." #-------------------- -#: ../bin/xxvd:678 -msgid "Fast template support is on!" -msgstr "Schnelle Template Unterstützung ist aktiv!" - -#-------------------- #: ../bin/xxvd:71 msgid "This is the main program xxvd." msgstr "Das ist das Hauptprogramm xxvd." #-------------------- -#: ../bin/xxvd:77 -msgid "Language for interface" +#: ../bin/xxvd:78 +msgid "Interface language" msgstr "Sprache der Oberfläche" #-------------------- -#: ../bin/xxvd:80 +#: ../bin/xxvd:81 msgid "English" msgstr "Englisch" #-------------------- -#: ../bin/xxvd:81 +#: ../bin/xxvd:82 msgid "German" msgstr "Deutsch" #-------------------- -#: ../bin/xxvd:86 -msgid "Data source name for the connection to the data base" +#: ../bin/xxvd:87 +msgid "Data source for the connection to the database" msgstr "Name der Datenquelle für die Verbindung zur Datenbank" #-------------------- -#: ../bin/xxvd:92 -msgid "Username for data base access" -msgstr "Username für Datenbankzugriff" - -#-------------------- -#: ../bin/xxvd:98 -msgid "Password for data base access" +#: ../bin/xxvd:93 ../bin/xxvd:99 +msgid "Password for database access" msgstr "Passwort für Datenbankzugriff" #-------------------- @@ -107,7 +97,7 @@ msgid "Wished automated recordings" msgstr "Gewünschte automatische Aufnahmen" #-------------------- -#: ../html/alist.tmpl:45 ../html/asearch.tmpl:45 ../html/tlist.tmpl:93 ../html/tsearch.tmpl:93 ../lib/XXV/MODULES/AUTOTIMER.pm:842 +#: ../html/alist.tmpl:45 ../html/asearch.tmpl:45 ../html/tlist.tmpl:93 ../html/tsearch.tmpl:93 ../lib/XXV/MODULES/AUTOTIMER.pm:846 msgid "Edit autotimer" msgstr "Autotimer bearbeiten" @@ -122,8 +112,8 @@ msgid "Delete autotimer" msgstr "Lösche Autotimer" #-------------------- -#: ../html/alist.tmpl:5 ../html/asearch.tmpl:5 ../lib/XXV/MODULES/AUTOTIMER.pm:55 ../lib/XXV/MODULES/AUTOTIMER.pm:843 -msgid "Create a new autotimer" +#: ../html/alist.tmpl:5 ../html/asearch.tmpl:5 ../lib/XXV/MODULES/AUTOTIMER.pm:56 ../lib/XXV/MODULES/AUTOTIMER.pm:847 +msgid "Create new autotimer" msgstr "Neuer Autotimer" #-------------------- @@ -132,7 +122,7 @@ msgid "You will delete this autotimer" msgstr "Sie wollen wirklich diese Autotimer löschen" #-------------------- -#: ../html/alist.tmpl:51 ../html/asearch.tmpl:51 ../html/ulist.tmpl:30 ../wml/tlist.tmpl:49 ../wml/tsearch.tmpl:49 +#: ../html/alist.tmpl:51 ../html/asearch.tmpl:51 ../html/ulist.tmpl:30 msgid "Del" msgstr "Lösch" @@ -157,13 +147,13 @@ msgid "Search text" msgstr "Suchtext" #-------------------- -#: ../html/alist.tmpl:9 ../html/asearch.tmpl:9 ../lib/XXV/MODULES/AUTOTIMER.pm:88 -msgid "Start the autotimer process" -msgstr "Autotimersuche durchführen" +#: ../html/alist.tmpl:9 ../html/asearch.tmpl:9 +msgid "Search autotimer" +msgstr "Suche Autotimer" #-------------------- -#: ../html/clist.tmpl:103 ../lib/XXV/MODULES/CHANNELS.pm:96 -msgid "Create a new channel" +#: ../html/clist.tmpl:103 ../lib/XXV/MODULES/CHANNELS.pm:97 +msgid "Create new channel" msgstr "Erzeugt einen neuen Kanal" #-------------------- @@ -198,7 +188,7 @@ msgstr "Wollen Sie folgende Kanäle löschen?" #-------------------- #: ../html/clist.tmpl:122 ../html/mlist.tmpl:39 ../html/rlist.tmpl:124 ../html/rsearch.tmpl:124 ../html/tlist.tmpl:23 ../html/tlist.tmpl:29 ../html/tsearch.tmpl:23 ../html/tsearch.tmpl:29 -msgid "You have nothing selected!" +msgid "Nothing selected!" msgstr "Sie haben nicht gewählt!" #-------------------- @@ -207,42 +197,42 @@ msgid "Delete channels" msgstr "Kanäle löschen" #-------------------- -#: ../html/clist.tmpl:134 ../lib/XXV/MODULES/CHANNELS.pm:675 ../lib/XXV/MODULES/USER.pm:521 ../lib/XXV/OUTPUT/Console.pm:168 ../lib/XXV/OUTPUT/Console.pm:231 +#: ../html/clist.tmpl:134 ../lib/XXV/MODULES/CHANNELS.pm:676 ../lib/XXV/MODULES/USER.pm:522 ../lib/XXV/OUTPUT/Console.pm:169 ../lib/XXV/OUTPUT/Console.pm:232 msgid "Name" msgstr "Name" #-------------------- -#: ../html/clist.tmpl:135 ../lib/XXV/MODULES/CHANNELS.pm:687 +#: ../html/clist.tmpl:135 ../lib/XXV/MODULES/CHANNELS.pm:688 msgid "Transponder frequency" msgstr "Frequenz des Transponder" #-------------------- -#: ../html/clist.tmpl:136 ../lib/XXV/MODULES/CHANNELS.pm:714 -msgid "Various parameters, depends on signal source" +#: ../html/clist.tmpl:136 ../lib/XXV/MODULES/CHANNELS.pm:715 +msgid "Various parameters, depending on signal source" msgstr "Verschiedene Parameter, abhängig von der Signalquelle" #-------------------- -#: ../html/clist.tmpl:137 ../lib/XXV/MODULES/CHANNELS.pm:726 +#: ../html/clist.tmpl:137 ../lib/XXV/MODULES/CHANNELS.pm:727 msgid "Symbol rate" msgstr "Symbolrate" #-------------------- -#: ../html/clist.tmpl:138 ../lib/XXV/MODULES/CHANNELS.pm:739 +#: ../html/clist.tmpl:138 ../lib/XXV/MODULES/CHANNELS.pm:740 msgid "Video PID (VPID)" msgstr "Video PID (VPID)" #-------------------- -#: ../html/clist.tmpl:139 ../lib/XXV/MODULES/CHANNELS.pm:753 +#: ../html/clist.tmpl:139 ../lib/XXV/MODULES/CHANNELS.pm:754 msgid "Audio PID (APID)" msgstr "Audio PID (APID)" #-------------------- -#: ../html/clist.tmpl:140 ../lib/XXV/MODULES/CHANNELS.pm:765 +#: ../html/clist.tmpl:140 ../lib/XXV/MODULES/CHANNELS.pm:766 msgid "Teletext PID (TPID)" msgstr "Videotext PID (TPID)" #-------------------- -#: ../html/clist.tmpl:141 ../lib/XXV/MODULES/CHANNELS.pm:779 +#: ../html/clist.tmpl:141 ../lib/XXV/MODULES/CHANNELS.pm:780 msgid "Conditional access (CA)" msgstr "Zugangsberechtigungssystem (CA)" @@ -252,7 +242,7 @@ msgid "Switch to channel" msgstr "Schalte zum Kanal" #-------------------- -#: ../html/clist.tmpl:36 ../lib/XXV/MODULES/CHANNELS.pm:845 +#: ../html/clist.tmpl:36 ../lib/XXV/MODULES/CHANNELS.pm:846 msgid "Edit channel" msgstr "Kanal bearbeiten" @@ -267,7 +257,7 @@ msgid "Delete channel" msgstr "Kanal löschen" #-------------------- -#: ../html/clist.tmpl:94 ../lib/XXV/MODULES/AUTOTIMER.pm:996 ../lib/XXV/MODULES/CHANNELS.pm:372 +#: ../html/clist.tmpl:94 ../lib/XXV/MODULES/AUTOTIMER.pm:1000 ../lib/XXV/MODULES/CHANNELS.pm:373 msgid "Channels" msgstr "Kanäle" @@ -282,17 +272,17 @@ msgid "Detailed program information" msgstr "Detailierte Programminformation" #-------------------- -#: ../html/display.tmpl:21 ../html/display.tmpl:44 ../lib/XXV/MODULES/EPG.pm:735 ../lib/XXV/MODULES/EPG.pm:906 +#: ../html/display.tmpl:21 ../html/display.tmpl:44 ../lib/XXV/MODULES/EPG.pm:736 ../lib/XXV/MODULES/EPG.pm:907 msgid "Percent" msgstr "Prozent" #-------------------- -#: ../html/display.tmpl:25 ../html/rdisplay.tmpl:149 ../html/search.tmpl:54 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:360 ../lib/XXV/MODULES/CHRONICLE.pm:162 ../lib/XXV/MODULES/CHRONICLE.pm:202 ../lib/XXV/MODULES/EPG.pm:731 ../lib/XXV/MODULES/EPG.pm:829 ../lib/XXV/MODULES/EPG.pm:903 ../lib/XXV/MODULES/RECORDS.pm:1616 ../lib/XXV/MODULES/TIMERS.pm:1076 +#: ../html/display.tmpl:25 ../html/rdisplay.tmpl:149 ../html/search.tmpl:54 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:361 ../lib/XXV/MODULES/CHRONICLE.pm:163 ../lib/XXV/MODULES/CHRONICLE.pm:203 ../lib/XXV/MODULES/EPG.pm:732 ../lib/XXV/MODULES/EPG.pm:830 ../lib/XXV/MODULES/EPG.pm:904 ../lib/XXV/MODULES/RECORDS.pm:1617 ../lib/XXV/MODULES/TIMERS.pm:1077 msgid "Channel" msgstr "Kanal" #-------------------- -#: ../html/display.tmpl:27 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:993 ../lib/XXV/MODULES/CHRONICLE.pm:159 ../lib/XXV/MODULES/CHRONICLE.pm:199 ../lib/XXV/MODULES/EPG.pm:728 ../lib/XXV/MODULES/EPG.pm:827 ../lib/XXV/MODULES/EPG.pm:901 ../lib/XXV/MODULES/RECORDS.pm:1258 ../lib/XXV/MODULES/RECORDS.pm:1331 ../lib/XXV/MODULES/USER.pm:520 +#: ../html/display.tmpl:27 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:997 ../lib/XXV/MODULES/CHRONICLE.pm:160 ../lib/XXV/MODULES/CHRONICLE.pm:200 ../lib/XXV/MODULES/EPG.pm:729 ../lib/XXV/MODULES/EPG.pm:828 ../lib/XXV/MODULES/EPG.pm:902 ../lib/XXV/MODULES/RECORDS.pm:1259 ../lib/XXV/MODULES/RECORDS.pm:1332 ../lib/XXV/MODULES/USER.pm:521 msgid "Service" msgstr "Service" @@ -322,12 +312,12 @@ msgid "Search with OFDb" msgstr "Suche mit OFDb" #-------------------- -#: ../html/display.tmpl:60 ../lib/XXV/MODULES/AUTOTIMER.pm:366 ../lib/XXV/MODULES/AUTOTIMER.pm:564 ../lib/XXV/MODULES/EPG.pm:734 ../lib/XXV/MODULES/TIMERS.pm:718 ../lib/XXV/OUTPUT/Console.pm:169 +#: ../html/display.tmpl:60 ../lib/XXV/MODULES/AUTOTIMER.pm:367 ../lib/XXV/MODULES/AUTOTIMER.pm:565 ../lib/XXV/MODULES/EPG.pm:735 ../lib/XXV/MODULES/TIMERS.pm:719 ../lib/XXV/OUTPUT/Console.pm:170 msgid "Description" msgstr "Beschreibung" #-------------------- -#: ../html/display.tmpl:69 ../html/rlist.tmpl:240 ../html/rsearch.tmpl:240 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:364 ../lib/XXV/MODULES/AUTOTIMER.pm:997 ../lib/XXV/MODULES/CHRONICLE.pm:164 ../lib/XXV/MODULES/CHRONICLE.pm:204 ../lib/XXV/MODULES/EPG.pm:732 ../lib/XXV/MODULES/EPG.pm:830 ../lib/XXV/MODULES/EPG.pm:904 ../lib/XXV/MODULES/TIMERS.pm:1077 +#: ../html/display.tmpl:69 ../html/rlist.tmpl:240 ../html/rsearch.tmpl:240 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:1001 ../lib/XXV/MODULES/AUTOTIMER.pm:365 ../lib/XXV/MODULES/CHRONICLE.pm:165 ../lib/XXV/MODULES/CHRONICLE.pm:205 ../lib/XXV/MODULES/EPG.pm:733 ../lib/XXV/MODULES/EPG.pm:831 ../lib/XXV/MODULES/EPG.pm:905 ../lib/XXV/MODULES/TIMERS.pm:1078 msgid "Start" msgstr "Start" @@ -337,7 +327,7 @@ msgid "VPS" msgstr "VPS" #-------------------- -#: ../html/display.tmpl:75 ../lib/XXV/MODULES/AUTOTIMER.pm:365 ../lib/XXV/MODULES/AUTOTIMER.pm:998 ../lib/XXV/MODULES/CHRONICLE.pm:165 ../lib/XXV/MODULES/CHRONICLE.pm:205 ../lib/XXV/MODULES/EPG.pm:733 ../lib/XXV/MODULES/EPG.pm:831 ../lib/XXV/MODULES/EPG.pm:905 ../lib/XXV/MODULES/TIMERS.pm:1078 +#: ../html/display.tmpl:75 ../lib/XXV/MODULES/AUTOTIMER.pm:1002 ../lib/XXV/MODULES/AUTOTIMER.pm:366 ../lib/XXV/MODULES/CHRONICLE.pm:166 ../lib/XXV/MODULES/CHRONICLE.pm:206 ../lib/XXV/MODULES/EPG.pm:734 ../lib/XXV/MODULES/EPG.pm:832 ../lib/XXV/MODULES/EPG.pm:906 ../lib/XXV/MODULES/TIMERS.pm:1079 msgid "Stop" msgstr "Stopp" @@ -382,7 +372,7 @@ msgid "Report" msgstr "Bericht" #-------------------- -#: ../html/help.tmpl:112 ../lib/XXV/MODULES/USER.pm:344 +#: ../html/help.tmpl:112 ../lib/XXV/MODULES/USER.pm:345 msgid "User" msgstr "Anwender" @@ -412,7 +402,7 @@ msgid "search" msgstr "Suchen" #-------------------- -#: ../html/help.tmpl:23 ../lib/XXV/MODULES/HTTPD.pm:91 ../lib/XXV/MODULES/WAPD.pm:75 ../wml/widgets/footer.tmpl:6 +#: ../html/help.tmpl:23 ../lib/XXV/MODULES/HTTPD.pm:92 ../lib/XXV/MODULES/WAPD.pm:76 ../wml/widgets/footer.tmpl:6 msgid "Running now" msgstr "Jetzt läuft" @@ -423,7 +413,7 @@ msgid "Next" msgstr "Nächstes" #-------------------- -#: ../html/help.tmpl:51 ../lib/XXV/MODULES/HTTPD.pm:92 ../lib/XXV/MODULES/WAPD.pm:76 ../wml/widgets/footer.tmpl:12 +#: ../html/help.tmpl:51 ../lib/XXV/MODULES/HTTPD.pm:93 ../lib/XXV/MODULES/WAPD.pm:77 ../wml/widgets/footer.tmpl:12 msgid "Program guide" msgstr "Programm" @@ -438,32 +428,32 @@ msgid "Commands" msgstr "Kommandos" #-------------------- -#: ../html/help.tmpl:62 -msgid "AutoTimer" +#: ../html/help.tmpl:62 ../lib/XXV/MODULES/HTTPD.pm:94 ../lib/XXV/MODULES/WAPD.pm:78 ../wml/widgets/footer.tmpl:17 +msgid "Autotimer" msgstr "Autotimer" #-------------------- -#: ../html/help.tmpl:64 ../lib/XXV/MODULES/HTTPD.pm:94 ../lib/XXV/MODULES/WAPD.pm:78 ../wml/tlist.tmpl:2 ../wml/tsearch.tmpl:2 ../wml/widgets/footer.tmpl:15 +#: ../html/help.tmpl:64 ../lib/XXV/MODULES/HTTPD.pm:95 ../lib/XXV/MODULES/WAPD.pm:79 ../wml/tlist.tmpl:2 ../wml/tsearch.tmpl:2 ../wml/widgets/footer.tmpl:15 msgid "Timers" msgstr "Timer" #-------------------- -#: ../html/help.tmpl:66 ../lib/XXV/MODULES/HTTPD.pm:95 ../lib/XXV/MODULES/WAPD.pm:79 ../wml/widgets/footer.tmpl:18 +#: ../html/help.tmpl:66 ../lib/XXV/MODULES/HTTPD.pm:96 ../lib/XXV/MODULES/WAPD.pm:80 ../wml/widgets/footer.tmpl:18 msgid "Recordings" msgstr "Aufnahmen" #-------------------- -#: ../html/help.tmpl:68 ../lib/XXV/MODULES/HTTPD.pm:96 ../lib/XXV/MODULES/MEDIALIB.pm:1247 ../lib/XXV/MODULES/WAPD.pm:80 +#: ../html/help.tmpl:68 ../lib/XXV/MODULES/HTTPD.pm:97 ../lib/XXV/MODULES/MEDIALIB.pm:1248 ../lib/XXV/MODULES/WAPD.pm:81 msgid "Music" msgstr "Musik" #-------------------- -#: ../html/help.tmpl:70 ../lib/XXV/MODULES/HTTPD.pm:97 ../lib/XXV/MODULES/WAPD.pm:81 ../wml/widgets/footer.tmpl:19 +#: ../html/help.tmpl:70 ../lib/XXV/MODULES/HTTPD.pm:98 ../lib/XXV/MODULES/WAPD.pm:82 ../wml/widgets/footer.tmpl:19 msgid "Remote" msgstr "Fernbedienung" #-------------------- -#: ../html/help.tmpl:72 ../html/widgets/vtx.tmpl:3 ../lib/XXV/MODULES/HTTPD.pm:98 ../lib/XXV/MODULES/WAPD.pm:82 +#: ../html/help.tmpl:72 ../html/widgets/vtx.tmpl:3 ../lib/XXV/MODULES/HTTPD.pm:99 ../lib/XXV/MODULES/WAPD.pm:83 msgid "Teletext" msgstr "Videotext" @@ -473,7 +463,7 @@ msgid "Media Library" msgstr "Medienbibliothek" #-------------------- -#: ../html/help.tmpl:78 ../lib/XXV/MODULES/USER.pm:523 +#: ../html/help.tmpl:78 ../lib/XXV/MODULES/USER.pm:524 msgid "Preferences" msgstr "Einstellungen" @@ -484,17 +474,17 @@ msgid "Edit channels" msgstr "Kanäle bearbeiten" #-------------------- -#: ../html/help.tmpl:88 ../lib/XXV/MODULES/HTTPD.pm:99 ../lib/XXV/MODULES/TIMERS.pm:1074 ../lib/XXV/MODULES/WAPD.pm:83 +#: ../html/help.tmpl:88 ../lib/XXV/MODULES/HTTPD.pm:100 ../lib/XXV/MODULES/TIMERS.pm:1075 ../lib/XXV/MODULES/WAPD.pm:84 msgid "Status" msgstr "Status" #-------------------- -#: ../html/help.tmpl:89 ../lib/XXV/MODULES/STATUS.pm:209 +#: ../html/help.tmpl:89 ../lib/XXV/MODULES/STATUS.pm:210 msgid "Vitals" msgstr "Wichtiges" #-------------------- -#: ../html/help.tmpl:90 ../lib/XXV/MODULES/STATUS.pm:273 +#: ../html/help.tmpl:90 ../lib/XXV/MODULES/STATUS.pm:274 msgid "Memory" msgstr "Speicher" @@ -504,7 +494,7 @@ msgid "Filesystem" msgstr "Filesystem" #-------------------- -#: ../html/help.tmpl:92 ../lib/XXV/MODULES/STATUS.pm:227 +#: ../html/help.tmpl:92 ../lib/XXV/MODULES/STATUS.pm:228 msgid "Network" msgstr "Netzwerk" @@ -524,9 +514,9 @@ msgid "News" msgstr "Neuigkeiten" #-------------------- -#: ../html/help.tmpl:99 +#: ../html/help.tmpl:99 ../lib/XXV/MODULES/MEDIALIB.pm:1256 msgid "History" -msgstr "Änderungen" +msgstr "Geschichte" #-------------------- #: ../html/javascript/records.js:7 @@ -584,7 +574,7 @@ msgid "TV-Episode" msgstr "TV-Episode" #-------------------- -#: ../html/mlcopy.tmpl:116 ../html/mldisplay.tmpl:115 ../html/mledit.tmpl:116 ../html/mlimport.tmpl:116 ../lib/XXV/MODULES/MEDIALIB.pm:1321 +#: ../html/mlcopy.tmpl:116 ../html/mldisplay.tmpl:115 ../html/mledit.tmpl:116 ../html/mlimport.tmpl:116 ../lib/XXV/MODULES/MEDIALIB.pm:1322 msgid "Seen" msgstr "Gesehen" @@ -594,7 +584,7 @@ msgid "Runtime" msgstr "Laufzeit" #-------------------- -#: ../html/mlcopy.tmpl:129 ../html/mldisplay.tmpl:30 ../html/mledit.tmpl:129 ../html/mlimport.tmpl:129 ../html/mlist.tmpl:68 ../lib/XXV/MODULES/MEDIALIB.pm:1296 ../lib/XXV/MODULES/MUSIC.pm:592 +#: ../html/mlcopy.tmpl:129 ../html/mldisplay.tmpl:30 ../html/mledit.tmpl:129 ../html/mlimport.tmpl:129 ../html/mlist.tmpl:68 ../lib/XXV/MODULES/MEDIALIB.pm:1297 ../lib/XXV/MODULES/MUSIC.pm:593 msgid "Year" msgstr "Jahr" @@ -604,7 +594,7 @@ msgid "Filename" msgstr "Dateiname" #-------------------- -#: ../html/mlcopy.tmpl:141 ../html/mldisplay.tmpl:209 ../html/mledit.tmpl:141 ../html/mlimport.tmpl:141 ../lib/XXV/MODULES/MEDIALIB.pm:1294 +#: ../html/mlcopy.tmpl:141 ../html/mldisplay.tmpl:209 ../html/mledit.tmpl:141 ../html/mlimport.tmpl:141 ../lib/XXV/MODULES/MEDIALIB.pm:1295 msgid "Actors" msgstr "Schauspieler" @@ -634,7 +624,7 @@ msgid "Size" msgstr "Größe" #-------------------- -#: ../html/mlcopy.tmpl:188 ../html/mldisplay.tmpl:201 ../html/mledit.tmpl:188 ../html/mlimport.tmpl:188 ../html/mlist.tmpl:70 ../lib/XXV/MODULES/MEDIALIB.pm:1301 +#: ../html/mlcopy.tmpl:188 ../html/mldisplay.tmpl:201 ../html/mledit.tmpl:188 ../html/mlimport.tmpl:188 ../html/mlist.tmpl:70 ../lib/XXV/MODULES/MEDIALIB.pm:1302 msgid "Comment" msgstr "Kommentar" @@ -654,7 +644,7 @@ msgid "Save" msgstr "Speichern" #-------------------- -#: ../html/mlcopy.tmpl:24 ../html/mledit.tmpl:24 ../html/mlimport.tmpl:24 ../html/rlist.tmpl:238 ../html/rsearch.tmpl:238 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:361 ../lib/XXV/MODULES/AUTOTIMER.pm:562 ../lib/XXV/MODULES/CHRONICLE.pm:160 ../lib/XXV/MODULES/CHRONICLE.pm:200 ../lib/XXV/MODULES/EPG.pm:729 ../lib/XXV/MODULES/EPG.pm:828 ../lib/XXV/MODULES/EPG.pm:902 ../lib/XXV/MODULES/MEDIALIB.pm:1291 ../lib/XXV/MODULES/MUSIC.pm:590 ../lib/XXV/MODULES/RECORDS.pm:1259 ../lib/XXV/MODULES/RECORDS.pm:1332 +#: ../html/mlcopy.tmpl:24 ../html/mledit.tmpl:24 ../html/mlimport.tmpl:24 ../html/rlist.tmpl:238 ../html/rsearch.tmpl:238 ../html/topten.tmpl:32 ../lib/XXV/MODULES/AUTOTIMER.pm:362 ../lib/XXV/MODULES/AUTOTIMER.pm:563 ../lib/XXV/MODULES/CHRONICLE.pm:161 ../lib/XXV/MODULES/CHRONICLE.pm:201 ../lib/XXV/MODULES/EPG.pm:730 ../lib/XXV/MODULES/EPG.pm:829 ../lib/XXV/MODULES/EPG.pm:903 ../lib/XXV/MODULES/MEDIALIB.pm:1292 ../lib/XXV/MODULES/MUSIC.pm:591 ../lib/XXV/MODULES/RECORDS.pm:1260 ../lib/XXV/MODULES/RECORDS.pm:1333 ../lib/XXV/MODULES/TIMERS.pm:1080 msgid "Title" msgstr "Titel" @@ -664,7 +654,7 @@ msgid "Search at" msgstr "Suche bei" #-------------------- -#: ../html/mlcopy.tmpl:37 ../html/mledit.tmpl:37 ../html/mlimport.tmpl:37 ../html/rlist.tmpl:239 ../html/rsearch.tmpl:239 ../lib/XXV/MODULES/AUTOTIMER.pm:362 ../lib/XXV/MODULES/AUTOTIMER.pm:563 ../lib/XXV/MODULES/CHRONICLE.pm:161 ../lib/XXV/MODULES/CHRONICLE.pm:201 ../lib/XXV/MODULES/EPG.pm:730 ../lib/XXV/MODULES/MEDIALIB.pm:1292 ../lib/XXV/MODULES/RECORDS.pm:1260 ../lib/XXV/MODULES/RECORDS.pm:1333 +#: ../html/mlcopy.tmpl:37 ../html/mledit.tmpl:37 ../html/mlimport.tmpl:37 ../html/rlist.tmpl:239 ../html/rsearch.tmpl:239 ../lib/XXV/MODULES/AUTOTIMER.pm:363 ../lib/XXV/MODULES/AUTOTIMER.pm:564 ../lib/XXV/MODULES/CHRONICLE.pm:162 ../lib/XXV/MODULES/CHRONICLE.pm:202 ../lib/XXV/MODULES/EPG.pm:731 ../lib/XXV/MODULES/MEDIALIB.pm:1293 ../lib/XXV/MODULES/RECORDS.pm:1261 ../lib/XXV/MODULES/RECORDS.pm:1334 msgid "Subtitle" msgstr "Serientitel" @@ -674,7 +664,7 @@ msgid "Create Media" msgstr "Medium erstellen" #-------------------- -#: ../html/mlcopy.tmpl:43 ../html/mldisplay.tmpl:78 ../html/mledit.tmpl:43 ../html/mlimport.tmpl:43 ../lib/XXV/MODULES/MEDIALIB.pm:1297 +#: ../html/mlcopy.tmpl:43 ../html/mldisplay.tmpl:78 ../html/mledit.tmpl:43 ../html/mlimport.tmpl:43 ../lib/XXV/MODULES/MEDIALIB.pm:1298 msgid "Country" msgstr "Land" @@ -684,12 +674,12 @@ msgid "Cover URL" msgstr "Cover URL" #-------------------- -#: ../html/mlcopy.tmpl:57 ../html/mldisplay.tmpl:48 ../html/mledit.tmpl:57 ../html/mlimport.tmpl:57 ../lib/XXV/MODULES/MEDIALIB.pm:1293 +#: ../html/mlcopy.tmpl:57 ../html/mldisplay.tmpl:48 ../html/mledit.tmpl:57 ../html/mlimport.tmpl:57 ../lib/XXV/MODULES/MEDIALIB.pm:1294 msgid "Director" msgstr "Regisseur" #-------------------- -#: ../html/mlcopy.tmpl:65 ../html/mldisplay.tmpl:62 ../html/mledit.tmpl:65 ../html/mlimport.tmpl:65 ../lib/XXV/MODULES/MEDIALIB.pm:1300 +#: ../html/mlcopy.tmpl:65 ../html/mldisplay.tmpl:62 ../html/mledit.tmpl:65 ../html/mlimport.tmpl:65 ../lib/XXV/MODULES/MEDIALIB.pm:1301 msgid "Language" msgstr "Spache" @@ -714,17 +704,17 @@ msgid "spanish" msgstr "spanisch" #-------------------- -#: ../html/mlcopy.tmpl:83 ../html/mldisplay.tmpl:193 ../html/mledit.tmpl:83 ../html/mlimport.tmpl:83 ../lib/XXV/MODULES/MEDIALIB.pm:1295 +#: ../html/mlcopy.tmpl:83 ../html/mldisplay.tmpl:193 ../html/mledit.tmpl:83 ../html/mlimport.tmpl:83 ../lib/XXV/MODULES/MEDIALIB.pm:1296 msgid "Plot" msgstr "Handlung" #-------------------- -#: ../html/mlcopy.tmpl:91 ../html/mldisplay.tmpl:102 ../html/mledit.tmpl:91 ../html/mlimport.tmpl:91 ../lib/XXV/MODULES/MEDIALIB.pm:1298 +#: ../html/mlcopy.tmpl:91 ../html/mldisplay.tmpl:102 ../html/mledit.tmpl:91 ../html/mlimport.tmpl:91 ../lib/XXV/MODULES/MEDIALIB.pm:1299 msgid "DiskID" msgstr "DiskID" #-------------------- -#: ../html/mlcopy.tmpl:96 ../html/mldisplay.tmpl:92 ../html/mledit.tmpl:96 ../html/mlimport.tmpl:96 ../lib/XXV/MODULES/MEDIALIB.pm:1299 +#: ../html/mlcopy.tmpl:96 ../html/mldisplay.tmpl:92 ../html/mledit.tmpl:96 ../html/mlimport.tmpl:96 ../lib/XXV/MODULES/MEDIALIB.pm:1300 msgid "Mediatype" msgstr "Medientyp" @@ -740,7 +730,7 @@ msgstr "Details für Medium" #-------------------- #: ../html/mlist.tmpl:1 -msgid "Music Library" +msgid "Music library" msgstr "Musikbibliothek" #-------------------- @@ -749,7 +739,7 @@ msgid "Albums" msgstr "Alben" #-------------------- -#: ../html/mlist.tmpl:24 ../html/mlnavcontainer.tmpl:96 ../html/mlsearch.tmpl:46 ../html/search.tmpl:66 ../html/widgets/vtx.tmpl:28 ../lib/XXV/MODULES/AUTOTIMER.pm:1020 ../lib/XXV/MODULES/AUTOTIMER.pm:995 ../wml/next.tmpl:15 ../wml/now.tmpl:15 ../wml/program.tmpl:43 ../wml/search.tmpl:17 +#: ../html/mlist.tmpl:24 ../html/mlnavcontainer.tmpl:96 ../html/mlsearch.tmpl:46 ../html/search.tmpl:66 ../html/widgets/vtx.tmpl:28 ../lib/XXV/MODULES/AUTOTIMER.pm:1024 ../lib/XXV/MODULES/AUTOTIMER.pm:999 ../wml/next.tmpl:15 ../wml/now.tmpl:15 ../wml/program.tmpl:43 ../wml/search.tmpl:17 msgid "Search" msgstr "Suche" @@ -775,11 +765,11 @@ msgstr "Suche nach neuen Covers" #-------------------- #: ../html/mlist.tmpl:65 ../html/tlist.tmpl:50 ../html/tsearch.tmpl:50 -msgid "Select" +msgid "Selection" msgstr "Auswählen" #-------------------- -#: ../html/mlist.tmpl:67 ../lib/XXV/MODULES/MUSIC.pm:588 +#: ../html/mlist.tmpl:67 ../lib/XXV/MODULES/MUSIC.pm:589 msgid "Artist" msgstr "Künstler" @@ -809,7 +799,7 @@ msgid "Copy" msgstr "Kopieren" #-------------------- -#: ../html/mlnavcontainer.tmpl:84 +#: ../html/mlnavcontainer.tmpl:84 ../wml/tlist.tmpl:49 ../wml/tsearch.tmpl:49 msgid "Delete" msgstr "Löschen" @@ -889,8 +879,8 @@ msgid "What is running at" msgstr "Was läuft am" #-------------------- -#: ../html/next.tmpl:42 ../html/now.tmpl:42 ../lib/XXV/MODULES/EPG.pm:82 -msgid "Reload EPG data" +#: ../html/next.tmpl:42 ../html/now.tmpl:42 +msgid "Update EPG data" msgstr "Aktualisiere EPG Daten" #-------------------- @@ -935,8 +925,8 @@ msgstr "Aufnahme" #-------------------- #: ../html/rdisplay.tmpl:102 -msgid "Choose an action for this recording" -msgstr "Wählen Sie einen Befehl zum Bearbeiten der Aufnahme" +msgid "Choose a command to edit this recording ..." +msgstr "Wählen Sie einen Befehl zum Bearbeiten der Aufnahme ..." #-------------------- #: ../html/rdisplay.tmpl:125 ../html/rlist.tmpl:185 ../html/rlist.tmpl:210 ../html/rlist.tmpl:61 ../html/rlist.tmpl:87 ../html/rsearch.tmpl:185 ../html/rsearch.tmpl:210 ../html/rsearch.tmpl:61 ../html/rsearch.tmpl:87 @@ -949,12 +939,12 @@ msgid "Lifetime" msgstr "Lebenszeit" #-------------------- -#: ../html/rdisplay.tmpl:162 ../lib/XXV/MODULES/TIMERS.pm:1080 +#: ../html/rdisplay.tmpl:162 ../lib/XXV/MODULES/TIMERS.pm:1081 msgid "Priority" msgstr "Priorität" #-------------------- -#: ../html/rdisplay.tmpl:63 ../html/rlist.tmpl:103 ../html/rlist.tmpl:241 ../html/rsearch.tmpl:103 ../html/rsearch.tmpl:241 ../lib/XXV/MODULES/RECORDS.pm:1261 ../lib/XXV/MODULES/RECORDS.pm:1334 +#: ../html/rdisplay.tmpl:63 ../html/rlist.tmpl:103 ../html/rlist.tmpl:241 ../html/rsearch.tmpl:103 ../html/rsearch.tmpl:241 ../lib/XXV/MODULES/RECORDS.pm:1262 ../lib/XXV/MODULES/RECORDS.pm:1335 msgid "Duration" msgstr "Dauer" @@ -965,7 +955,7 @@ msgstr "Aufnahmeliste" #-------------------- #: ../html/rdisplay.tmpl:76 -msgid "You will delete this recording" +msgid "Do you really want to delete these recordings?" msgstr "Sie wollen wirklich diese Aufnahmen löschen" #-------------------- @@ -979,7 +969,7 @@ msgid "Cut recording" msgstr "Aufnahme schneiden" #-------------------- -#: ../html/rdisplay.tmpl:84 ../lib/XXV/MODULES/RECORDS.pm:1648 +#: ../html/rdisplay.tmpl:84 ../lib/XXV/MODULES/RECORDS.pm:1649 msgid "Edit recording" msgstr "Aufnahme bearbeiten" @@ -1009,13 +999,13 @@ msgid "Stored recordings" msgstr "Gespeicherte Aufnahmen" #-------------------- -#: ../html/rlist.tmpl:121 ../html/rsearch.tmpl:121 ../lib/XXV/MODULES/RECORDS.pm:116 +#: ../html/rlist.tmpl:121 ../html/rsearch.tmpl:121 ../lib/XXV/MODULES/RECORDS.pm:117 msgid "Update recordings" msgstr "Lese die Aufnahmeliste neu ein" #-------------------- #: ../html/rlist.tmpl:123 ../html/rsearch.tmpl:123 -msgid "You would delete follow recordings?" +msgid "Do you want to delete the following recordings?" msgstr "Wollen sie folgende Aufnahmen löschen?" #-------------------- @@ -1084,7 +1074,7 @@ msgid "Search in fields" msgstr "Suchfelder" #-------------------- -#: ../html/search.tmpl:27 ../html/search.tmpl:35 ../html/search.tmpl:42 ../lib/XXV/MODULES/MEDIALIB.pm:1320 +#: ../html/search.tmpl:27 ../html/search.tmpl:35 ../html/search.tmpl:42 ../lib/XXV/MODULES/MEDIALIB.pm:1321 msgid "All" msgstr "Alle" @@ -1105,7 +1095,7 @@ msgstr "Videoformat" #-------------------- #: ../html/search.tmpl:36 -msgid "16:9 Widescreen" +msgid "16:9 Wide screen" msgstr "16:9 Breitwandfilm" #-------------------- @@ -1150,14 +1140,14 @@ msgstr "Geplante Aufnahmen" #-------------------- #: ../html/tlist.tmpl:105 ../html/tsearch.tmpl:105 -msgid "Jump to program guide:" +msgid "Jump to program:" msgstr "Springe zum Programm:" #-------------------- #: ../html/tlist.tmpl:14 ../html/tsearch.tmpl:14 ../wml/tlist.tmpl:8 ../wml/tsearch.tmpl:8 #. (12) -msgid "Create a new timer" -msgstr "Neuen Timer anlegen" +msgid "Create new timer" +msgstr "Erzeuge neuen Timer" #-------------------- #: ../html/tlist.tmpl:17 ../html/tsearch.tmpl:17 ../wml/tlist.tmpl:11 ../wml/tsearch.tmpl:11 @@ -1171,8 +1161,8 @@ msgid "Toggle timer" msgstr "Timer umschalten" #-------------------- -#: ../html/tlist.tmpl:28 ../html/tsearch.tmpl:28 -msgid "You would delete follow timers?" +#: ../html/tlist.tmpl:28 ../html/tlist.tmpl:82 ../html/tsearch.tmpl:28 ../html/tsearch.tmpl:82 +msgid "Would You like to delete the following timer(s)?" msgstr "Sie wollen folgende Timer löschen?" #-------------------- @@ -1186,18 +1176,13 @@ msgid "Search for timers" msgstr "Suche nach Timern" #-------------------- -#: ../html/tlist.tmpl:82 ../html/tsearch.tmpl:82 -msgid "You will delete this timer" -msgstr "Soll dieser Timer gelöscht werden" - -#-------------------- #: ../html/tlist.tmpl:95 ../html/tsearch.tmpl:95 msgid "Not enough space to record this timer!" msgstr "Nicht genügend Kapazität um diesen Timer aufzunehmen!" #-------------------- #: ../html/topten.tmpl:11 -msgid "TopTen Entrys" +msgid "Top Ten entrys" msgstr "Die besten zehn Einträge" #-------------------- @@ -1217,28 +1202,28 @@ msgstr "Platzierung" #-------------------- #: ../html/ulist.tmpl:2 -msgid "Administration of User" +msgid "User administration" msgstr "Anwenderverwaltung" #-------------------- -#: ../html/ulist.tmpl:26 ../lib/XXV/MODULES/USER.pm:466 +#: ../html/ulist.tmpl:26 msgid "Edit account of user" -msgstr "Bearbeiten des Anwenderzugang" +msgstr "Anwenderzugang bearbeiten" #-------------------- #: ../html/ulist.tmpl:28 -msgid "Delete account of user" +msgid "Delete user account" msgstr "Lösche Anwenderzugang" #-------------------- #: ../html/ulist.tmpl:29 -msgid "You will delete this account of user" +msgid "Do you really want to delete this user account?" msgstr "Sie wollen wirklich diese Anwenderzugang löschen" #-------------------- -#: ../html/ulist.tmpl:4 ../lib/XXV/MODULES/USER.pm:467 ../lib/XXV/MODULES/USER.pm:72 -msgid "Create a new account for user" -msgstr "Erzeugt einen neuen Anwenderzugang" +#: ../html/ulist.tmpl:4 +msgid "Create new account for user" +msgstr "Erzeuge neuen Anwenderzugang" #-------------------- #: ../html/vitals.tmpl:46 @@ -1296,13 +1281,13 @@ msgid "Host does not exist!" msgstr "Rechnername ist unbekannt!" #-------------------- -#: ../html/widgets/menu.tmpl:4 ../lib/XXV/OUTPUT/Console.pm:149 +#: ../html/widgets/menu.tmpl:4 ../lib/XXV/OUTPUT/Console.pm:150 msgid "ERROR" msgstr "FEHLER" #-------------------- #: ../html/widgets/password.tmpl:9 -msgid "Entry again" +msgid "Repeat entry" msgstr "Eingabe wiederholen" #-------------------- @@ -1322,7 +1307,7 @@ msgstr "Monitor" #-------------------- #: ../html/widgets/remote.tmpl:61 -msgid "Powerdown" +msgid "Switch off" msgstr "Abschalten" #-------------------- @@ -1342,17 +1327,17 @@ msgstr "Erste Seite" #-------------------- #: ../html/widgets/vtx.tmpl:34 -msgid "Prior page" +msgid "Previous page" msgstr "Vorherige Seite" #-------------------- #: ../html/widgets/vtx.tmpl:35 -msgid "Prior subpage" +msgid "Prior sub page" msgstr "Vorherige Unterseite" #-------------------- #: ../html/widgets/vtx.tmpl:36 -msgid "Next subpage" +msgid "Next sub page" msgstr "Nächste Unterseite" #-------------------- @@ -1361,182 +1346,187 @@ msgid "Next page" msgstr "Nächste Seite" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:1000 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:1003 +msgid "Dir" +msgstr "Dir" + +#-------------------- +#: ../lib/XXV/MODULES/AUTOTIMER.pm:1004 msgid "Min" msgstr "Min" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:109 -msgid "Create event entries, if a new timer from autotimer created." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:110 +msgid "Create event entries if an autotimer has created a new timer." msgstr "Erzeuge Eventeinträge, wenn eine neuer Timer durch einen Autotimer erzeugt wurde." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:136 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:137 msgid "Autotimer('%s') found: %s" msgstr "Autotimer('%s') hat gefunden: %s" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:137 ../lib/XXV/MODULES/TIMERS.pm:153 ../lib/XXV/MODULES/TIMERS.pm:196 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:138 ../lib/XXV/MODULES/TIMERS.pm:154 ../lib/XXV/MODULES/TIMERS.pm:197 msgid "" -"At: %s to %s\n" +"On: %s to %s\n" "Description: %s" msgstr "" "Um: %s bis %s\n" "Beschreibung: %s" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:203 -msgid "Autotimer has %d new timer programmed, since last report at %s" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:204 +msgid "Autotimer has programmed %d new timer(s) since last report to %s" msgstr "Autotimer hat %d neuen Timer programmiert, seit letztem Report an %s" #-------------------- #: ../lib/XXV/MODULES/AUTOTIMER.pm:21 -msgid "This module search for epg entries with an user defined text and create new timer." +msgid "This module searches for EPG entries with user-defined text and creates new timers." msgstr "Diese Modul sucht nach EPG Einträgen mit nutzerdefinierten Texten und erzeugt neue Timer." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:28 ../lib/XXV/MODULES/CHRONICLE.pm:24 ../lib/XXV/MODULES/EVENTS.pm:31 ../lib/XXV/MODULES/HTTPD.pm:54 ../lib/XXV/MODULES/INTERFACE.pm:29 ../lib/XXV/MODULES/LOGREAD.pm:28 ../lib/XXV/MODULES/MEDIALIB.pm:30 ../lib/XXV/MODULES/MUSIC.pm:37 ../lib/XXV/MODULES/REMOTE.pm:24 ../lib/XXV/MODULES/REPORT.pm:26 ../lib/XXV/MODULES/ROBOT.pm:25 ../lib/XXV/MODULES/SHARE.pm:48 ../lib/XXV/MODULES/STATUS.pm:28 ../lib/XXV/MODULES/TELNET.pm:26 ../lib/XXV/MODULES/VTX.pm:24 ../lib/XXV/MODULES/WAPD.pm:39 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:66 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:30 ../lib/XXV/OUTPUT/NEWS/RSS.pm:29 ../lib/XXV/OUTPUT/NEWS/VDR.pm:26 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:29 ../lib/XXV/MODULES/CHRONICLE.pm:25 ../lib/XXV/MODULES/EVENTS.pm:32 ../lib/XXV/MODULES/HTTPD.pm:55 ../lib/XXV/MODULES/INTERFACE.pm:30 ../lib/XXV/MODULES/LOGREAD.pm:29 ../lib/XXV/MODULES/MEDIALIB.pm:31 ../lib/XXV/MODULES/MUSIC.pm:38 ../lib/XXV/MODULES/REMOTE.pm:25 ../lib/XXV/MODULES/REPORT.pm:27 ../lib/XXV/MODULES/ROBOT.pm:26 ../lib/XXV/MODULES/SHARE.pm:49 ../lib/XXV/MODULES/STATUS.pm:29 ../lib/XXV/MODULES/TELNET.pm:27 ../lib/XXV/MODULES/VTX.pm:25 ../lib/XXV/MODULES/WAPD.pm:40 ../lib/XXV/OUTPUT/NEWS/JABBER.pm:67 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:31 ../lib/XXV/OUTPUT/NEWS/RSS.pm:30 ../lib/XXV/OUTPUT/NEWS/VDR.pm:27 msgid "Activate this service" msgstr "Aktiviere diesen Dienst" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:329 -msgid "Look for autotimer ..." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:330 +msgid "Searching for autotimer ..." msgstr "Schaue nach Autotimer ..." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:34 -msgid "Exclude channel list for autotimer." -msgstr "Schliesse Kanäle von Autotimer aus." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:345 ../lib/XXV/MODULES/AUTOTIMER.pm:350 +msgid "Search for autotimer with ID(%d) with search pattern '%s'" +msgstr "Schaue nach Autotimer mit ID(%d) mit Suchmuster '%s'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:344 ../lib/XXV/MODULES/AUTOTIMER.pm:349 -msgid "Look for autotimer with ID(%d) with search '%s'" -msgstr "Schaue nach Autotimer mit ID(%d) mit Suchmuster '%s'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:35 +msgid "Exclude channels from autotimer" +msgstr "Schliesse Kanäle von Autotimer aus." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:357 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:358 msgid "Found %d entries for '%s' in EPG database." msgstr "%d Einträge für '%s' in EPG Datenbank gefunden." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:363 ../lib/XXV/MODULES/CHRONICLE.pm:163 ../lib/XXV/MODULES/CHRONICLE.pm:203 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:364 ../lib/XXV/MODULES/CHRONICLE.pm:164 ../lib/XXV/MODULES/CHRONICLE.pm:204 ../lib/XXV/MODULES/TIMERS.pm:1076 msgid "Day" msgstr "Tag" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:438 -msgid "Can't save timer for '%s' : %s" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:439 +msgid "Could not save timer for '%s' : %s" msgstr "Konnte Timer für '%s' nicht speichern : %s" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:443 -msgid "Modify timer for '%s'." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:444 +msgid "Modified timer for '%s'." msgstr "Timer für '%s' modifiziert." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:447 -msgid "Create timer for '%s'." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:448 +msgid "Timer for '%s' has been created." msgstr "Timer für '%s' erzeugt." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:455 -msgid "Create %d timer for '%s'." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:456 +msgid "Created %d timer for '%s'." msgstr "%d Timer für '%s' erzeugt. " #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:464 -msgid "Modify %d timer for '%s'." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:465 +msgid "Modified %d timer for '%s'." msgstr "%d Timer für '%s' modifiziert." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:474 -msgid "Read new timer in data base." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:475 +msgid "Read new timers into database." msgstr "Lese neue Timer in Datenbank." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:486 -msgid "Autotimer process has %d timers created and %d timers modified." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:487 +msgid "Autotimer process created %d timers and modified %d timers." msgstr "Autotimervorgang hat %d Timer erzeugt und %d Timer modifiziert." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:49 -msgid "Status from autotimers" -msgstr "Status der Autotimer" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:491 +msgid "Back to autotimer listing." +msgstr "Zurück zur Autotimer Liste" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:490 -msgid "Back to autotimer list" -msgstr "Zurück zur Autotimer Liste" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:50 +msgid "Display status of autotimers." +msgstr "Status der Autotimer anzeigen." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:532 ../lib/XXV/MODULES/AUTOTIMER.pm:891 ../lib/XXV/MODULES/AUTOTIMER.pm:921 ../lib/XXV/MODULES/AUTOTIMER.pm:930 -msgid "Autotimer with ID '%s' does not exist in the database!" -msgstr "Der Autotimer mit ID '%s' existiert nicht in der Datenbank." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:533 ../lib/XXV/MODULES/AUTOTIMER.pm:895 ../lib/XXV/MODULES/AUTOTIMER.pm:925 ../lib/XXV/MODULES/AUTOTIMER.pm:934 +msgid "The autotimer '%s' does not exist in the database." +msgstr "Der Autotimer '%s' existiert nicht in der Datenbank." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:552 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:553 msgid "Mon" msgstr "Mo" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:553 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:554 msgid "Tue" msgstr "Di" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:554 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:555 msgid "Wed" msgstr "Mi" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:555 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:556 msgid "Thu" msgstr "Do" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:556 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:557 msgid "Fri" msgstr "Fr" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:557 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:558 msgid "Sat" msgstr "Sa" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:558 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:559 msgid "Sun" msgstr "So" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:568 ../wml/tlist.tmpl:26 ../wml/tlist.tmpl:67 ../wml/tsearch.tmpl:26 ../wml/tsearch.tmpl:67 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:569 ../wml/tlist.tmpl:26 ../wml/tlist.tmpl:67 ../wml/tsearch.tmpl:26 ../wml/tsearch.tmpl:67 msgid "Timer" msgstr "Timer" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:569 -msgid "Exist recording" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:570 +msgid "Existing recording" msgstr "Vorhandene Aufnahme" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:570 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:571 msgid "Recording chronicle" msgstr "Aufnahmechronik" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:587 -msgid "Switch this autotimer on?" -msgstr "Aktiviere diesen Autotimer?" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:588 +msgid "Activate this autotimer" +msgstr "Aktiviere diesen Autotimer" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:588 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:593 msgid "" -"Search terms to look for EPG entries.\n" -"You can also improve your searches :\n" -"* by adding 'operators' to your search terms like 'AND', 'OR', 'AND NOT' e.g. 'today AND NOT tomorrow'\n" -"* by comma seperated multiply search terms e.g. 'today,tomorrow'\n" -"* by minus sign to exclude search terms e.g. 'today,-tomorrow'" +"Search terms to search for EPG entries.\n" +"You can also fine tune your search :\n" +"* by adding 'operators' to your search terms such as 'AND', 'OR', 'AND NOT' e.g. 'today AND NOT tomorrow'\n" +"* by comma-separated search terms e.g. 'today,tomorrow'\n" +"* by a hyphen to exclude search terms e.g. 'today,-tomorrow'" msgstr "" "Begriffe zum Suchen nach EPG Einträgen.\n" "Die Suche kann auch verfeinert werden :\n" @@ -1545,218 +1535,223 @@ msgstr "" "* durch ein Minuszeichen zum Ausschliessen von Suchbegriffen z.B. 'Heute,-Morgen'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:597 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:601 msgid "Search in this EPG fields" msgstr "Suche in diesen EPG-Feldern" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:618 ../lib/XXV/MODULES/AUTOTIMER.pm:668 ../lib/XXV/MODULES/AUTOTIMER.pm:745 ../lib/XXV/MODULES/USER.pm:393 ../lib/XXV/MODULES/USER.pm:400 ../lib/XXV/MODULES/USER.pm:416 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:622 ../lib/XXV/MODULES/AUTOTIMER.pm:672 ../lib/XXV/MODULES/AUTOTIMER.pm:749 ../lib/XXV/MODULES/USER.pm:394 ../lib/XXV/MODULES/USER.pm:401 ../lib/XXV/MODULES/USER.pm:417 msgid "You can choose: %s!" msgstr "Sie können wählen: %s!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:62 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:63 msgid "Delete a autotimer 'aid'" msgstr "Löschen eines Autotimer 'aid'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:633 -msgid "Restrict search to this channels" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:637 +msgid "Limit search to these channels" msgstr "Begrenze Suche auf diese Kanäle" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:641 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:645 msgid "The channel '%s' does not exist!" msgstr "Der Kanal '%s' existiert nicht!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:648 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:652 msgid "Ignore retries with same title?" msgstr "Ignoriere Wiederholungen mit gleichen Titel?" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:684 ../lib/XXV/MODULES/TIMERS.pm:637 -msgid "Starttime in format 'HH:MM'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:688 ../lib/XXV/MODULES/TIMERS.pm:638 +msgid "Start time in format 'HH:MM'" msgstr "Startzeit im Format 'HH:MM'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:687 -msgid "You set a start-time without a stop-time!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:691 +msgid "You set a start time without an end time!" msgstr "Startzeitpunkt ohne Stoppzeitpunkt definiert!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:69 -msgid "Edit a autotimer 'aid'" -msgstr "Editieren eines Autotimer 'aid'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:695 ../lib/XXV/MODULES/AUTOTIMER.pm:701 ../lib/XXV/MODULES/AUTOTIMER.pm:718 ../lib/XXV/MODULES/AUTOTIMER.pm:724 ../lib/XXV/MODULES/TIMERS.pm:642 ../lib/XXV/MODULES/TIMERS.pm:648 ../lib/XXV/MODULES/TIMERS.pm:661 ../lib/XXV/MODULES/TIMERS.pm:667 +msgid "The time is incorrect!" +msgstr "Die Zeit ist nicht korrekt!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:691 ../lib/XXV/MODULES/AUTOTIMER.pm:697 ../lib/XXV/MODULES/AUTOTIMER.pm:714 ../lib/XXV/MODULES/AUTOTIMER.pm:720 ../lib/XXV/MODULES/TIMERS.pm:641 ../lib/XXV/MODULES/TIMERS.pm:647 ../lib/XXV/MODULES/TIMERS.pm:660 ../lib/XXV/MODULES/TIMERS.pm:666 -msgid "No right time!" -msgstr "Die Zeit ist nicht korrekt!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:70 +msgid "Edit an autotimer 'aid'" +msgstr "Editieren eines Autotimer 'aid'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:707 ../lib/XXV/MODULES/TIMERS.pm:656 -msgid "Endtime in format 'HH:MM'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:711 ../lib/XXV/MODULES/TIMERS.pm:657 +msgid "End time in format 'HH:MM'" msgstr "Endzeit im Format 'HH:MM'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:710 -msgid "You set a stop-time without a start-time!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:714 +msgid "You set an end time without a start time!" msgstr "Stoppzeitpunkt ohne Startzeitpunkt definiert!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:725 -msgid "Search only on this weekdays" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:729 +msgid "Only search these weekdays" msgstr "Suche nur an diesen Wochentagen" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:758 -msgid "Activate VPS for new timer?" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:762 +msgid "Activate VPS for new timers" msgstr "Aktiviere VPS für neue Timer" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:76 -msgid "Search for autotimer with text 'aid'" -msgstr "Suche nach Autotimer mit Text 'aid'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:766 ../lib/XXV/MODULES/TIMERS.pm:32 +msgid "Buffer time in minutes before the scheduled start of a recording" +msgstr "Pufferzeit in Minuten, vor dem zeitlichen Anfang der Aufnahme." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:762 ../lib/XXV/MODULES/TIMERS.pm:31 -msgid "Buffer time in minutes before the scheduled end of the recorded program." -msgstr "Pufferzeit in Minuten, vor dem zeitlichen Anfang der Aufnahme." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:77 +msgid "Search for autotimer with text 'aid'" +msgstr "Suche nach Autotimer mit Text 'aid'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:770 ../lib/XXV/MODULES/AUTOTIMER.pm:784 ../lib/XXV/MODULES/AUTOTIMER.pm:797 ../lib/XXV/MODULES/AUTOTIMER.pm:813 ../lib/XXV/MODULES/AUTOTIMER.pm:829 ../lib/XXV/MODULES/CHANNELS.pm:663 ../lib/XXV/MODULES/CHANNELS.pm:694 ../lib/XXV/MODULES/CHANNELS.pm:733 ../lib/XXV/MODULES/CHANNELS.pm:746 ../lib/XXV/MODULES/CHANNELS.pm:772 ../lib/XXV/MODULES/CHANNELS.pm:798 ../lib/XXV/MODULES/CHANNELS.pm:811 ../lib/XXV/MODULES/CHANNELS.pm:824 ../lib/XXV/MODULES/CHANNELS.pm:837 ../lib/XXV/MODULES/RECORDS.pm:1589 ../lib/XXV/MODULES/RECORDS.pm:1603 ../lib/XXV/MODULES/TIMERS.pm:682 ../lib/XXV/MODULES/TIMERS.pm:698 -msgid "No right Value!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:774 ../lib/XXV/MODULES/AUTOTIMER.pm:788 ../lib/XXV/MODULES/AUTOTIMER.pm:801 ../lib/XXV/MODULES/AUTOTIMER.pm:817 ../lib/XXV/MODULES/AUTOTIMER.pm:833 ../lib/XXV/MODULES/CHANNELS.pm:664 ../lib/XXV/MODULES/CHANNELS.pm:695 ../lib/XXV/MODULES/CHANNELS.pm:734 ../lib/XXV/MODULES/CHANNELS.pm:747 ../lib/XXV/MODULES/CHANNELS.pm:773 ../lib/XXV/MODULES/CHANNELS.pm:799 ../lib/XXV/MODULES/CHANNELS.pm:812 ../lib/XXV/MODULES/CHANNELS.pm:825 ../lib/XXV/MODULES/CHANNELS.pm:838 ../lib/XXV/MODULES/RECORDS.pm:1590 ../lib/XXV/MODULES/RECORDS.pm:1604 ../lib/XXV/MODULES/TIMERS.pm:683 ../lib/XXV/MODULES/TIMERS.pm:699 +msgid "Value incorrect!" msgstr "Der Wert ist nicht korrekt!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:776 ../lib/XXV/MODULES/TIMERS.pm:36 -msgid "Buffer time in minutes after the scheduled end of the recorded program." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:780 ../lib/XXV/MODULES/TIMERS.pm:37 +msgid "Buffer time in minutes past the scheduled end of a recording" msgstr "Pufferzeit in Minuten, nach dem zeitlichen Ende der Aufnahme." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:790 -msgid "Minimum length in minutes" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:794 +msgid "Minimum play time in minutes" msgstr "Mindestlänge in Minuten" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:803 ../lib/XXV/MODULES/TIMERS.pm:672 -msgid "Priority (0 .. %d)" -msgstr "Priorität (0 .. %d)" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:807 ../lib/XXV/MODULES/RECORDS.pm:1597 ../lib/XXV/MODULES/TIMERS.pm:673 +msgid "Priority (%d ... %d)" +msgstr "Priorität (%d ... %d)" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:809 ../lib/XXV/MODULES/TIMERS.pm:678 -msgid "Sorry, but maximum priority is limited on %d!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:813 ../lib/XXV/MODULES/TIMERS.pm:679 +msgid "Sorry, but the maximum priority is limited to %d!" msgstr "Entschuldigung, aber die maximale Priorität ist auf %d begrenzt!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:819 ../lib/XXV/MODULES/TIMERS.pm:688 -msgid "Lifetime (0 .. %d)" -msgstr "Lebenszeit (0 .. %d)" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:823 ../lib/XXV/MODULES/RECORDS.pm:1583 ../lib/XXV/MODULES/TIMERS.pm:689 +msgid "Lifetime (%d ... %d)" +msgstr "Lebenszeit (%d ... %d)" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:82 -msgid "List the autotimer 'aid'" -msgstr "Zeige Autotimer 'aid'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:829 ../lib/XXV/MODULES/TIMERS.pm:695 +msgid "Sorry, but the maximum life time is limited to %d!" +msgstr "Entschuldigung, aber die maximale Lebenszeit ist auf %d begrenzt!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:825 ../lib/XXV/MODULES/TIMERS.pm:694 -msgid "Sorry, but maximum lifetime is limited on %d!" -msgstr "Entschuldigung, aber die maximale Lebenszeit ist auf %d begrenzt!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:83 +msgid "Show autotimer 'aid'" +msgstr "Zeige Autotimer 'aid'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:835 -msgid "Group all recordings on a directory" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:839 +msgid "Group all recordings into one directory" msgstr "Gruppiere alle Aufnahmen in einem Verzeichnis" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:849 -msgid "Nothing to search defined!" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:853 +msgid "Nothing defined for this search!" msgstr "Nicht's zum Suchen definiert" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:857 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:861 msgid "Autotimer saved!" msgstr "Autotimer gespeichert!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:866 -msgid "Back to referred side" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:870 +msgid "Back to previous page." msgstr "Zurück zur aufrufenden Seite" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:883 -msgid "No ID for autotimer to delete! Please use adelete 'aid'" -msgstr "Kein ID eines Autotimer zum Löschen definiert! Bitte verwende adelete 'aid'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:887 +msgid "No autotimer defined to delete! Please use adelete 'aid'!" +msgstr "Kein Autotimer zum Löschen definiert! Bitte verwende adelete 'aid'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:895 -msgid "Autotimer %s is deleted." +#: ../lib/XXV/MODULES/AUTOTIMER.pm:89 +msgid "Start autotimer search." +msgstr "Autotimersuche durchführen" + +#-------------------- +#: ../lib/XXV/MODULES/AUTOTIMER.pm:899 +msgid "Autotimer %s deleted." msgstr "Autotimer %s wurde gelöscht." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:913 -msgid "No ID for autotimer to toggle! Please use atoggle 'aid'" +#: ../lib/XXV/MODULES/AUTOTIMER.pm:917 +msgid "No autotimer defined to toggle! Please use atoggle 'aid'!" msgstr "Kein ID eines Autotimer zum Umschalten definiert! Bitte verwende atoggle 'aid'" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:940 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:944 msgid "Can't toggle autotimer with ID '%s'!" msgstr "Konnte Autotimer mit ID '%s' nicht umschalten!" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:95 -msgid "Toggle autotimer on or off 'aid'" -msgstr "Umschalten der Autotimer zwischen Ein und Aus 'aid'" - -#-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:951 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:955 msgid "disabled" msgstr "Deaktiviert" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:952 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:956 msgid "activated" msgstr "Aktiviert" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:953 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:957 msgid "Autotimer %s is %s." msgstr "Autotimer %s ist %s." #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:994 +#: ../lib/XXV/MODULES/AUTOTIMER.pm:96 +msgid "Toggle autotimer on or off 'aid'" +msgstr "Umschalten der Autotimer zwischen Ein und Aus 'aid'" + +#-------------------- +#: ../lib/XXV/MODULES/AUTOTIMER.pm:998 msgid "Act" msgstr "Akt" #-------------------- -#: ../lib/XXV/MODULES/AUTOTIMER.pm:999 -msgid "Dir" -msgstr "Dir" +#: ../lib/XXV/MODULES/CHANNELS.pm:1000 +msgid "Radio" +msgstr "Radio" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:1002 +#: ../lib/XXV/MODULES/CHANNELS.pm:1003 msgid "(encrypted)" msgstr "(verschlüsselt)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:1008 -msgid "Discover %d new channels!" +#: ../lib/XXV/MODULES/CHANNELS.pm:1009 +msgid "Found %d new channels!" msgstr "%d neue Kanäle gefunden!" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:103 -msgid "Edit a channel 'cid'" +#: ../lib/XXV/MODULES/CHANNELS.pm:104 +msgid "Edits a channel 'cid'" msgstr "Bearbeitet einen Kanal 'cid'" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:110 -msgid "Delete one or more channels 'pos'" +#: ../lib/XXV/MODULES/CHANNELS.pm:111 +msgid "Deletes one or more channels 'pos'" msgstr "Löscht einen oder mehrere Kanäle 'pos'" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:136 -msgid "The system has %d saved Channels in %d Groups" +#: ../lib/XXV/MODULES/CHANNELS.pm:137 +msgid "The system has saved %d channels from %d groups" msgstr "Das System hat %d Kanäle aus %d Gruppen gespeichert" #-------------------- @@ -1765,344 +1760,339 @@ msgid "This module reads new channels and stores them in the database." msgstr "Dieses Modul list neue Kanäle und speichert sie in der Datenbank." #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:25 -msgid "Location of channels.conf on your system." -msgstr "Pfad der channels.conf auf dem System" +#: ../lib/XXV/MODULES/CHANNELS.pm:26 ../lib/XXV/MODULES/LOGREAD.pm:47 ../lib/XXV/MODULES/RECORDS.pm:34 ../lib/XXV/MODULES/REMOTE.pm:37 +msgid "Path of file '%s'" +msgstr "Pfad der Datei '%s'" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:31 +#: ../lib/XXV/MODULES/CHANNELS.pm:32 msgid "How often channels are to be updated (in seconds)" msgstr "Wie oft sollen Kanäle aktualisiert werden (in Sekunden)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:37 -msgid "Include channels with empty PID" +#: ../lib/XXV/MODULES/CHANNELS.pm:38 +msgid "Insert channels with blank PID" msgstr "Kanäle mit leerer PID einfügen" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:389 +#: ../lib/XXV/MODULES/CHANNELS.pm:390 msgid "Write %d channels into database." msgstr "Schreibe %d Kanäle in die Datenbank" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:42 -msgid "Filter channels, set all wanted CA(Common Access)" +#: ../lib/XXV/MODULES/CHANNELS.pm:43 +msgid "Filter channel list, set all wanted CA (Common Access)" msgstr "Filter Kanalliste, setze alle gesuche CA(Common Access)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:51 -msgid "Free to air" +#: ../lib/XXV/MODULES/CHANNELS.pm:52 +msgid "Free-to-air" msgstr "Frei empfangbar" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:55 +#: ../lib/XXV/MODULES/CHANNELS.pm:56 msgid "DVB card %s" msgstr "DVB Karte %s" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:641 +#: ../lib/XXV/MODULES/CHANNELS.pm:642 ../lib/XXV/MODULES/CHANNELS.pm:942 msgid "Channel '%s' does not exist in the database!" -msgstr "Kanal '%s' existiert nicht in der Datenbank!" +msgstr "Der Kanal '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:656 +#: ../lib/XXV/MODULES/CHANNELS.pm:657 msgid "Position" msgstr "Position" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:674 ../lib/XXV/MODULES/CHANNELS.pm:846 +#: ../lib/XXV/MODULES/CHANNELS.pm:675 ../lib/XXV/MODULES/CHANNELS.pm:847 msgid "New channel" msgstr "Neuer Kanal" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:701 +#: ../lib/XXV/MODULES/CHANNELS.pm:702 msgid "Signal source" msgstr "Signalquelle" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:71 -msgid "Clean channel names, only the 'long' part is visible." +#: ../lib/XXV/MODULES/CHANNELS.pm:72 +msgid "Cleans out channel names, only the 'long' part is visible." msgstr "Bereinigt Kanalnamen, nur Teil 'long' ist sichtbar" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:791 +#: ../lib/XXV/MODULES/CHANNELS.pm:792 msgid "Service ID (SID)" msgstr "Service ID (SID)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:804 +#: ../lib/XXV/MODULES/CHANNELS.pm:805 msgid "Network ID (NID)" msgstr "Netzwerk ID (NID)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:817 +#: ../lib/XXV/MODULES/CHANNELS.pm:818 msgid "Transport stream ID (TID)" msgstr "Transport stream ID (TID)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:83 -msgid "Read channels and write them into database" -msgstr "Lese Kanäle und schreibe sie in die Datenbank" - -#-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:830 +#: ../lib/XXV/MODULES/CHANNELS.pm:831 msgid "Radio ID (RID)" msgstr "Radio ID (RID)" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:90 -msgid "List Channels from database 'cname'" -msgstr "Zeige Kanäle der Datenbank 'cname'" +#: ../lib/XXV/MODULES/CHANNELS.pm:84 +msgid "Read channels and write them to the database" +msgstr "Lese Kanäle und schreibe sie in die Datenbank" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:928 -msgid "No channel to delete! Please use cdelete 'pos'" -msgstr "Kanal zu löschen definiert! Bitte verwende cdelete 'pos'" +#: ../lib/XXV/MODULES/CHANNELS.pm:91 +msgid "List channels from database 'cname'" +msgstr "Zeige Kanäle der Datenbank 'cname'" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:941 -msgid "Channel with number '%s' does not exist in database!" -msgstr "Der Kanal mit der Nummer '%s' existiert nicht in der Datenbank!" +#: ../lib/XXV/MODULES/CHANNELS.pm:929 +msgid "No channel defined for deletion! Please use cdelete 'pos'!" +msgstr "Kanal zu löschen definiert! Bitte verwende cdelete 'pos'" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:950 -msgid "Are you sure to delete this channel?" +#: ../lib/XXV/MODULES/CHANNELS.pm:951 +msgid "Do you want to delete this channel?" msgstr "Wollen sie diesen Kanal wirklich löschen?" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:975 -msgid "No channel to delete!" +#: ../lib/XXV/MODULES/CHANNELS.pm:976 +msgid "No channel defined for deletion!" msgstr "Kein Kanal zum Löschen definiert!" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:996 +#: ../lib/XXV/MODULES/CHANNELS.pm:997 msgid "New %s channel: %s on position: %d %s" msgstr "Neuer %s Kanal: %s auf Position: %d %s" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:998 +#: ../lib/XXV/MODULES/CHANNELS.pm:999 msgid "TV" msgstr "TV" #-------------------- -#: ../lib/XXV/MODULES/CHANNELS.pm:999 -msgid "Radio" -msgstr "Radio" - -#-------------------- #: ../lib/XXV/MODULES/CHRONICLE.pm:18 -msgid "This module store recordings at chronicle." +msgid "This module saves recordings in a chronicle." msgstr "Dieses Modul speichert Aufnahmen in einer Chronik." #-------------------- -#: ../lib/XXV/MODULES/CHRONICLE.pm:193 -msgid "No 'text' to search! Please use chrsearch 'text'" +#: ../lib/XXV/MODULES/CHRONICLE.pm:194 +msgid "No 'string' to search for! Please use chrsearch 'text'." msgstr "Kein 'Text' zum Suchen! Bitte verwende chrsearch 'text'" #-------------------- -#: ../lib/XXV/MODULES/CHRONICLE.pm:237 +#: ../lib/XXV/MODULES/CHRONICLE.pm:238 msgid "No ID to delete! Please use chrdelete 'id'" msgstr "Kein ID zum Löschen! Bitte verwende chrdelete 'id'" #-------------------- -#: ../lib/XXV/MODULES/CHRONICLE.pm:32 +#: ../lib/XXV/MODULES/CHRONICLE.pm:33 msgid "List recording chronicle" msgstr "Zeige Aufnahmechronik" #-------------------- -#: ../lib/XXV/MODULES/CHRONICLE.pm:38 -msgid "Search at chronicle for 'text'" +#: ../lib/XXV/MODULES/CHRONICLE.pm:39 +msgid "Search chronicle for 'text'." msgstr "Suche in der Chronik nach 'Text'" #-------------------- -#: ../lib/XXV/MODULES/CHRONICLE.pm:44 -msgid "Delete at chronicle with 'id'" +#: ../lib/XXV/MODULES/CHRONICLE.pm:45 +msgid "Delete within chronicle with 'ID'" msgstr "Lösche in der Chronik mit 'ID'" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:101 ../lib/XXV/MODULES/CONFIG.pm:30 -msgid "Write configuration" +#: ../lib/XXV/MODULES/CONFIG.pm:102 ../lib/XXV/MODULES/CONFIG.pm:31 +msgid "Saves the configuration." msgstr "Speichert Konfiguration" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:124 ../lib/XXV/MODULES/CONFIG.pm:205 -msgid "Sorry, but the section %s does not exist in configuration!" +#: ../lib/XXV/MODULES/CONFIG.pm:125 ../lib/XXV/MODULES/CONFIG.pm:206 +msgid "Sorry, but section %s does not exist in the configuration!" msgstr "Verzeihung, aber der Abschnitt %s existiert nicht in der Konfiguration!" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:129 -msgid "Sorry, but the 'Preferences' in Module: %s do not exist" +#: ../lib/XXV/MODULES/CONFIG.pm:130 +msgid "Sorry, but the settings in module: %s do not exist!" msgstr "Verzeihung, aber die Einstellungen in Modul: %s existieren nicht" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:140 -msgid "No Description" +#: ../lib/XXV/MODULES/CONFIG.pm:141 +msgid "No description" msgstr "Keine Beschreibung" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:150 +#: ../lib/XXV/MODULES/CONFIG.pm:151 msgid "%s manual" msgstr "%s Dokumentation" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:153 -msgid "Change %s configuration" +#: ../lib/XXV/MODULES/CONFIG.pm:154 +msgid "Edit configuration %s" msgstr "Konfiguration %s bearbeiten" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:165 -msgid "Sector: '%s' save .. please wait." +#: ../lib/XXV/MODULES/CONFIG.pm:166 +msgid "Section: '%s' saving ... please wait." msgstr "Abschnitt: '%s' speichere .. bitte warten." #-------------------- #: ../lib/XXV/MODULES/CONFIG.pm:18 -msgid "This module edit, write and reconfigure the configuration." +msgid "This module edits, writes and saves the configuration." msgstr "Dieses Modul bearbeitet, schreibt und übernimmt die Konfiguration." #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:183 -msgid "Configuration written in '%s'." +#: ../lib/XXV/MODULES/CONFIG.pm:184 +msgid "Configuration written to '%s'." msgstr "Konfiguration nach '%s' geschrieben." #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:198 -msgid "I need a name of the module, in order to indicate the configuration!" +#: ../lib/XXV/MODULES/CONFIG.pm:199 +msgid "Need a name of the module to display the configuration!" msgstr "Ich benötige einen Namen des Moduls um die Konfiguration anzuzeigen!" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:25 -msgid "Edit configuration 'sector'" -msgstr "Konfiguration bearbeiten 'Abschnitt'" +#: ../lib/XXV/MODULES/CONFIG.pm:252 +msgid "Cannot find %s in %s!" +msgstr "Bearbeiten war erfolgreich" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:251 -msgid "Strange, i can not find %s in %s" -msgstr "Seltsam, %s kann in %s nicht gefunden werden" +#: ../lib/XXV/MODULES/CONFIG.pm:26 +msgid "Edit configuration 'section'" +msgstr "Konfiguration bearbeiten 'Abschnitt'" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:260 -msgid "Reconfigure successfully" -msgstr "Bearbeiten war erfolgreich" +#: ../lib/XXV/MODULES/CONFIG.pm:261 +msgid "Edit successful!" +msgstr "Bearbeiten war erfolgreich!" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:35 +#: ../lib/XXV/MODULES/CONFIG.pm:36 msgid "Get configuration from 'modname'" msgstr "Hole die Konfiguration von 'modname'" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:40 -msgid "Reconfigure all Processes" +#: ../lib/XXV/MODULES/CONFIG.pm:41 +msgid "Edit all processes" msgstr "Bearbeite alle Prozesse" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:83 -msgid "Preferences for XXV" +#: ../lib/XXV/MODULES/CONFIG.pm:84 +msgid "Settings for XXV" msgstr "Einstellungen für XXV" #-------------------- -#: ../lib/XXV/MODULES/CONFIG.pm:97 -msgid "Reconfigure" +#: ../lib/XXV/MODULES/CONFIG.pm:98 +msgid "Save configuration" msgstr "Übernehme Konfiguration" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:155 -msgid "EPG table contains %d entries and since the last login at %s %d new entries" +#: ../lib/XXV/MODULES/EPG.pm:156 +msgid "EPG table contains %d entries and since the last login on %s %d new entries." msgstr "Die EPG Tabelle enthält %d Einträge und seit dem letzten Anmeldung am %s, %d neue Einträge" #-------------------- #: ../lib/XXV/MODULES/EPG.pm:20 -msgid "This module reads new EPG Data and stores them in the database." +msgid "This module reads new EPG data and saves it to the database." msgstr "Dieses Modul liest neue EPG-Daten und speichert sie in der Datenbank." #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:268 +#: ../lib/XXV/MODULES/EPG.pm:269 msgid "Read EPG data ..." msgstr "Lese EPG Daten" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:27 +#: ../lib/XXV/MODULES/EPG.pm:28 msgid "Location of additional EPG images." msgstr "Position von zusätzlichen EPG Bildern." #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:298 +#: ../lib/XXV/MODULES/EPG.pm:299 msgid "%d events in database updated." msgstr "Es wurden %d Einträge in Datenbank aktualisiert." #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:32 +#: ../lib/XXV/MODULES/EPG.pm:33 msgid "How often EPG data are to be analyzed (in seconds)" msgstr "Wie oft sollen EPG Daten analysiert werden (in Sekunden)" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:351 +#: ../lib/XXV/MODULES/EPG.pm:352 msgid "Analyze channel '%s'" msgstr "Untersuche Kanal '%s'" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:38 -msgid "Pre-defined list for the 'Running Now' view (comma separated list)" +#: ../lib/XXV/MODULES/EPG.pm:39 +msgid "Preferred program times. (eg. 12:00, 18:00)" msgstr "Die bevorzugten Programmzeiten (Kommagetrenne Liste)" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:44 +#: ../lib/XXV/MODULES/EPG.pm:45 msgid "How much hours to display in schema" msgstr "Wieviel im Schema anzuzeigen Stunden" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:506 -msgid "No Title" +#: ../lib/XXV/MODULES/EPG.pm:507 +msgid "No title" msgstr "Kein Titel" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:52 -msgid "Search in EPG Data" +#: ../lib/XXV/MODULES/EPG.pm:53 +msgid "Search within EPG data" msgstr "Suche in EPG-Daten" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:57 +#: ../lib/XXV/MODULES/EPG.pm:58 msgid "List program for channel 'channel name'" msgstr "Zeige Programm für Kanal 'Kanalname'" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:62 -msgid "Show program event 'eventid'" +#: ../lib/XXV/MODULES/EPG.pm:63 +msgid "Show program 'eventid'" msgstr "Zeige Sendung 'eventid'" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:67 -msgid "Display events is running now" -msgstr "Zeigt Sendungen, welche aktuell laufen." - -#-------------------- -#: ../lib/XXV/MODULES/EPG.pm:677 ../lib/XXV/MODULES/EPG.pm:680 +#: ../lib/XXV/MODULES/EPG.pm:678 ../lib/XXV/MODULES/EPG.pm:681 msgid "This channel '%s' does not exist in the database!" msgstr "Dieser Kanal '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:72 -msgid "Display events is running next" -msgstr "Zeigt Sendungen, welche als nächstes laufen." +#: ../lib/XXV/MODULES/EPG.pm:68 +msgid "Display events currently showing." +msgstr "Zeigt Sendungen, welche aktuell laufen." #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:725 -msgid "No EventID to display the Event Programm! Please use display 'eventid'" +#: ../lib/XXV/MODULES/EPG.pm:726 +msgid "No ID defined to display this program! Please use display 'eid'!" msgstr "Keine ID einer Sendung, zur Anzeige dieses Programmes, definiert! Bitte verwende display 'eid'" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:77 +#: ../lib/XXV/MODULES/EPG.pm:73 +msgid "Display events showing next." +msgstr "Zeigt Sendungen, welche als nächstes laufen." + +#-------------------- +#: ../lib/XXV/MODULES/EPG.pm:78 msgid "Display events in a schematic way" msgstr "Zeigt Sendungen in einer übersichtlichen Weise" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:780 -msgid "No data for event '%d' present to display!" +#: ../lib/XXV/MODULES/EPG.pm:781 +msgid "No data to display for event '%d'!" msgstr "Keine Daten für Eintrag '%d' zum Anzeigen vorhanden!" #-------------------- -#: ../lib/XXV/MODULES/EPG.pm:97 -msgid "Display the epg event running in vdr" -msgstr "Zeigt die Sendung die im VDR läuft" +#: ../lib/XXV/MODULES/EPG.pm:83 +msgid "Update EPG data." +msgstr "Aktualisiere EPG Daten" + +#-------------------- +#: ../lib/XXV/MODULES/EPG.pm:98 +msgid "Display the current program running in the VDR" +msgstr "Zeigt die Sendung, die im VDR läuft" #-------------------- #: ../lib/XXV/MODULES/EVENTS.pm:20 @@ -2115,17 +2105,17 @@ msgid "" msgstr "" #-------------------- -#: ../lib/XXV/MODULES/EVENTS.pm:39 +#: ../lib/XXV/MODULES/EVENTS.pm:40 msgid "Display the event list" msgstr "Zeigt die Liste der Ereignisse" #-------------------- -#: ../lib/XXV/MODULES/EVENTS.pm:45 +#: ../lib/XXV/MODULES/EVENTS.pm:46 msgid "Edit a event" msgstr "Ereignis bearbeiten" #-------------------- -#: ../lib/XXV/MODULES/EVENTS.pm:51 +#: ../lib/XXV/MODULES/EVENTS.pm:52 msgid "Change a event on or off" msgstr "Ändere ein Ereignis zwischen ein/aus" @@ -2135,63 +2125,63 @@ msgid "This module grab a picture from livestream." msgstr "Dieses Modul holt einen Screenshot von der DVB Karte per SVDRP" #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:26 +#: ../lib/XXV/MODULES/GRAB.pm:27 msgid "Image width" msgstr "Bildbreite" #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:32 +#: ../lib/XXV/MODULES/GRAB.pm:33 msgid "Image height" msgstr "Bildhöhe" #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:38 +#: ../lib/XXV/MODULES/GRAB.pm:39 msgid "Location where the grabbed image file will be stored" msgstr "Pfad an dem die Datei des Screenshots gespeichert wird." #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:43 +#: ../lib/XXV/MODULES/GRAB.pm:44 msgid "Text to display in the grabbed picture." msgstr "Im Screenshots anzuzeigender Text." #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:48 +#: ../lib/XXV/MODULES/GRAB.pm:49 msgid "Vertical position of displayed text, in pixels." msgstr "Vertikalen Position des anzuzeigen Text, in Pixeln." #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:53 ../lib/XXV/MODULES/STATUS.pm:62 -msgid "True type font to draw image text." +#: ../lib/XXV/MODULES/GRAB.pm:54 ../lib/XXV/MODULES/STATUS.pm:63 +msgid "TrueType font to draw overlay text" msgstr "TrueType Zeichensatz für Overlaytext." #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:59 +#: ../lib/XXV/MODULES/GRAB.pm:60 msgid "Font size to draw image text (only for ttf font!)." msgstr "Zeichengröße für Overlaytext (nur für TTF Font!)." #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:64 +#: ../lib/XXV/MODULES/GRAB.pm:65 msgid "Quality from image in percent." msgstr "Qualität des Bildes in Prozent." #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:71 +#: ../lib/XXV/MODULES/GRAB.pm:72 msgid "Grab a picture" msgstr "Hole den Screenshot" #-------------------- -#: ../lib/XXV/MODULES/GRAB.pm:78 +#: ../lib/XXV/MODULES/GRAB.pm:79 msgid "Display the picture" msgstr "Zeige den Screenshot an" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:103 -msgid "Dump additional debugging information, needed only for software development." +#: ../lib/XXV/MODULES/HTTPD.pm:104 +msgid "Dump additional debugging information, required only for software development." msgstr "Ausgeben von zusätzliche Informationen zur Fehlersuche, wird nur für die Software-Entwicklung benötigt." #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:261 ../lib/XXV/MODULES/WAPD.pm:195 -msgid "You have no permissions to this system!" +#: ../lib/XXV/MODULES/HTTPD.pm:262 ../lib/XXV/MODULES/WAPD.pm:196 +msgid "You are not authorized to use this system!" msgstr "Sie haben keine Berechtigungen für dieses System!" #-------------------- @@ -2200,307 +2190,292 @@ msgid "This module is a multisession HTTPD server." msgstr "Dieses Modul ist ein Mehrfachsitzung HTTPD Server." #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:479 -msgid "Traffic on HTTPD Socket since %s: send: %d kbytes - received: %d kbytes - connects: %d" +#: ../lib/XXV/MODULES/HTTPD.pm:480 +msgid "Traffic on HTTPD Socket since %s: sent: %d kbytes - received: %d kbytes - connections: %d" msgstr "Datenverkehr des HTTPD Anschlusses seit %s: gesendet: %d Kbytes - empfangen: %d Kbytes - Verbindungen: %d" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:522 -msgid "can't open file '%s' : %s" +#: ../lib/XXV/MODULES/HTTPD.pm:523 +msgid "Could not open file '%s'! : %s" msgstr "Konnte Datei '%s' nicht öffnen : %s" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:60 ../lib/XXV/MODULES/TELNET.pm:32 ../lib/XXV/MODULES/WAPD.pm:45 -msgid "Maximum number from simultaneous connections to the same time" +#: ../lib/XXV/MODULES/HTTPD.pm:61 ../lib/XXV/MODULES/TELNET.pm:33 ../lib/XXV/MODULES/WAPD.pm:46 +msgid "Maximum number of simultaneous connections" msgstr "Maximale Anzahl von gleichzeitigen Verbindungen zur selben Zeit" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:66 +#: ../lib/XXV/MODULES/HTTPD.pm:67 msgid "Number of port to listen for http clients" msgstr "Nummer des Port, um auf HTTP-Clients zu lauschen" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:72 ../lib/XXV/MODULES/INTERFACE.pm:41 ../lib/XXV/MODULES/MUSIC.pm:55 ../lib/XXV/MODULES/TELNET.pm:44 ../lib/XXV/MODULES/WAPD.pm:57 +#: ../lib/XXV/MODULES/HTTPD.pm:73 ../lib/XXV/MODULES/INTERFACE.pm:42 ../lib/XXV/MODULES/MUSIC.pm:56 ../lib/XXV/MODULES/TELNET.pm:45 ../lib/XXV/MODULES/WAPD.pm:58 msgid "Local interface to bind service" msgstr "Lokaler Anschluss zum Binden des Dienst" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:78 ../lib/XXV/MODULES/WAPD.pm:63 -msgid "Used Skin" +#: ../lib/XXV/MODULES/HTTPD.pm:79 ../lib/XXV/MODULES/WAPD.pm:64 +msgid "Skin used" msgstr "Verwendeter Skin" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:85 ../lib/XXV/MODULES/WAPD.pm:70 -msgid "First page, which is to be seen when logon" +#: ../lib/XXV/MODULES/HTTPD.pm:86 ../lib/XXV/MODULES/WAPD.pm:71 +msgid "Startup screen" msgstr "Erste Seite, die beim Anmelden zu sehen ist" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:90 +#: ../lib/XXV/MODULES/HTTPD.pm:91 msgid "Schema" msgstr "Übersicht" #-------------------- -#: ../lib/XXV/MODULES/HTTPD.pm:93 ../lib/XXV/MODULES/WAPD.pm:77 ../wml/widgets/footer.tmpl:17 -msgid "Autotimer" -msgstr "Autotimer" - -#-------------------- #: ../lib/XXV/MODULES/INTERFACE.pm:23 msgid "This module is a multichannel soap server for second party software." msgstr "Dieses Modul ist ein mehrkanaliger SOAP Server für zusätzliche Software die mit xxv interagieren möchte." #-------------------- -#: ../lib/XXV/MODULES/INTERFACE.pm:35 +#: ../lib/XXV/MODULES/INTERFACE.pm:36 msgid "Number of port to listen for soap clients" msgstr "Nummer des Port, um auf SOAP-Clients zu lauschen" #-------------------- -#: ../lib/XXV/MODULES/LOGREAD.pm:144 -msgid "Can't read log file %s!" +#: ../lib/XXV/MODULES/LOGREAD.pm:145 +msgid "Could not read log file %s!" msgstr "Konnte die Log-Datei %s nicht einlesen!" #-------------------- #: ../lib/XXV/MODULES/LOGREAD.pm:21 -msgid "This module read the xxv log file and show it on console." +msgid "This module reads the xxv log file and displays it on the console." msgstr "Diese Module liest die xxv-Log-Datei und zeigt sie in der Konsole." #-------------------- -#: ../lib/XXV/MODULES/LOGREAD.pm:34 ../lib/XXV/MODULES/STATUS.pm:34 ../lib/XXV/MODULES/STATUS.pm:40 ../lib/XXV/MODULES/STATUS.pm:46 +#: ../lib/XXV/MODULES/LOGREAD.pm:35 ../lib/XXV/MODULES/MUSIC.pm:89 ../lib/XXV/MODULES/STATUS.pm:35 ../lib/XXV/MODULES/STATUS.pm:41 ../lib/XXV/MODULES/STATUS.pm:47 msgid "Path of command '%s'" msgstr "Pfad des Kommando '%s'" #-------------------- -#: ../lib/XXV/MODULES/LOGREAD.pm:40 -msgid "How much lines to display?" +#: ../lib/XXV/MODULES/LOGREAD.pm:41 +msgid "Lines to display" msgstr "Wieviel Zeilen anzeigen?" #-------------------- -#: ../lib/XXV/MODULES/LOGREAD.pm:46 -msgid "Path of syslog file?" -msgstr "Pfad der Syslog-Datei" - -#-------------------- -#: ../lib/XXV/MODULES/LOGREAD.pm:54 +#: ../lib/XXV/MODULES/LOGREAD.pm:55 msgid "Display the last log entries" msgstr "Zeigt die letzten Log-Einträge an" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:104 +#: ../lib/XXV/MODULES/MEDIALIB.pm:105 msgid "Edit media" msgstr "Medium bearbeiten" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1051 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1052 msgid "wanted" msgstr "Wunschliste" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:110 +#: ../lib/XXV/MODULES/MEDIALIB.pm:111 msgid "Copy media" msgstr "Medium kopieren" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:116 -msgid "Delete media" -msgstr "Medium löschen" - -#-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1167 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1168 msgid "Action" msgstr "Action" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1171 +#: ../lib/XXV/MODULES/MEDIALIB.pm:117 +msgid "Delete media" +msgstr "Medium löschen" + +#-------------------- +#: ../lib/XXV/MODULES/MEDIALIB.pm:1172 msgid "Adventure" msgstr "Abenteuer" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1175 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1176 msgid "Animation" msgstr "Animation" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1179 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1180 msgid "Comedy" msgstr "Komödie" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1183 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1184 msgid "Crime" msgstr "Krimi" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1187 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1188 msgid "Documentary" msgstr "Dokumentation" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1191 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1192 msgid "Drama" msgstr "Drama" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1195 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1196 msgid "Family" msgstr "Familie" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1199 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1200 msgid "Fantasy" msgstr "Fantasy" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1203 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1204 msgid "Film-Noir" msgstr "Film-Noir" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1207 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1208 msgid "Horror" msgstr "Horror" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1211 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1212 msgid "Musical" msgstr "Musical" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1215 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1216 msgid "Mystery" msgstr "Mystery" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1219 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1220 msgid "Romance" msgstr "Romanze" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:122 -msgid "Research media" -msgstr "Medium recherchieren" - -#-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1223 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1224 msgid "Sci-Fi" msgstr "Sci-Fi" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1227 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1228 msgid "Short" msgstr "Kurzfilm" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1231 +#: ../lib/XXV/MODULES/MEDIALIB.pm:123 +msgid "Research media" +msgstr "Medium recherchieren" + +#-------------------- +#: ../lib/XXV/MODULES/MEDIALIB.pm:1232 msgid "Thriller" msgstr "Thriller" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1235 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1236 msgid "War" msgstr "Krieg" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1239 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1240 msgid "Western" msgstr "Western" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1243 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1244 msgid "Adult" msgstr "Adult" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1251 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1252 msgid "Biography" msgstr "Biography" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1255 -msgid "MLHistory" -msgstr "Geschichte" - -#-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1259 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1260 msgid "Childs" msgstr "Kinder" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1263 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1264 msgid "Splatter" msgstr "Splatter" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:128 +#: ../lib/XXV/MODULES/MEDIALIB.pm:129 msgid "Get image from media cache" msgstr "Hole Bild aus dem Medien Cache" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1311 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1312 msgid "#" msgstr "#" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1312 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1313 msgid "ABC" msgstr "ABC" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1313 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1314 msgid "DEF" msgstr "DEF" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1314 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1315 msgid "GHI" msgstr "GHI" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1315 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1316 msgid "JKL" msgstr "JKL" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1316 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1317 msgid "MNO" msgstr "MNO" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1317 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1318 msgid "PQRS" msgstr "PQRS" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1318 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1319 msgid "TUV" msgstr "TUV" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1319 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1320 msgid "WXYZ" msgstr "WXYZ" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1322 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1323 msgid "Unseen" msgstr "Ungesehen" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:1323 +#: ../lib/XXV/MODULES/MEDIALIB.pm:1324 msgid "Wanted" msgstr "Wunschliste" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:134 +#: ../lib/XXV/MODULES/MEDIALIB.pm:135 msgid "Save media" msgstr "Medium speichern" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:140 +#: ../lib/XXV/MODULES/MEDIALIB.pm:141 msgid "Import media" msgstr "Medium importieren" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:146 +#: ../lib/XXV/MODULES/MEDIALIB.pm:147 msgid "Search media" msgstr "Medium suchen" @@ -2510,137 +2485,137 @@ msgid "This module manages media like DVDs, VCD, etc." msgstr "Dieses Module verwaltet Medien wie z.B. DVD, VCD, etc." #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:297 +#: ../lib/XXV/MODULES/MEDIALIB.pm:298 msgid "Media Library has stored %d medias" msgstr "Medien Bibliotek hat %d Medien gespeichert" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:36 -msgid "Cache images" -msgstr "Bilder zwischenspeichern" - -#-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:364 ../lib/XXV/MODULES/MEDIALIB.pm:563 ../lib/XXV/MODULES/MEDIALIB.pm:671 ../lib/XXV/MODULES/MEDIALIB.pm:756 +#: ../lib/XXV/MODULES/MEDIALIB.pm:365 ../lib/XXV/MODULES/MEDIALIB.pm:564 ../lib/XXV/MODULES/MEDIALIB.pm:672 ../lib/XXV/MODULES/MEDIALIB.pm:757 msgid "Media with ID '%s' does not exist in the database!" msgstr "Medium mit der ID '%s' existiert nicht in der Datenbank" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:42 +#: ../lib/XXV/MODULES/MEDIALIB.pm:37 +msgid "Cache images" +msgstr "Bilder zwischenspeichern" + +#-------------------- +#: ../lib/XXV/MODULES/MEDIALIB.pm:43 msgid "Location of coverimages." msgstr "Speicherplatz der Cover Bilder" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:48 +#: ../lib/XXV/MODULES/MEDIALIB.pm:49 msgid "Number of columns in listview" msgstr "Anzahl der Spalten in der Medien Liste" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:54 +#: ../lib/XXV/MODULES/MEDIALIB.pm:55 msgid "Number of columns of actors in detailview" msgstr "Anzahl der Spalten der Schauspieler in der Detail Ansicht" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:60 +#: ../lib/XXV/MODULES/MEDIALIB.pm:61 msgid "Default media language" msgstr "Standardsprache der Medien" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:65 +#: ../lib/XXV/MODULES/MEDIALIB.pm:66 msgid "Default mediatype" msgstr "Standard Medientyp" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:729 +#: ../lib/XXV/MODULES/MEDIALIB.pm:730 msgid "Media %s saved!" msgstr "Medium %s gespeichert!" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:75 +#: ../lib/XXV/MODULES/MEDIALIB.pm:76 msgid "Default range" msgstr "Standard Bereich" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:766 +#: ../lib/XXV/MODULES/MEDIALIB.pm:767 msgid "Genres for Media with ID '%s' does not exist in the database!" msgstr "Genres für Medium mit der ID '%s' existieren nicht in der Datenbank" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:771 +#: ../lib/XXV/MODULES/MEDIALIB.pm:772 msgid "Media %s is deleted." msgstr "Medium %s wurde gelöscht." #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:86 +#: ../lib/XXV/MODULES/MEDIALIB.pm:87 msgid "List medias" msgstr "Medien auflisten" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:92 +#: ../lib/XXV/MODULES/MEDIALIB.pm:93 msgid "Display media" msgstr "Medium anzeigen" #-------------------- -#: ../lib/XXV/MODULES/MEDIALIB.pm:98 +#: ../lib/XXV/MODULES/MEDIALIB.pm:99 msgid "Create new media" msgstr "Erstelle neues Medium" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:1009 +#: ../lib/XXV/MODULES/MUSIC.pm:1010 msgid "New covers search was successfully!" msgstr "Suche nach neue Plattenhüllen war erfolgreich!" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:1013 ../lib/XXV/MODULES/MUSIC.pm:1030 ../lib/XXV/MODULES/MUSIC.pm:331 ../lib/XXV/MODULES/MUSIC.pm:351 ../lib/XXV/MODULES/MUSIC.pm:391 ../lib/XXV/MODULES/MUSIC.pm:430 +#: ../lib/XXV/MODULES/MUSIC.pm:1014 ../lib/XXV/MODULES/MUSIC.pm:1031 ../lib/XXV/MODULES/MUSIC.pm:332 ../lib/XXV/MODULES/MUSIC.pm:352 ../lib/XXV/MODULES/MUSIC.pm:392 ../lib/XXV/MODULES/MUSIC.pm:431 msgid "Back to music list" msgstr "Zurück zur Musikliste" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:102 -msgid "Download album covers." -msgstr "Plattenhüllen herunterladen." - -#-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:1027 +#: ../lib/XXV/MODULES/MUSIC.pm:1028 msgid "It is not necessary to look for new covers because already all albums possess cover!" msgstr "Es ist nicht notwendig, nach neuer Plattenhüllen zu suchen, weil bereits alle Alben ein Plattenhülle besitzen!" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:109 +#: ../lib/XXV/MODULES/MUSIC.pm:103 +msgid "Download album covers." +msgstr "Plattenhüllen herunterladen." + +#-------------------- +#: ../lib/XXV/MODULES/MUSIC.pm:110 msgid "play music file 'fid'" msgstr "Spiele Musikdatei 'fid'" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:115 +#: ../lib/XXV/MODULES/MUSIC.pm:116 msgid "get a m3u playlist for 'fid'" msgstr "Erzeuge ein m3u-Abspielliste für 'fid'" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:121 +#: ../lib/XXV/MODULES/MUSIC.pm:122 msgid "list music 'dir'" msgstr "Zeige Musik 'dir'" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:127 +#: ../lib/XXV/MODULES/MUSIC.pm:128 msgid "search music 'txt'" msgstr "Sucht Musik 'txt'" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:1283 +#: ../lib/XXV/MODULES/MUSIC.pm:1284 msgid "Sorry, images for cover is'nt supported" msgstr "Entschuldigung, Plattenhüllen werden nicht unterstützt." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:1322 +#: ../lib/XXV/MODULES/MUSIC.pm:1323 msgid "Sorry, can't get file." msgstr "Entschuldigung, Datei kann nicht geholt werden." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:133 +#: ../lib/XXV/MODULES/MUSIC.pm:134 msgid "Show album covers." msgstr "Zeigt Plattenhüllen." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:139 +#: ../lib/XXV/MODULES/MUSIC.pm:140 msgid "Get music file 'fid'" msgstr "Holt die Musikdateien'fid'" @@ -2650,432 +2625,402 @@ msgid "This module managed music files." msgstr "Dieser Modul behandelt die Musikdateien." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:327 +#: ../lib/XXV/MODULES/MUSIC.pm:328 msgid "Directory of the music files '%s' not found" msgstr "Verzeichnis mit den Musikdateien '%s' nicht gefunden" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:349 +#: ../lib/XXV/MODULES/MUSIC.pm:350 msgid "Reread the music files ..." msgstr "Erneutes Einlesen der Musikdateien ..." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:363 +#: ../lib/XXV/MODULES/MUSIC.pm:364 msgid "Get information from music files ..." msgstr "Hole Informationen über die Musikdateien ..." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:389 +#: ../lib/XXV/MODULES/MUSIC.pm:390 msgid "No music files found!" msgstr "Keine Musikdateien gefunden!" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:426 +#: ../lib/XXV/MODULES/MUSIC.pm:427 msgid "%d new music files in database saved and %d non exists entries deleted!" msgstr "%d neue Musikdateien wurden in der Datenbank gespeichert und %d nicht existierende gelöscht!" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:43 +#: ../lib/XXV/MODULES/MUSIC.pm:44 msgid "Directory with the music files" msgstr "Verzeichnis mit den Musikdateien" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:49 +#: ../lib/XXV/MODULES/MUSIC.pm:50 msgid "Port to listen for icecast clients." msgstr "Port des Server, an dem für Icecast Clients gelauscht wird." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:503 +#: ../lib/XXV/MODULES/MUSIC.pm:504 msgid "Sorry, playback is'nt supported" msgstr "Entschuldigung, Wiedergabe ist nicht möglich" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:513 +#: ../lib/XXV/MODULES/MUSIC.pm:514 msgid "No Text to search! Please use msearch 'text'" msgstr "Kein Text zum Suchen definiert! Bitte verwende msearch 'Text'" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:587 ../lib/XXV/MODULES/TIMERS.pm:1073 +#: ../lib/XXV/MODULES/MUSIC.pm:588 ../lib/XXV/MODULES/TIMERS.pm:1074 msgid "Sv" msgstr "Sv" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:589 +#: ../lib/XXV/MODULES/MUSIC.pm:590 msgid "Album" msgstr "Album" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:591 +#: ../lib/XXV/MODULES/MUSIC.pm:592 msgid "Tracknum" msgstr "Tracknr" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:593 +#: ../lib/XXV/MODULES/MUSIC.pm:594 msgid "Length" msgstr "Dauer" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:61 +#: ../lib/XXV/MODULES/MUSIC.pm:62 msgid "Proxy URL to music server. e.g. (http://vdr/xxv) Please remember you must write the Port to icecast server in your Proxy Konfiguration!" msgstr "Proxy URL des Musikservers. z.B.(http://vdr/xxv). Denke daran das der Port des Icecast Server in die Proxykonfiguration eingetragen werden muss!" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:66 +#: ../lib/XXV/MODULES/MUSIC.pm:67 msgid "Maximum Clients to connect at the same time." msgstr "Maximale Anzahl von Clients, zur selben Zeit" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:72 +#: ../lib/XXV/MODULES/MUSIC.pm:73 msgid "common directory for cover images" msgstr "Gemeinsames Verzeichnis für Bilder von Plattenhüllen" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:78 +#: ../lib/XXV/MODULES/MUSIC.pm:79 msgid "DSN for muggle Database" msgstr "DSN für die Muggle Datenbank" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:88 -msgid "Path to the binary from mugglei." -msgstr "Das Verzeichnis zum Programm mugglei." - -#-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:909 +#: ../lib/XXV/MODULES/MUSIC.pm:910 msgid "Music database contains %d entries with %d albums from %d artists in %d genres" msgstr "Die Musikdatenbank enthält %d Einträge mit %d Alben von %d Künstlern in %d Genren" #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:931 +#: ../lib/XXV/MODULES/MUSIC.pm:932 msgid "Please wait, search for new covers ..." msgstr "Bitte warten, suche nach neuen Plattenhüllen ..." #-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:95 -msgid "Rereading of the music directory." -msgstr "Nochmaliges Einlesen des Musikverzeichnisses." - -#-------------------- -#: ../lib/XXV/MODULES/MUSIC.pm:951 +#: ../lib/XXV/MODULES/MUSIC.pm:952 msgid "Lookup for cover from '%s-%s'" msgstr "Suche nach Plattenhüllen von '%s-%s'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:104 -msgid "List recordings" +#: ../lib/XXV/MODULES/MUSIC.pm:96 +msgid "Rereading of the music directory." +msgstr "Nochmaliges Einlesen des Musikverzeichnisses." + +#-------------------- +#: ../lib/XXV/MODULES/RECORDS.pm:105 +msgid "List of recordings" msgstr "Aufnahmenliste" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:110 +#: ../lib/XXV/MODULES/RECORDS.pm:111 msgid "Search recordings 'text'" msgstr "Sucht Aufnahmen 'text'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1135 -msgid "No RecordID to display the recording! Please use rdisplay 'rid'" -msgstr "Keine Aufnahme-ID zum Anzeigen der Aufnahme! Bitte verwende rdisplay 'rid'" +#: ../lib/XXV/MODULES/RECORDS.pm:1136 +msgid "No recording defined for display! Please use rdisplay 'rid'" +msgstr "Keine Aufnahme zum Anzeigen definiert! Bitte verwende rdisplay 'rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1193 ../lib/XXV/MODULES/RECORDS.pm:1213 -msgid "No RecordID to play the recording! Please use rplay 'rid'" -msgstr "Kein RecordingID zum Wiedergabe definiert! Bitte verwende rplay 'rid'" +#: ../lib/XXV/MODULES/RECORDS.pm:1194 ../lib/XXV/MODULES/RECORDS.pm:1214 +msgid "No recording defined for playback! Please use rplay 'rid'." +msgstr "Keine Aufnahme zum Wiedergabe definiert! Bitte verwende rplay 'rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1200 ../lib/XXV/MODULES/RECORDS.pm:1220 ../lib/XXV/MODULES/RECORDS.pm:1530 -msgid "RecordID '%s' does not exist in the database!" -msgstr "RecordID '%s' existiert nicht in der Datenbank!" +#: ../lib/XXV/MODULES/RECORDS.pm:1201 ../lib/XXV/MODULES/RECORDS.pm:1221 ../lib/XXV/MODULES/RECORDS.pm:1458 ../lib/XXV/MODULES/RECORDS.pm:1531 ../lib/XXV/MODULES/RECORDS.pm:1873 +msgid "Recording '%s' does not exist in the database!" +msgstr "Aufnahme '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:123 +#: ../lib/XXV/MODULES/RECORDS.pm:124 msgid "Delete recording 'rid'" msgstr "Aufnahme löschen 'rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:130 +#: ../lib/XXV/MODULES/RECORDS.pm:131 msgid "Edit recording 'rid'" msgstr "Aufnahme bearbeiten 'rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:137 +#: ../lib/XXV/MODULES/RECORDS.pm:138 msgid "Convert recording 'rid'" msgstr "Aufnahme konvertieren 'rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1394 -msgid "No Recording ID to delete! Please use rdelete 'id'" -msgstr "Kein RecordingID zum Löschen definiert! Bitte verwende rdelete 'rid'" +#: ../lib/XXV/MODULES/RECORDS.pm:1395 +msgid "No recording defined for deletion! Please use rdelete 'id'." +msgstr "Keine Aufnahme zum Löschen definiert! Bitte verwende rdelete 'rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1431 +#: ../lib/XXV/MODULES/RECORDS.pm:1432 msgid "Are you sure to delete this recording?" msgstr "Wollen sie wirklich diese Aufnahme löschen?" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:144 -msgid "Play recording 'rid' in vdr" +#: ../lib/XXV/MODULES/RECORDS.pm:145 +msgid "Play recording 'rid' in the VDR." msgstr "Spiele Aufnahme 'rid' im VDR" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1457 -msgid "Recording with number '%s' does not exist in the database!" -msgstr "Aufnahme mit Nummer '%s' existiert nicht in der Datenbank!" - -#-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1462 +#: ../lib/XXV/MODULES/RECORDS.pm:1463 msgid "Recording '%s' to delete" msgstr "Aufnahme '%s' wird gelöscht" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1483 +#: ../lib/XXV/MODULES/RECORDS.pm:1484 msgid "No recording to delete!" msgstr "Keine Aufnahme zum Löschen!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1509 -msgid "No RecordID to edit!" +#: ../lib/XXV/MODULES/RECORDS.pm:1510 +msgid "No recording defined for editing!" msgstr "Keine Aufnahme-ID zum Bearbeiten!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:151 +#: ../lib/XXV/MODULES/RECORDS.pm:152 msgid "Cut recording 'rid' in vdr" msgstr "Schneide Aufnahme 'rid' im VDR" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1543 ../lib/XXV/MODULES/RECORDS.pm:1671 ../lib/XXV/OUTPUT/Html.pm:476 ../lib/XXV/OUTPUT/Wml.pm:266 -msgid "Can't open file '%s' : %s" +#: ../lib/XXV/MODULES/RECORDS.pm:1544 ../lib/XXV/MODULES/RECORDS.pm:1672 ../lib/XXV/OUTPUT/Html.pm:475 ../lib/XXV/OUTPUT/Wml.pm:267 +msgid "Cannot open file '%s' : %s!" msgstr "Kann Datei '%s' nicht öffnen : %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1576 ../lib/XXV/MODULES/TIMERS.pm:703 +#: ../lib/XXV/MODULES/RECORDS.pm:1577 ../lib/XXV/MODULES/TIMERS.pm:704 msgid "Title of recording" msgstr "Titel der Aufnahme" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1582 -msgid "Lifetime (0 .. 99)" -msgstr "Lebenszeit (0 .. 99)" - -#-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1596 -msgid "Priority (0 .. 99)" -msgstr "Priorität (0 .. 99)" - -#-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1613 +#: ../lib/XXV/MODULES/RECORDS.pm:1614 msgid "Undefined" msgstr "Unbestimmt" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1623 ../lib/XXV/MODULES/TIMERS.pm:608 +#: ../lib/XXV/MODULES/RECORDS.pm:1624 ../lib/XXV/MODULES/TIMERS.pm:609 msgid "This channel '%s' does not exist!" msgstr "Dieser Kanal '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1630 +#: ../lib/XXV/MODULES/RECORDS.pm:1631 msgid "Summary" msgstr "Zusammenfassung" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1634 +#: ../lib/XXV/MODULES/RECORDS.pm:1635 msgid "Video" msgstr "Video" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1638 +#: ../lib/XXV/MODULES/RECORDS.pm:1639 msgid "Audio" msgstr "Audio" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1643 -msgid "Marks" +#: ../lib/XXV/MODULES/RECORDS.pm:1644 +msgid "Cut marks" msgstr "Schnittmarken" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:165 -msgid "Create event entries, if a record deleted." +#: ../lib/XXV/MODULES/RECORDS.pm:166 +msgid "Create event entries if a recording has been deleted." msgstr "Erzeuge Eventeinträge, wenn eine Aufnahme gelöscht wurde." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1734 ../lib/XXV/MODULES/RECORDS.pm:1740 +#: ../lib/XXV/MODULES/RECORDS.pm:1735 ../lib/XXV/MODULES/RECORDS.pm:1741 msgid "Can't write file '%s' : %s" msgstr "Konnte Datei '%s' nicht schreiben : %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1759 ../lib/XXV/MODULES/RECORDS.pm:1782 +#: ../lib/XXV/MODULES/RECORDS.pm:1760 ../lib/XXV/MODULES/RECORDS.pm:1783 msgid "Recording: '%s', can't move to '%s' : %s" msgstr "Aufnahme: '%s', konnte nicht nach '%s' verschoben werden : %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1778 +#: ../lib/XXV/MODULES/RECORDS.pm:1779 msgid "Recording: '%s', can't mkpath: '%s' : %s" msgstr "Aufnahme: '%s', konnte nicht Verzeichnis '%s' nicht erstellen : %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1789 +#: ../lib/XXV/MODULES/RECORDS.pm:1790 msgid "Recording: '%s', can't remove '%s' : %s" msgstr "Aufnahme: '%s', konnte nicht '%s' nicht entfernen : %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1816 ../lib/XXV/MODULES/RECORDS.pm:1818 -msgid "Recording is edited!" +#: ../lib/XXV/MODULES/RECORDS.pm:1817 ../lib/XXV/MODULES/RECORDS.pm:1819 +msgid "Recording edited!" msgstr "Aufnahme wurde bearbeitet!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1859 -msgid "No reccmds.conf on your System!" +#: ../lib/XXV/MODULES/RECORDS.pm:1860 +msgid "No reccmds.conf on your system!" msgstr "Keine reccmds.conf auf dem System!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1864 +#: ../lib/XXV/MODULES/RECORDS.pm:1865 msgid "Please use rconvert 'cmdid_rid'" msgstr "Bitte verwende rconvert 'cmdid_rid'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1871 -msgid "I can't find this CommandID" -msgstr "Kann diese Kommando-ID nicht finden" - -#-------------------- #: ../lib/XXV/MODULES/RECORDS.pm:1872 -msgid "I can't find this RecordID" -msgstr "Kann diese Aufnahme-ID nicht finden" +msgid "Cannot find this command ID!" +msgstr "Kann diese Kommando-ID nicht finden" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1883 -msgid "Sorry! Call %s %s Error output: %s" +#: ../lib/XXV/MODULES/RECORDS.pm:1884 +msgid "Sorry! Call %s %s with error output: %s" msgstr "Entschuldigung! Aufruf %s %s mit Fehlerausgabe: %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1885 -msgid "Call %s %s With output: %s" +#: ../lib/XXV/MODULES/RECORDS.pm:1886 +msgid "Call %s %s with output: %s" msgstr "Aufruf %s %s mit Ausgabe: %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1888 -msgid "Back to recordings list" +#: ../lib/XXV/MODULES/RECORDS.pm:1889 +msgid "Back to recording list" msgstr "Zurück zur Aufnahmeliste" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:1926 +#: ../lib/XXV/MODULES/RECORDS.pm:1927 msgid "%d new recordings since last report time %s" msgstr "%d neue Aufnahmen seit der letzten Reportzeit %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:193 +#: ../lib/XXV/MODULES/RECORDS.pm:194 msgid "Record deleted: %s" msgstr "Aufnahme gelöscht: %s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:194 +#: ../lib/XXV/MODULES/RECORDS.pm:195 msgid "Subtitle: %s\n" msgstr "Serientitel: %s\n" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:196 +#: ../lib/XXV/MODULES/RECORDS.pm:197 msgid "Description: %s\n" msgstr "Beschreibung: %s\n" #-------------------- #: ../lib/XXV/MODULES/RECORDS.pm:26 -msgid "This module managed recordings." +msgid "This module manages recordings." msgstr "Dieses Modul verwaltet die Aufnahmen." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:33 -msgid "Location of reccmds.conf on your system." -msgstr "Position der reccmds.conf in Ihrem System." +#: ../lib/XXV/MODULES/RECORDS.pm:398 +msgid "No recordings available!" +msgstr "Keine Aufnahmen verfügbar!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:39 +#: ../lib/XXV/MODULES/RECORDS.pm:40 msgid "How often recordings are to be updated (in seconds)" msgstr "Wie oft sollen Aufnahmen aktualisiert werden (in Sekunden)" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:397 -msgid "No recordings available!" -msgstr "Keine Aufnahmen verfügbar!" - -#-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:413 +#: ../lib/XXV/MODULES/RECORDS.pm:414 msgid "Used %s, Total %s%s, Free %s%s" msgstr "Genutzt %s, Gesamt %s%s, Frei %s%s" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:418 +#: ../lib/XXV/MODULES/RECORDS.pm:419 msgid "Unknown disc capacity!" msgstr "Unbekannte Festplattenkapazität!" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:45 +#: ../lib/XXV/MODULES/RECORDS.pm:46 msgid "How often recordings are to be completely read in (in hours)" msgstr "Wie oft sollen Aufnahmen vollständig eingelesen werden (in Stunden)" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:468 +#: ../lib/XXV/MODULES/RECORDS.pm:469 msgid "Update recording '%s'" msgstr "Aktualisiere Aufnahme '%s'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:51 -msgid "Directory, where vdr recordings are stored." -msgstr "Verzeichnis, wo die vdr Aufnahmen gespeichert sind." - -#-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:515 +#: ../lib/XXV/MODULES/RECORDS.pm:516 msgid "Analyze recording '%s'" msgstr "Untersuche Aufnahme '%s'" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:57 -msgid "Location of used program to produce preview images on your system." +#: ../lib/XXV/MODULES/RECORDS.pm:52 +msgid "Directory where recordings are stored" +msgstr "Verzeichnis, wo die vdr Aufnahmen gespeichert sind." + +#-------------------- +#: ../lib/XXV/MODULES/RECORDS.pm:58 +msgid "Location of used program to produce thumbnails on your system." msgstr "Position des verwendeten Programms, zum Erzeugen der Vorschaubildern." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:607 -msgid "Write %d recordings in database." +#: ../lib/XXV/MODULES/RECORDS.pm:608 +msgid "Write %d recordings to the database." msgstr "Schreibe %d Aufnahmen in die Datenbank." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:609 -msgid "Write only %d recordings in database. Can't assign %d recordings." +#: ../lib/XXV/MODULES/RECORDS.pm:610 +msgid "Write %d recordings to the database. Cannot assign %d recordings." msgstr "Schreibe nur %d Aufnahmen in die Datenbank. Kann %d Aufnahmen nicht zuordnen." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:63 -msgid "Please choose the used program to produce preview images." +#: ../lib/XXV/MODULES/RECORDS.pm:64 +msgid "The program used to create thumbnails" msgstr "Das verwendete Programm, um Vorschaubildern zu erzeugen." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:652 ../lib/XXV/MODULES/RECORDS.pm:654 -msgid "Get informations from recordings ..." +#: ../lib/XXV/MODULES/RECORDS.pm:653 ../lib/XXV/MODULES/RECORDS.pm:655 +msgid "Get information on recordings ..." msgstr "Hole Informationen über Aufnahmen ..." #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:66 -msgid "Nothing" +#: ../lib/XXV/MODULES/RECORDS.pm:67 +msgid "None" msgstr "Keines" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:75 -msgid "How many preview images produce?" +#: ../lib/XXV/MODULES/RECORDS.pm:76 +msgid "Produce how many thumbnails" msgstr "Wieviele Vorschaubildern erzeugen?" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:80 -msgid "Display list records with thumbnails?" +#: ../lib/XXV/MODULES/RECORDS.pm:81 +msgid "Display recording list with thumbnails?" msgstr "Zeige Aufnahmeliste mit Vorschaubildern?" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:85 +#: ../lib/XXV/MODULES/RECORDS.pm:86 msgid "common directory for preview images" msgstr "Gemeinsames Verzeichnis für Vorschaubilder" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:91 -msgid "Set this if your filename encoded for vfat filesystems" +#: ../lib/XXV/MODULES/RECORDS.pm:92 +msgid "VDR compiled for VFAT system (VFAT=1)" msgstr "Setze auf ja, wenn dein vdr kompiliert wurde für das VFAT System (VFAT=1)" #-------------------- -#: ../lib/XXV/MODULES/RECORDS.pm:98 +#: ../lib/XXV/MODULES/RECORDS.pm:99 msgid "Display recording 'rid'" msgstr "Zeige Aufnahme 'rid'" @@ -3085,47 +3030,42 @@ msgid "This module emulate a remote control." msgstr "Dieses Modul emulieren eine Fernbedienung." #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:175 +#: ../lib/XXV/MODULES/REMOTE.pm:176 msgid "This cmd id does not exist!" msgstr "Dieses Kommando existiert nicht!" #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:178 +#: ../lib/XXV/MODULES/REMOTE.pm:179 msgid "Try to start command: %s with cmd: %s" msgstr "Versuche Start des Kommando: %s mit cmd: %s " #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:30 +#: ../lib/XXV/MODULES/REMOTE.pm:31 msgid "Grab video framebuffer, as preview on remotecontrol." msgstr "Speichert den Videoframebuffer, als Vorschau innerhalb der Fernbedienung." #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:36 -msgid "The path to the commands.conf" -msgstr "Das Verzeichnis zur commands.conf" - -#-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:44 +#: ../lib/XXV/MODULES/REMOTE.pm:45 msgid "Display ir remote 'cmd'" msgstr "Zeigt eine Fernbedienung 'cmd'" #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:50 +#: ../lib/XXV/MODULES/REMOTE.pm:51 msgid "Switch to channel 'cid'" msgstr "Schaltet zum Kanal 'cid'" #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:56 +#: ../lib/XXV/MODULES/REMOTE.pm:57 msgid "Call the command 'cid'" msgstr "Aufruf des Kommandos 'cid'" #-------------------- -#: ../lib/XXV/MODULES/REMOTE.pm:62 +#: ../lib/XXV/MODULES/REMOTE.pm:63 msgid "List the commands" msgstr "Liste die Kommandos" #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:109 +#: ../lib/XXV/MODULES/REPORT.pm:110 msgid "Restart the xxv system at: %s!" msgstr "Neustart des xxv-System um: %s!" @@ -3135,32 +3075,32 @@ msgid "This module read in every module the status information and display this. msgstr "Dieses Modul, liest von jedes Modul die Statusangaben und zeigen dieses an. Dieses Modul senden diese Informationen z.B. auch als email Report." #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:251 +#: ../lib/XXV/MODULES/REPORT.pm:252 msgid "Sorry, but this type '%s' does not exist on this system!" msgstr "Entschuldigung, aber dieser Typ '%s' exitistiert in diesem System nicht!" #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:254 +#: ../lib/XXV/MODULES/REPORT.pm:255 msgid "Sorry, but this module is not active!" msgstr "Entschuldigung, aber dieses Modul ist nicht aktiv!" #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:32 +#: ../lib/XXV/MODULES/REPORT.pm:33 msgid "Time in hours to send the report." msgstr "Zeit in den Stunden, einen Report zu senden." #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:38 +#: ../lib/XXV/MODULES/REPORT.pm:39 msgid "Used host of referred link inside reports." msgstr "Benutzter Host für verweisende Links innerhalb der Reporte." #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:45 +#: ../lib/XXV/MODULES/REPORT.pm:46 msgid "Display the report screen 'modname'" msgstr "Zeigt den Reportschirm ' modname'" #-------------------- -#: ../lib/XXV/MODULES/REPORT.pm:50 +#: ../lib/XXV/MODULES/REPORT.pm:51 msgid "Display the actual news site 'typ'" msgstr "Zeigt die aktuelle Nachrichtenseite 'typ' an" @@ -3170,7 +3110,7 @@ msgid "This module register and run robots to fetch data from internet." msgstr "Dieses Modul verwaltet und startet Robots, um Daten aus dem Internet zu holen." #-------------------- -#: ../lib/XXV/MODULES/ROBOT.pm:33 +#: ../lib/XXV/MODULES/ROBOT.pm:34 msgid "Start a robots 'rname'" msgstr "Startet eine Robot 'rname'" @@ -3180,157 +3120,157 @@ msgid "This module send and read shared data from SOAP Server." msgstr "Dieses Modul sendet und liest gemeinsame Daten vom SOAP Server." #-------------------- -#: ../lib/XXV/MODULES/SHARE.pm:54 +#: ../lib/XXV/MODULES/SHARE.pm:55 msgid "The uri identifies the class on the server. The url (with port) for the XXV-SOAP-Server Address." msgstr "" #-------------------- -#: ../lib/XXV/MODULES/SHARE.pm:60 +#: ../lib/XXV/MODULES/SHARE.pm:61 msgid "The proxy identifies the CGI script that provides access to the class, Is simply the address of the server to contact that provides the methods." msgstr "" #-------------------- -#: ../lib/XXV/MODULES/SHARE.pm:66 +#: ../lib/XXV/MODULES/SHARE.pm:67 msgid "How often shared data are to be updated (in seconds)." msgstr "Wie oft sollen gemeinsame Daten aktualisiert werden (in Sekunden)." #-------------------- -#: ../lib/XXV/MODULES/SHARE.pm:74 +#: ../lib/XXV/MODULES/SHARE.pm:75 msgid "Display the TopTen list of timers." msgstr "Zeigt die Liste der besten zehn Timer an." #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:101 -msgid "Display the network informations" +#: ../lib/XXV/MODULES/STATUS.pm:102 +msgid "Displays network information" msgstr "Zeigt die Informationen des Netzwerks" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:106 -msgid "Display the hardware informations" +#: ../lib/XXV/MODULES/STATUS.pm:107 +msgid "Displays hardware information" msgstr "Zeigt die Informationen der Hardware" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:111 -msgid "Display the memory informations" +#: ../lib/XXV/MODULES/STATUS.pm:112 +msgid "Displays memory information" msgstr "Zeigt die Informationen des Speichers" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:116 +#: ../lib/XXV/MODULES/STATUS.pm:117 msgid "Display the file system informations" msgstr "Zeigt die Informationen des Dateisystems" #-------------------- #: ../lib/XXV/MODULES/STATUS.pm:21 -msgid "This module analyze your system and print the result." +msgid "This module analyzes your system and displays the result." msgstr "Dieses Modul analysieren Ihr System und zeigt das Resultat an." #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:255 +#: ../lib/XXV/MODULES/STATUS.pm:256 msgid "CPU" msgstr "CPU" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:256 +#: ../lib/XXV/MODULES/STATUS.pm:257 msgid "PCI" msgstr "PCI" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:258 +#: ../lib/XXV/MODULES/STATUS.pm:259 msgid "IDE" msgstr "IDE" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:260 +#: ../lib/XXV/MODULES/STATUS.pm:261 msgid "SCSI" msgstr "SCSI" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:291 +#: ../lib/XXV/MODULES/STATUS.pm:292 msgid "Filesystems" msgstr "Dateisysteme" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:373 +#: ../lib/XXV/MODULES/STATUS.pm:374 msgid "day" msgstr "Tag" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:379 +#: ../lib/XXV/MODULES/STATUS.pm:380 msgid "days" msgstr "Tage" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:387 +#: ../lib/XXV/MODULES/STATUS.pm:388 msgid "hour" msgstr "Stunde" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:393 +#: ../lib/XXV/MODULES/STATUS.pm:394 msgid "hours" msgstr "Stunden" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:401 +#: ../lib/XXV/MODULES/STATUS.pm:402 msgid "minute" msgstr "Minute" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:407 +#: ../lib/XXV/MODULES/STATUS.pm:408 msgid "minutes" msgstr "Minuten" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:484 +#: ../lib/XXV/MODULES/STATUS.pm:485 msgid "No on-chip cache." msgstr "Kein On-Chip Cache." #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:52 -msgid "Interval in seconds to remember data" +#: ../lib/XXV/MODULES/STATUS.pm:53 +msgid "Interval in seconds to save data" msgstr "Abstand in den Sekunden, zum sich an die Daten zu erinnern" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:57 -msgid "How long to remember the historical data in hours" +#: ../lib/XXV/MODULES/STATUS.pm:58 +msgid "Save historical data, in hours" msgstr "Wie lang an die historischen Daten erinnert, in Stunden " #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:68 +#: ../lib/XXV/MODULES/STATUS.pm:69 msgid "Show collected data as diagram?" msgstr "Zeige gesammelte Daten als Diagramm?" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:75 +#: ../lib/XXV/MODULES/STATUS.pm:76 msgid "Display all relevant informations about this system" msgstr "Zeigt alle relevanten Informationen über dieses System an" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:759 +#: ../lib/XXV/MODULES/STATUS.pm:760 msgid "PANIC! Only %s%% space left on device %s" msgstr "PANIK! Nur noch %s%% freier Platz auf Gerät %s" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:760 +#: ../lib/XXV/MODULES/STATUS.pm:761 msgid "Device has space %s from %s used!" msgstr "Gerät hat Platz %s von %s verwendet!" #-------------------- -#: ../lib/XXV/MODULES/STATUS.pm:96 +#: ../lib/XXV/MODULES/STATUS.pm:97 msgid "Display the vitals informations" msgstr "Zeigt die wichtigen Informationen" #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:108 +#: ../lib/XXV/MODULES/STREAM.pm:109 msgid "No ChannelID to Stream! Please use livestream 'cid'" msgstr "Keine Kanal-ID zum Streamen! Bitte verwende livestream 'rid'" #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:131 ../lib/XXV/MODULES/STREAM.pm:176 -msgid "Sorry, stream is'nt supported" +#: ../lib/XXV/MODULES/STREAM.pm:132 ../lib/XXV/MODULES/STREAM.pm:177 +msgid "Sorry, this stream is not supported!" msgstr "Entschuldigung, Streaming ist nicht möglich" #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:141 +#: ../lib/XXV/MODULES/STREAM.pm:142 msgid "No RecordID to Play! Please use rplay 'rid'" msgstr "Keine Aufnahme-ID zur Wiedergabe! Bitte verwende rplay 'rid'" @@ -3340,62 +3280,62 @@ msgid "This module generate streams from recordings." msgstr "Dieses Modul erzeugt Streams von Aufnahmen." #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:28 +#: ../lib/XXV/MODULES/STREAM.pm:29 msgid "Used host of referred link inside playlist." msgstr "Benutzter Host für verweisende Links innerhalb der Abspiellisten." #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:34 +#: ../lib/XXV/MODULES/STREAM.pm:35 msgid "Path from remote video directory (SambaDir)." msgstr "Freigegebenes Video Verzeichnis (SambaDir)." #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:39 -msgid "Used mime-typ to deliver video streams." +#: ../lib/XXV/MODULES/STREAM.pm:40 +msgid "Used mime type to deliver video streams" msgstr "Verwendeter Mime-Typ zur Ausgabe von Video-Streams" #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:46 -msgid "Play the record over samba or nfs." +#: ../lib/XXV/MODULES/STREAM.pm:47 +msgid "Play recordings via samba or NFS." msgstr "Wiedergabe von Aufnahmen über Samba oder NFS" #-------------------- -#: ../lib/XXV/MODULES/STREAM.pm:52 +#: ../lib/XXV/MODULES/STREAM.pm:53 msgid "Stream a channel 'cid'. This required the streamdev plugin!" msgstr "Stream eines Kanales 'cid'. Dies erfordert das Streamdev Plugin!" #-------------------- #: ../lib/XXV/MODULES/SVDRP.pm:20 -msgid "This module a telnet client for sdvrp." +msgid "This module serves as telnet client for sdvrp." msgstr "Das Modul dient als Telnet Client für sdvrp." #-------------------- -#: ../lib/XXV/MODULES/SVDRP.pm:214 -msgid "No Command! Please use scommand 'cmd'" +#: ../lib/XXV/MODULES/SVDRP.pm:217 +msgid "No command defined! Please use scommand 'cmd'." msgstr "Kein Kommando definiert! Bitte verwende scommand 'cmd'" #-------------------- -#: ../lib/XXV/MODULES/SVDRP.pm:26 -msgid "Name of the host that runs vdr" +#: ../lib/XXV/MODULES/SVDRP.pm:27 +msgid "Name of host that runs the VDR." msgstr "Name des Host, auf dem der VDR läuft" #-------------------- -#: ../lib/XXV/MODULES/SVDRP.pm:32 -msgid "SVDRP-port of the running vdr client" +#: ../lib/XXV/MODULES/SVDRP.pm:33 +msgid "SVDRP port on the running VDR" msgstr "SVDRP-Port auf dem laufenden VDR Client" #-------------------- -#: ../lib/XXV/MODULES/SVDRP.pm:38 +#: ../lib/XXV/MODULES/SVDRP.pm:39 msgid "Connection timeout defines after how many seconds an unrequited connection is terminated." msgstr "Nach wievielen Sekunden wird eine unerwiderte Verbindung beendet." #-------------------- -#: ../lib/XXV/MODULES/SVDRP.pm:46 +#: ../lib/XXV/MODULES/SVDRP.pm:47 msgid "Status from svdrp" msgstr "Status vom svdrp" #-------------------- -#: ../lib/XXV/MODULES/SVDRP.pm:53 +#: ../lib/XXV/MODULES/SVDRP.pm:54 msgid "Send a command to svdrp" msgstr "Sende ein Kommando zum svdrp" @@ -3405,7 +3345,7 @@ msgid "This module is a multisession telnet server." msgstr "Dieses Modul ist ein Mehrfachsitzungstelnet-Server." #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:214 +#: ../lib/XXV/MODULES/TELNET.pm:215 msgid "" "Welcome to xxv system version: %s.\\r\n" "This is session %s.\\r\n" @@ -3414,22 +3354,22 @@ msgstr "" "Das ist Sitzung %s.\\r\n" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:223 +#: ../lib/XXV/MODULES/TELNET.pm:224 msgid "Welcome to xxv system." msgstr "Willkommen im xxv-System." #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:227 +#: ../lib/XXV/MODULES/TELNET.pm:228 msgid "Welcome to xxv system. Please Login:" msgstr "Willkommen im xxv-System. Bitte Anmelden:" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:233 +#: ../lib/XXV/MODULES/TELNET.pm:234 msgid "Sorry, but permission denied!" msgstr "Entschuldigung, aber Erlaubnis verweigert!" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:267 +#: ../lib/XXV/MODULES/TELNET.pm:268 msgid "" "%sThis is the xxv %s server.\n" "Please use the following commands:\n" @@ -3438,277 +3378,262 @@ msgstr "" "Bitte verwende folgende Befehle:\n" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:38 +#: ../lib/XXV/MODULES/TELNET.pm:39 msgid "Number of port to listen for telnet clients" msgstr "Nummer des Port, um auf Telnet-Clients zu lauschen" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:52 -msgid "This will display all commands or the helptext from the 'module name'" +#: ../lib/XXV/MODULES/TELNET.pm:53 +msgid "This will display all commands or description of module 'name'." msgstr "Dieses zeigt alle Befehle oder das Hilfetext des 'Modulnamen'" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:59 +#: ../lib/XXV/MODULES/TELNET.pm:60 msgid "This will exit the telnet session" msgstr "Das beendet die Telnetsitzung" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:64 ../lib/XXV/MODULES/USER.pm:109 +#: ../lib/XXV/MODULES/TELNET.pm:65 ../lib/XXV/MODULES/USER.pm:110 msgid "Session closed." msgstr "Sitzung geschlossen." #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:69 ../lib/XXV/MODULES/TELNET.pm:80 +#: ../lib/XXV/MODULES/TELNET.pm:70 ../lib/XXV/MODULES/TELNET.pm:81 msgid "This will exit the xxv system." msgstr "Das wird das xxv-System beenden." #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:77 +#: ../lib/XXV/MODULES/TELNET.pm:78 msgid "Are you sure to exit the xxv system?" msgstr "Sind Sie sicher, das XXV-System zu beenden?" #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:91 -msgid "This will reload all Modules." +#: ../lib/XXV/MODULES/TELNET.pm:92 +msgid "Restart all modules." msgstr "Dieses lädt alle Module neu." #-------------------- -#: ../lib/XXV/MODULES/TELNET.pm:97 -msgid "Modules reloaded." +#: ../lib/XXV/MODULES/TELNET.pm:98 +msgid "Modules loaded." msgstr "Module neugeladen." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:1027 -msgid "Write %d timers in database." +#: ../lib/XXV/MODULES/TIMERS.pm:100 +msgid "Edit timer 'tid'" +msgstr "Bearbeite Timer 'tid'" + +#-------------------- +#: ../lib/XXV/MODULES/TIMERS.pm:1028 +msgid "%d timer written to database." msgstr "%d Timer in Datenbank geschrieben." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:106 +#: ../lib/XXV/MODULES/TIMERS.pm:107 msgid "Delete timer 'tid'" msgstr "Lösche Timer 'tid'" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:1075 -msgid "Prg" -msgstr "Tag" - -#-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:1079 ../lib/XXV/OUTPUT/Html.pm:768 -msgid "File" -msgstr "Titel" - -#-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:113 +#: ../lib/XXV/MODULES/TIMERS.pm:114 msgid "Activate/Deactive timer 'tid'" msgstr "Aktiviere/Deaktiviere Timer 'tid'" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:127 -msgid "Create event entries, if a new timer created by user." +#: ../lib/XXV/MODULES/TIMERS.pm:128 +msgid "Create event entries if the user has created a new timer." msgstr "Erzeuge Ereigniseinträge, wenn ein neuer Timer vom Anwender erstellt wurde." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:1477 -msgid "Timer %d with title '%s' is start to recording!" +#: ../lib/XXV/MODULES/TIMERS.pm:1478 +msgid "Timer %d with title '%s' has started the recording!" msgstr "Timer %d mit Titel '%s' hat die Aufnahme gestartet!" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:1478 -msgid "on channel: %s until %s" +#: ../lib/XXV/MODULES/TIMERS.pm:1479 +msgid "on channel: %s to %s" msgstr "auf Kanal: %s bis %s" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:153 +#: ../lib/XXV/MODULES/TIMERS.pm:154 msgid "New timer found: %s" msgstr "Neuer Timer gefunden: %s" #-------------------- #: ../lib/XXV/MODULES/TIMERS.pm:18 -msgid "This module parse the timers.conf and save this in the database." +msgid "This module reads timers and saves it to the database." msgstr "Diese Modul liest die timers.conf und speichert sie in der Datenbank." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:183 -msgid "Create event entries, if timer deleted by user." +#: ../lib/XXV/MODULES/TIMERS.pm:184 +msgid "Create event entries if the user has deleted a timer." msgstr "Erzeuge Ereigniseinträge, wenn ein Timer vom Anwender gelöscht wurde." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:195 +#: ../lib/XXV/MODULES/TIMERS.pm:196 msgid "Timer deleted: %s" msgstr "Timer gelöscht: %s" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:220 -msgid "Create event entries, if timer toggled by user." +#: ../lib/XXV/MODULES/TIMERS.pm:221 +msgid "Create event entries if the user has toggled a timer." msgstr "Erzeugt Eventeinträge, wenn eine Timer vom User umgeschaltet wurde." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:233 +#: ../lib/XXV/MODULES/TIMERS.pm:234 msgid "Timer toggled: %s to %s" msgstr "Timer umgeschaltet: %s" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:25 +#: ../lib/XXV/MODULES/TIMERS.pm:26 msgid "How often timers are to be updated (in seconds)" msgstr "Wie oft sollen Timer aktualisiert werden (in Sekunden)" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:262 -msgid "Create event entries, if timer updated." +#: ../lib/XXV/MODULES/TIMERS.pm:263 +msgid "Create event entries if a timer has been updated." msgstr "Erzeuge Eventeinträge, wenn ein Timer aktualisiert wurde." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:319 -msgid "%d Timers exists." +#: ../lib/XXV/MODULES/TIMERS.pm:320 +msgid "%d timer exists." msgstr "Es exisiteren %d Timer." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:41 -msgid "Defining the priority of this timer and of recordings created by this timer." -msgstr "Die Priorität eines Timers für Aufnahmen, bei erzeugen eines neuen Timer." +#: ../lib/XXV/MODULES/TIMERS.pm:42 +msgid "Priority of a timer for recordings when creating a new timer" +msgstr "Die Priorität eines Timers für Aufnahmen, bei Erzeugen eines neuen Timer." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:46 +#: ../lib/XXV/MODULES/TIMERS.pm:47 msgid "The guaranteed lifetime (in days) of a recording created by this timer" msgstr "Die garantierte Lebenszeit (in Tagen) einer Aufnahme, die durch diesen Timer erzeugt wurde." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:501 -msgid "Event ID '%s' does not exist in the database!" -msgstr "ID der Sendung '%s' existiert nicht in der Datenbank!" +#: ../lib/XXV/MODULES/TIMERS.pm:502 +msgid "Event '%s' does not exist in the database!" +msgstr "Sendung '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:51 -msgid "How much DVB cards in your system?" -msgstr "Wieviel DVB Karten sind im System?" +#: ../lib/XXV/MODULES/TIMERS.pm:52 +msgid "How much DVB cards exist on this system" +msgstr "Wieviel DVB Karten sind im System" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:56 -msgid "Delete inactive timers after his end time?" -msgstr "Lösche inaktive Timer nach seiner Endzeit?" +#: ../lib/XXV/MODULES/TIMERS.pm:566 ../lib/XXV/MODULES/TIMERS.pm:799 ../lib/XXV/MODULES/TIMERS.pm:863 +msgid "Timer '%s' does not exist in the database!" +msgstr "Timer '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:565 -msgid "Timer ID '%s' does not exist in the database!" -msgstr "Timer ID '%s' existiert nicht in der Datenbank!" +#: ../lib/XXV/MODULES/TIMERS.pm:57 +msgid "Delete inactive timers after end time" +msgstr "Lösche inaktive Timer nach seiner Endzeit" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:585 -msgid "Switch this timer on?" -msgstr "Aktiviere diesen Timer?" +#: ../lib/XXV/MODULES/TIMERS.pm:586 +msgid "Enable this timer" +msgstr "Aktiviere diesen Timer" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:590 -msgid "VPS for this timer on?" -msgstr "Aktiviere VPS für diesen Timer?" +#: ../lib/XXV/MODULES/TIMERS.pm:591 +msgid "Enable VPS for this timer" +msgstr "Aktiviere VPS für diesen Timer" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:596 -msgid "Which channel should recorded?" -msgstr "Welcher Kanal soll aufgezeichnet werden?" +#: ../lib/XXV/MODULES/TIMERS.pm:597 +msgid "Which channel should recorded" +msgstr "Welcher Kanal soll aufgezeichnet werden" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:61 -msgid "Use VPS start time?" -msgstr "Verwende VPS Startzeit?" +#: ../lib/XXV/MODULES/TIMERS.pm:618 +msgid "Enter a day (1 to 31) or weekday in format 'MTWTFSS'" +msgstr "Tag (1 - 31) oder Wochentag im Format 'MDMDFSS' eingeben" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:617 -msgid "Please enter a day (1 to 31) or the weekday in format 'MDMDFSS'." -msgstr "Tag (1 - 31) oder Wochentag im Format 'MDMDFSS' eingeben." +#: ../lib/XXV/MODULES/TIMERS.pm:62 +msgid "Use VPS start time" +msgstr "Verwende VPS Startzeit" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:628 -msgid "No right day or corrupt format!" +#: ../lib/XXV/MODULES/TIMERS.pm:629 +msgid "The day is incorrect or was in a wrong format!" msgstr "Der Tag ist nicht korrekt oder hatte ein falsches Format!" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:66 -msgid "Timers adjust, if EPG entry were changed?" -msgstr "Timer justieren, wenn EPG Eintrag verändert wurde?" - -#-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:73 -msgid "List timers 'tid'" -msgstr "Zeige Timer 'tid'" +#: ../lib/XXV/MODULES/TIMERS.pm:67 +msgid "Change timers if EPG entries change" +msgstr "Timer justieren, wenn EPG Eintrag verändert wurde" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:734 +#: ../lib/XXV/MODULES/TIMERS.pm:735 msgid "Additional description" msgstr "Zusätzliche Beschreibung" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:744 +#: ../lib/XXV/MODULES/TIMERS.pm:74 +msgid "List timers 'tid'" +msgstr "Zeige Timer 'tid'" + +#-------------------- +#: ../lib/XXV/MODULES/TIMERS.pm:745 msgid "Edit timer" msgstr "Timer bearbeiten" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:745 +#: ../lib/XXV/MODULES/TIMERS.pm:746 msgid "New timer" msgstr "Neuer Timer" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:784 -msgid "No Timer ID to delete! Please use tdelete 'tid'" -msgstr "Kein TimerID zum Löschen definiert! Bitte verwende tdelete 'tid'" +#: ../lib/XXV/MODULES/TIMERS.pm:785 +msgid "No timer defined for deletion! Please use tdelete 'tid'." +msgstr "Kein Timer zum Löschen definiert! Bitte verwende tdelete 'tid'." #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:79 +#: ../lib/XXV/MODULES/TIMERS.pm:80 msgid "Search timers 'text'" msgstr "Suche Timer 'text'" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:798 ../lib/XXV/MODULES/TIMERS.pm:862 -msgid "Timer with number '%s' does not exist in the database!" -msgstr "Timer mit Nummer '%s' existiert nicht in der Datenbank!" - -#-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:809 +#: ../lib/XXV/MODULES/TIMERS.pm:810 msgid "Are you sure to delete this timer?" msgstr "Sind Sie sicher, wollen Sie den Timer löschen?" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:836 +#: ../lib/XXV/MODULES/TIMERS.pm:837 msgid "No timer to delete!" msgstr "Kein Timer zum Löschen!" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:848 -msgid "No Timer ID to toggle! Please use ttoggle 'id'" -msgstr "Kein Timer ID zum Umschalten definiert! Bitte verwende ttoggle 'tid'" +#: ../lib/XXV/MODULES/TIMERS.pm:849 +msgid "No timer defined to toggle! Please use ttoggle 'id'." +msgstr "Kein Timer zum Umschalten definiert! Bitte verwende ttoggle 'tid'" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:85 -msgid "Read timers and write into database" +#: ../lib/XXV/MODULES/TIMERS.pm:86 +msgid "Read timers and write them to the database" msgstr "Lese Timer und schreibe sie in die Datenbank" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:907 +#: ../lib/XXV/MODULES/TIMERS.pm:908 msgid "No timer to toggle!" msgstr "Kein Timer zum Umschalten!" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:92 +#: ../lib/XXV/MODULES/TIMERS.pm:93 msgid "Create timer 'eid'" msgstr "Erzeuge Timer 'eid'" #-------------------- -#: ../lib/XXV/MODULES/TIMERS.pm:99 -msgid "Edit timer 'tid'" -msgstr "Bearbeite Timer 'tid'" - -#-------------------- -#: ../lib/XXV/MODULES/USER.pm:102 -msgid "Logout from the current Session" +#: ../lib/XXV/MODULES/USER.pm:103 +msgid "Log out from current session." msgstr "Abmelden von der aktuellen Sitzung" #-------------------- #: ../lib/XXV/MODULES/USER.pm:22 msgid "" -"This module managed a Useradministration Interface.\n" -"for use you can set a Level to the hole Modul with\n" -"a parameter 'Level' in the main root or you can set\n" -"the same parameter in a function." +"This module manages the User administration.\n" +"You may set a level for the whole module with \n" +"the 'Level' parameter in the main module\n" +"or the same parameter is set for each function." msgstr "" "Dieses Modul verwaltet die Useradministration.\n" "Zum Nutzen kann ein Level für das ganze Modul, mit\n" @@ -3716,192 +3641,202 @@ msgstr "" "oder es wird der selbe Parameter für jede Funktion gesetzt." #-------------------- -#: ../lib/XXV/MODULES/USER.pm:251 ../lib/XXV/MODULES/USER.pm:334 ../lib/XXV/MODULES/USER.pm:498 -msgid "Account for user with ID '%s' does not exist in the database!" -msgstr "Account für Benutzer mit ID '%s' existiert nicht in der Datenbank!" +#: ../lib/XXV/MODULES/USER.pm:252 ../lib/XXV/MODULES/USER.pm:335 ../lib/XXV/MODULES/USER.pm:499 +msgid "User account '%s' does not exist in the database!" +msgstr "Account für Benutzer '%s' existiert nicht in der Datenbank!" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:262 ../lib/XXV/MODULES/USER.pm:360 +#: ../lib/XXV/MODULES/USER.pm:263 ../lib/XXV/MODULES/USER.pm:361 msgid "Password for this account" msgstr "Passwort für diesen Anwenderzugang" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:283 -msgid "Personality preferences for this User: ModName::Param=value, " +#: ../lib/XXV/MODULES/USER.pm:284 +msgid "Personal preferences for this user: ModName::Param=value, " msgstr "Persönliche Einstellungen für diese Anwender: ModName::Param=wert, " #-------------------- -#: ../lib/XXV/MODULES/USER.pm:291 ../lib/XXV/MODULES/USER.pm:432 -msgid "The Parameter '%s' in Module '%s' doesn't exist!" +#: ../lib/XXV/MODULES/USER.pm:292 ../lib/XXV/MODULES/USER.pm:433 +msgid "The parameter '%s' in module '%s' does not exist!" msgstr "Der Parameter '%s' in Modul '%s' existiert nicht!" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:301 -msgid "Edit preferences of user: %s" +#: ../lib/XXV/MODULES/USER.pm:302 +msgid "Edit preferences: %s" msgstr "Einstellungen für diese Anwender bearbeiten: %s" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:308 ../lib/XXV/MODULES/USER.pm:478 -msgid "Account for user saved!" +#: ../lib/XXV/MODULES/USER.pm:309 ../lib/XXV/MODULES/USER.pm:479 +msgid "User account saved!" msgstr "Anwenderzugang wurde gespeichert!" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:31 -msgid "Switch the Userauthentification on or off" -msgstr "Aktiviert die Anwenderauthentifizierung" +#: ../lib/XXV/MODULES/USER.pm:312 +msgid "Please wait ... refreshing interface!" +msgstr "Bitte warten ... die Anwenderoberfläche wird aktualisiert!" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:311 -msgid "Please wait ... refresh the interface!" -msgstr "Bitte warten ... die Anwenderoberfläche wird aktualisiert!" +#: ../lib/XXV/MODULES/USER.pm:32 +msgid "Enable user authentication" +msgstr "Aktiviert die Anwenderauthentifizierung" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:343 +#: ../lib/XXV/MODULES/USER.pm:344 msgid "Administrator" msgstr "Verwalter" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:345 +#: ../lib/XXV/MODULES/USER.pm:346 msgid "Guest" msgstr "Gast" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:354 -msgid "Name from this account" +#: ../lib/XXV/MODULES/USER.pm:355 +msgid "Name of user account" msgstr "Name für diesen Anwenderzugang" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:36 +#: ../lib/XXV/MODULES/USER.pm:37 msgid "IP addresses with user authentification" msgstr "IP Adressen mit Benutzer-Authentifizierung" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:384 +#: ../lib/XXV/MODULES/USER.pm:385 msgid "Level for this account" msgstr "Berechtigungen für diesen Anwenderzugang" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:404 +#: ../lib/XXV/MODULES/USER.pm:405 msgid "Deny class of commands" msgstr "Verweigere Gruppierung von Kommandos" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:424 +#: ../lib/XXV/MODULES/USER.pm:425 msgid "Preferences for this User: ModName::Param=value, " msgstr "Präferenzen für diesen Benutzer: ModName::Param=value, " #-------------------- -#: ../lib/XXV/MODULES/USER.pm:43 ../lib/XXV/MODULES/USER.pm:57 -msgid "Your IP number (%s) is wrong! You need a IP with range (xxx.xxx.xxx.xxx/xx)" +#: ../lib/XXV/MODULES/USER.pm:44 ../lib/XXV/MODULES/USER.pm:58 +msgid "Your IP number (%s) is wrong! You need an IP in range (xxx.xxx.xxx.xxx/xx)" msgstr "Ihr IP Number (%s) ist falsch! Sie benötigen ein IP mit Bereich (xxx.xxx.xxx.xxx/xx)" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:440 -msgid "Maximally permitted value for lifetime on timers" +#: ../lib/XXV/MODULES/USER.pm:441 +msgid "Maximum permitted value for lifetime with timers" msgstr "Maximal erlaubter Wert für Lebenszeit bei Timern" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:446 ../lib/XXV/MODULES/USER.pm:458 -msgid "This value is not a integer or not between 0 and 100" +#: ../lib/XXV/MODULES/USER.pm:447 ../lib/XXV/MODULES/USER.pm:459 +msgid "This value is not an integer or not between 0 and 100" msgstr "Dieser Wert ist keine Zahl oder liegt nicht zwischen 0 und 100" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:452 -msgid "Maximally permitted value for priority on timers" +#: ../lib/XXV/MODULES/USER.pm:453 +msgid "Maximum permitted value for priority with timers" msgstr "Maximal erlaubter Wert für Priorität bei Timern" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:494 -msgid "No ID for Account of user to delete! Please use udelete 'uid'" +#: ../lib/XXV/MODULES/USER.pm:467 +msgid "Edit user account" +msgstr "Bearbeiten des Anwenderzugang" + +#-------------------- +#: ../lib/XXV/MODULES/USER.pm:468 ../lib/XXV/MODULES/USER.pm:73 +msgid "Create new user account" +msgstr "Erzeugt einen neuen Anwenderzugang" + +#-------------------- +#: ../lib/XXV/MODULES/USER.pm:495 +msgid "No user account defined to delete! Please use udelete 'uid'." msgstr "Keine ID eines Anwenderzuganges zum Löschen definiert! Bitte verwende udelete 'uid'" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:499 -msgid "Account of user %s is deleted." +#: ../lib/XXV/MODULES/USER.pm:500 +msgid "User account %s deleted." msgstr "Anwenderzugang %s wurde gelöscht" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:50 +#: ../lib/XXV/MODULES/USER.pm:51 msgid "IP addresses without user authentification" msgstr "IP Adressen ohne Benutzer-Authentifizierung" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:522 +#: ../lib/XXV/MODULES/USER.pm:523 msgid "Level" msgstr "Ebene" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:524 +#: ../lib/XXV/MODULES/USER.pm:525 msgid "UserPreferences" msgstr "Anwendereinstellungen" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:64 +#: ../lib/XXV/MODULES/USER.pm:65 msgid "common directory for temporary images" msgstr "Gemeinsames Verzeichnis für temporäre Bilder" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:761 -msgid "Sorry but the module %s is inactive! Switch this active in %s:Preferences:active = y" +#: ../lib/XXV/MODULES/USER.pm:762 +msgid "Sorry, but the module %s is inactive! Enable it with %s:Preferences:active = y" msgstr "Entschuldigung, aber das Modul %s ist inaktiv! Aktiviere es mit %s:Preferences:active = y" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:769 -msgid "You have no permissions on this command!" -msgstr "Sie sind nicht berechtigt, diese Kommando auszuführen!" +#: ../lib/XXV/MODULES/USER.pm:770 +msgid "You are not authorized for this function!" +msgstr "Sie sind nicht berechtigt, diese Funktion auszuführen!" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:776 -msgid "I don't understand the command '%s' \n" +#: ../lib/XXV/MODULES/USER.pm:777 +msgid "I do not understand the command '%s' \n" msgstr "Ich verstehe den Befehl '%s' nicht\n" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:78 -msgid "Delete a account of user 'uid'" +#: ../lib/XXV/MODULES/USER.pm:79 +msgid "Delete user account 'uid'" msgstr "Lösche eine Anwenderzugang 'uid'" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:84 -msgid "Edit a account of user 'uid'" +#: ../lib/XXV/MODULES/USER.pm:85 +msgid "Edit user account 'uid'" msgstr "Bearbeiten eine Anwenderzugang 'uid'" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:90 -msgid "Change the own preferences" +#: ../lib/XXV/MODULES/USER.pm:91 +msgid "Change preferences" msgstr "Die eigenen Einstellungen verändern" #-------------------- -#: ../lib/XXV/MODULES/USER.pm:96 +#: ../lib/XXV/MODULES/USER.pm:97 msgid "List the accounts of users" msgstr "Zeige die Anwenderzugänge" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:101 +#: ../lib/XXV/MODULES/VTX.pm:102 msgid "directory is for modul vtx not registered!" msgstr "Verzeichnis ist nicht für Modul vtx registriert worden!" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:1067 ../lib/XXV/MODULES/VTX.pm:1095 ../lib/XXV/MODULES/VTX.pm:1107 +#: ../lib/XXV/MODULES/VTX.pm:1068 ../lib/XXV/MODULES/VTX.pm:1096 ../lib/XXV/MODULES/VTX.pm:1108 msgid "The page could not readed!" msgstr "Die Seite konnte nicht gelesen werden!" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:1077 ../lib/XXV/MODULES/VTX.pm:440 +#: ../lib/XXV/MODULES/VTX.pm:1078 ../lib/XXV/MODULES/VTX.pm:441 msgid "The page could not be found!" msgstr "Die Seite konnte nicht gefunden werden!" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:1341 +#: ../lib/XXV/MODULES/VTX.pm:1342 msgid "No channel defined!" msgstr "Kein Kanal definiert!" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:1346 +#: ../lib/XXV/MODULES/VTX.pm:1347 msgid "No data to search given!" msgstr "Keine Daten zum Suchen übergeben!" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:1374 +#: ../lib/XXV/MODULES/VTX.pm:1375 msgid "No page with '%s' found!" msgstr "Keine Seite mit '%s' gefunden!" @@ -3911,22 +3846,22 @@ msgid "This module display cached teletext pages from osdteletext-plugin." msgstr "Diese Modul zeigt gespeicherte Videotextseiten des Plugin OSDTeletext an." #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:193 ../lib/XXV/MODULES/VTX.pm:219 +#: ../lib/XXV/MODULES/VTX.pm:194 ../lib/XXV/MODULES/VTX.pm:220 msgid "No data found for '%s'!" msgstr "Keine Daten für '%s' gefunden!" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:216 +#: ../lib/XXV/MODULES/VTX.pm:217 msgid "channel '%s' for modul vtx registered." msgstr "Kanal '%s' für Modul vtx registriert." #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:29 +#: ../lib/XXV/MODULES/VTX.pm:30 msgid "Directory where the teletext files are be located" msgstr "Verzeichnis, wo die Videotextdateien gespeichert sind" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:31 +#: ../lib/XXV/MODULES/VTX.pm:32 msgid "" "Used cache system.\n" "Choose 'legacy' for the traditional one-file-per-page system.\n" @@ -3939,17 +3874,17 @@ msgstr "" "'packed' für neuere Versionen ab osdteletext-0.4.0 (default, für das 'one-file-for-a-few-pages' System.)" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:44 +#: ../lib/XXV/MODULES/VTX.pm:45 msgid "Display the teletext page 'pagenumber'" msgstr "Zeigt die Videotextseite 'Seitennummer'" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:49 +#: ../lib/XXV/MODULES/VTX.pm:50 msgid "Channel for teletext actions 'cid'" msgstr "Kanal für Videotextaktionen 'cid'" #-------------------- -#: ../lib/XXV/MODULES/VTX.pm:54 +#: ../lib/XXV/MODULES/VTX.pm:55 msgid "Search for text inside teletext pages 'text'" msgstr "Sucht nach Text innerhalb von Videotextseiten 'text'" @@ -3959,7 +3894,7 @@ msgid "This module is a multisession WAPD server." msgstr "Dieses Modul ist ein Mehrfachsitzung WAPD Server." #-------------------- -#: ../lib/XXV/MODULES/WAPD.pm:51 +#: ../lib/XXV/MODULES/WAPD.pm:52 msgid "Number of port to listen for wap clients" msgstr "Nummer des Port, um auf WAP-Clients zu lauschen" @@ -3969,62 +3904,62 @@ msgid "This receive and send Ajax messages." msgstr "Dies empfängt und sendet AJAX Nachrichten." #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:113 ../wml/widgets/message.tmpl:4 ../wml/widgets/message.tmpl:7 +#: ../lib/XXV/OUTPUT/Console.pm:114 ../wml/widgets/message.tmpl:4 ../wml/widgets/message.tmpl:7 msgid "Message" msgstr "Nachricht" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:166 +#: ../lib/XXV/OUTPUT/Console.pm:167 msgid "Module" msgstr "Modul" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:167 -msgid "Short cut" +#: ../lib/XXV/OUTPUT/Console.pm:168 +msgid "Abbreviation" msgstr "Abkürzung" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:188 -msgid "Please use command and one of the following sectors:\n" +#: ../lib/XXV/OUTPUT/Console.pm:189 +msgid "Please use the command and one of the following sectors:\n" msgstr "Bitte benutzen sie das Kommando und einer der folgenden Sektoren:\n" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:204 +#: ../lib/XXV/OUTPUT/Console.pm:205 msgid "Username?" msgstr "Benutzername?" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:208 +#: ../lib/XXV/OUTPUT/Console.pm:209 msgid "Password?" msgstr "Passwort?" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:232 +#: ../lib/XXV/OUTPUT/Console.pm:233 msgid "Value" msgstr "Wert" #-------------------- #: ../lib/XXV/OUTPUT/Console.pm:28 -msgid "This receive and send ASCII messages" +msgid "This receives and sends ASCII messages" msgstr "Dies empfängt und sendet ASCII Nachrichten" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:304 ../lib/XXV/OUTPUT/Html.pm:511 ../lib/XXV/OUTPUT/Wml.pm:296 ../wml/widgets/dir.tmpl:8 -msgid "Directory '%s' is doesn't exist!" +#: ../lib/XXV/OUTPUT/Console.pm:305 ../lib/XXV/OUTPUT/Html.pm:510 ../lib/XXV/OUTPUT/Wml.pm:297 ../wml/widgets/dir.tmpl:8 +msgid "Directory '%s' does not exist!" msgstr "Verzeichnis '%s' existiert leider nicht!" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:309 ../lib/XXV/OUTPUT/Html.pm:516 ../lib/XXV/OUTPUT/Wml.pm:301 ../wml/widgets/file.tmpl:8 -msgid "File '%s' is doesn't exist!" +#: ../lib/XXV/OUTPUT/Console.pm:310 ../lib/XXV/OUTPUT/Html.pm:515 ../lib/XXV/OUTPUT/Wml.pm:302 ../wml/widgets/file.tmpl:8 +msgid "File '%s' does not exist!" msgstr "Datei '%s' existiert leider nicht!" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:313 ../lib/XXV/OUTPUT/Html.pm:525 ../lib/XXV/OUTPUT/Wml.pm:305 -msgid "Error at field '%s' (%s) : %s" +#: ../lib/XXV/OUTPUT/Console.pm:314 ../lib/XXV/OUTPUT/Html.pm:524 ../lib/XXV/OUTPUT/Wml.pm:306 +msgid "Error '%s' (%s) : %s!" msgstr "Fehler im Feld '%s' (%s) : %s" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:364 +#: ../lib/XXV/OUTPUT/Console.pm:365 msgid "" "\n" "Please use one of this list items:\n" @@ -4035,93 +3970,98 @@ msgstr "" " %s" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:46 -msgid "Sorry, but this command is not available in this Interface!" +#: ../lib/XXV/OUTPUT/Console.pm:47 +msgid "Sorry, but this command is not available in this interface!" msgstr "Entschuldigung, aber dieses Kommando ist nicht verfügbar in diesem Interface!" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:474 +#: ../lib/XXV/OUTPUT/Console.pm:475 msgid "'%s' is not an integer!" msgstr "'%s' ist keine Zahl" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:511 -msgid "Please answer with 'y'es or 'n'o: " +#: ../lib/XXV/OUTPUT/Console.pm:512 +msgid "Please answer 'y'es or 'n'o: " msgstr "Bitte antworten sie mit 'y' für 'Ja' und 'n' für 'Nein': " #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:549 -msgid "Sorry, but i cannot display an image on this Interface." +#: ../lib/XXV/OUTPUT/Console.pm:550 +msgid "Sorry, cannot display images in this interface." msgstr "Entschuldigung, aber ich kann in diesem Oberfläche keine Bilder anzeigen." #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:605 -msgid "You can only use one of this items: %s" +#: ../lib/XXV/OUTPUT/Console.pm:606 +msgid "You can only use one of these elements: %s" msgstr "Sie können nur einen von diesen Elementen verwenden: %s" #-------------------- -#: ../lib/XXV/OUTPUT/Console.pm:631 ../lib/XXV/OUTPUT/Html.pm:730 +#: ../lib/XXV/OUTPUT/Console.pm:632 ../lib/XXV/OUTPUT/Html.pm:723 msgid "Module %s not found!" msgstr "Modul %s nicht gefunden!" #-------------------- #: ../lib/XXV/OUTPUT/Dump.pm:17 -msgid "This receive and send Dump messages." +msgid "This receives and sends dump messages." msgstr "Dies empfängt und sendet Ausgabe-Nachrichten" #-------------------- #: ../lib/XXV/OUTPUT/Html.pm:28 -msgid "This receive and send HTML messages." +msgid "This receives and sends HTML messages." msgstr "Dies empfängt und sendet HTML Nachrichten" #-------------------- -#: ../lib/XXV/OUTPUT/Html.pm:450 +#: ../lib/XXV/OUTPUT/Html.pm:451 msgid "Authorization required" msgstr "Berechtigung erforderlich" #-------------------- -#: ../lib/XXV/OUTPUT/Html.pm:460 +#: ../lib/XXV/OUTPUT/Html.pm:461 msgid "Forbidden" msgstr "Verboten" #-------------------- -#: ../lib/XXV/OUTPUT/Html.pm:477 +#: ../lib/XXV/OUTPUT/Html.pm:476 msgid "Not found" msgstr "Nicht gefunden" #-------------------- -#: ../lib/XXV/OUTPUT/Html.pm:563 +#: ../lib/XXV/OUTPUT/Html.pm:562 msgid "Please wait ..." msgstr "Bitte warten ..." #-------------------- -#: ../lib/XXV/OUTPUT/Html.pm:748 ../lib/XXV/OUTPUT/Wml.pm:384 -msgid "Back to configuration screen" +#: ../lib/XXV/OUTPUT/Html.pm:741 ../lib/XXV/OUTPUT/Wml.pm:385 +msgid "Back to configuration page." msgstr "Zurück zur Konfigurationsseite" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:104 -msgid "Password from Jabberaccount" +#: ../lib/XXV/OUTPUT/Html.pm:761 +msgid "File" +msgstr "Datei" + +#-------------------- +#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:105 +msgid "Password for Jabber account" msgstr "Passwort des Jabberzuganges" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:259 -msgid "The Module NEWS::JABBER is not active!" +#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:260 +msgid "The module NEWS::JABBER is not active!" msgstr "Das Modul NEWS::JABBER ist nicht aktiv!" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:79 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:43 ../lib/XXV/OUTPUT/NEWS/RSS.pm:42 ../lib/XXV/OUTPUT/NEWS/VDR.pm:39 -msgid "Minimum level of the messages which can be displayed (1 ... 100)" +#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:80 ../lib/XXV/OUTPUT/NEWS/MAIL.pm:44 ../lib/XXV/OUTPUT/NEWS/RSS.pm:43 ../lib/XXV/OUTPUT/NEWS/VDR.pm:40 +msgid "Minimum level of messages which can be displayed (1 ... 100)" msgstr "Minimales Level der anzuzeigenden Nachrichten (1 ... 100)" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:92 -msgid "User to advise (as Jabberaccount to@jabber.server.org)" +#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:93 +msgid "User to be notified (as Jabber account to@jabber.server.org)" msgstr "Zu benachrichtigender Anwender (als Jabberzugang an@jabber.server.org)" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:98 -msgid "Jabberaccount to send message (from@jabber.server.org)" +#: ../lib/XXV/OUTPUT/NEWS/JABBER.pm:99 +msgid "Jabber account to send message (from@jabber.server.org)" msgstr "Jabberzuganges zum Senden der Nachricht" #-------------------- @@ -4130,93 +4070,93 @@ msgid "This NEWS module generate mails for news." msgstr "Dieses Nachrichten Modul erzeugen Mails für Nachrichten." #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:295 -msgid "The Module NEWS::Mail is not active!" +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:296 +msgid "The module NEWS::Mail is not active!" msgstr "Das Modul NEWS::Mail ist nicht aktiv!" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:301 -msgid "A mail with the following content is send to your Mailaccount!" +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:302 +msgid "A mail with the following content has been sent to your mail account!" msgstr "Eine Mail mit dem folgenden Inhalt, wurde an Ihrem Mailaccount gesendet!" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:56 +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:57 msgid "Time in hours to send the next mail" msgstr "Zeit in den Stunden, um die nächste Nachricht zu senden" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:70 -msgid "One or more mail addresses for sending the news" +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:71 +msgid "One or more mail addresses for sending the messages" msgstr "Eine oder mehr Mail-Adressen für das Senden der Nachrichten" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:76 -msgid "Mail address to senders describe." -msgstr "Mailadresse zum beschreiben des Absender." +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:77 +msgid "Mail address to describe the sender." +msgstr "Mailadresse zum Beschreiben des Absender." #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:81 -msgid "Hostname from SMTP mail server" +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:82 +msgid "SMTP mail server host name" msgstr "Hostname des SMTP Mail-Server" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:87 -msgid "Username for mail server access" +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:88 +msgid "User name for mail server access" msgstr "Username für Zugriff zum Mail-Server" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:92 +#: ../lib/XXV/OUTPUT/NEWS/MAIL.pm:93 msgid "Password for mail server access" msgstr "Password für Zugriff zum Mail-Server" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:126 +#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:127 msgid "XXV RSS 1.0" msgstr "XXV RSS 1.0" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:128 ../lib/XXV/OUTPUT/NEWS/RSS.pm:152 -msgid "Important messages from your vdr/xxv" +#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:129 ../lib/XXV/OUTPUT/NEWS/RSS.pm:153 +msgid "Important messages from your VDR/XXV" msgstr "Wichtige Nachrichten vom VDR/XXV" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:131 -msgid "XXV Messages" +#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:132 +msgid "XXV messages" msgstr "XXV Meldungen" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:150 +#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:151 msgid "XXV RSS 2.0" msgstr "XXV RSS 2.0" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:210 -msgid "The Module NEWS::RSS is not active!" +#: ../lib/XXV/OUTPUT/NEWS/RSS.pm:211 +msgid "The module NEWS::RSS is not active!" msgstr "Das Modul NEWS::RSS ist nicht aktiv!" #-------------------- #: ../lib/XXV/OUTPUT/NEWS/RSS.pm:23 -msgid "This NEWS module generate an RSS Newsfeed for your rss reader." +msgid "This NEWS module generates an RSS news feed for your RSS reader." msgstr "Dieses Nachrichten Modul erzeugen ein RSS Newsfeed für Ihren RSS Leser." #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/VDR.pm:146 -msgid "The Module NEWS::VDR is not active!" +#: ../lib/XXV/OUTPUT/NEWS/VDR.pm:147 +msgid "The module NEWS::VDR is not active!" msgstr "Das Module NEWS::VDR ist nicht aktiv!" #-------------------- -#: ../lib/XXV/OUTPUT/NEWS/VDR.pm:160 -msgid "A message is send to your SVDRPServer!" +#: ../lib/XXV/OUTPUT/NEWS/VDR.pm:161 +msgid "A message has been sent to your VDR!" msgstr "Eine Nachricht wurde an Ihren SVDRPServer gesendet!" #-------------------- #: ../lib/XXV/OUTPUT/NEWS/VDR.pm:20 -msgid "This NEWS module generate a messages for vdr interface." +msgid "This NEWS module generates messages for the VDR interface." msgstr "Dieses NEWS Modul erzeugt Nachrichten für vdr Schnittstelle." #-------------------- #: ../lib/XXV/OUTPUT/Wml.pm:21 -msgid "This receive and send Wap messages." +msgid "This receives and sends WAP messages." msgstr "Dies empfängt und sendet WAP Nachrichten" #-------------------- @@ -4227,7 +4167,7 @@ msgstr "Weiter" #-------------------- #: ../wml/tlist.tmpl:5 ../wml/tsearch.tmpl:5 #. (12) -msgid "List timers" +msgid "Show timers" msgstr "Zeige Timer" #-------------------- diff --git a/locale/de/LC_MESSAGES/xxv.mo b/locale/de/LC_MESSAGES/xxv.mo Binary files differindex 137325d..81f8a8e 100644 --- a/locale/de/LC_MESSAGES/xxv.mo +++ b/locale/de/LC_MESSAGES/xxv.mo diff --git a/wml/tlist.tmpl b/wml/tlist.tmpl index 91668fc..a3289c1 100644 --- a/wml/tlist.tmpl +++ b/wml/tlist.tmpl @@ -2,10 +2,10 @@ <card id="first" title="XXV <?% gettext("Timers") %?>"> <p> <?% IF allow('tl') %?> -<a href="?cmd=tl#t1"><img src="images/forward.wbm" alt="<?% gettext("List timers") %?>" /><?% gettext("List timers",12) %?></a><br /> +<a href="?cmd=tl#t1"><img src="images/forward.wbm" alt="<?% gettext("List timers") %?>" /><?% gettext("Show timers",12) %?></a><br /> <?% END %?> <?% IF allow('tn') %?> -<a href="?cmd=tn"><img src="images/new.wbm" alt="<?% gettext("Create a new timer") %?>" /><?% gettext("Create a new timer",12) %?></a><br /> +<a href="?cmd=tn"><img src="images/new.wbm" alt="<?% gettext("Create new timer") %?>" /><?% gettext("Create new timer",12) %?></a><br /> <?% END %?> <?% IF allow('tu') %?> <a href="?cmd=tu"><img src="images/refresh.wbm" alt="<?% gettext("Update timers") %?>" /><?% gettext("Update timers",12) %?></a><br /> @@ -46,7 +46,7 @@ <a href="?cmd=te&data=<?% id %?>"><img src="images/edit.wbm" alt="<?% gettext("Edit") %?>" /></a> <?% END %?> <?% IF allow('tdelete') %?> - <a href="?cmd=td&data=<?% id %?>"><img src="images/delete.wbm" alt="<?% gettext("Del") %?>" /></a> + <a href="?cmd=td&data=<?% id %?>"><img src="images/delete.wbm" alt="<?% gettext("Delete") %?>" /></a> <?% END %?> <?% END %?> <?% ######################################################################## %?> diff --git a/wml/widgets/dir.tmpl b/wml/widgets/dir.tmpl index ca00351..a8d03cd 100644 --- a/wml/widgets/dir.tmpl +++ b/wml/widgets/dir.tmpl @@ -5,7 +5,7 @@ <input type="text" name="<?% data.NAME | replace('__','var') %?>" value="<?% entities(val) %?>" /><br/> <?% CATCH File %?> <?% UNLESS File.isdir %?> -<i><?% gettext("Directory '%s' is doesn't exist!") | replace('%s',val)%?></i><br/> +<i><?% gettext("Directory '%s' does not exist!") | replace('%s',val)%?></i><br/> <input type="text" name="<?% data.NAME | replace('__','var') %?>" value="<?% entities(val) %?>" /><br/> <?% END %?> <?% END %?> diff --git a/wml/widgets/file.tmpl b/wml/widgets/file.tmpl index 1734d78..1c7da14 100644 --- a/wml/widgets/file.tmpl +++ b/wml/widgets/file.tmpl @@ -5,6 +5,6 @@ <input type="text" name="<?% data.NAME | replace('__','var') %?>" value="<?% entities(val) %?>" /><br/> <?% CATCH File %?> <input type="text" name="<?% data.NAME | replace('__','var') %?>" value="<?% entities(val) %?>" /><br/> -<i><?% gettext("File '%s' is doesn't exist!") | replace('%s',val)%?></i><br/> +<i><?% gettext("File '%s' does not exist!") | replace('%s',val)%?></i><br/> <?% END %?> <?% global.fomularfield.push(data.NAME) %?> |
