]> bicyclesonthemoon.info Git - ott/bsta/blobdiff - update.1.pl
input validation; goto form; show version; 2 words password
[ott/bsta] / update.1.pl
index a5f0c5efbd4e3f231efcc024d5390cc3a9aa4e00..8cfba90fa447128fd0229b08e492037186888b16 100644 (file)
@@ -26,23 +26,15 @@ use Encode ('encode', 'decode');
 
 ###PERL_LIB: use lib /botm/lib/bsta
 use botm_common (
-       'read_data_file',
-       'join_path'
 );
 use bsta_lib (
        'STATE',
        'ong',
-       'write_index', 'write_static_viewer_page', 'write_static_goto'
+       'write_index', 'write_static_viewer_page', 'write_static_goto',
+       'read_frame_data', 'read_default', 'read_words_list',
+       'read_settings', 'read_state'
 );
 
-###PERL_PATH_SEPARATOR:     PATH_SEPARATOR     = /
-
-###PERL_DATA_PATH:          DATA_PATH          = /botm/data/bsta/
-###PERL_DATA_DEFAULT_PATH:  DATA_DEFAULT_PATH  = /botm/data/bsta/default
-###PERL_DATA_SETTINGS_PATH: DATA_SETTINGS_PATH = /botm/data/bsta/settings
-###PERL_DATA_STATE_PATH:    DATA_STATE_PATH    = /botm/data/bsta/state
-###PERL_DATA_WORDS_PATH:    DATA_WORDS_PATH    = /botm/data/bsta/words/
-
 binmode STDIN,  ':encoding(UTF-8)';
 binmode STDOUT, ':encoding(UTF-8)';
 binmode STDERR, ':encoding(UTF-8)';
@@ -51,9 +43,9 @@ decode_argv();
 my $time = time();
 srand ($time-$$);
 
-my %settings  = read_data_file(DATA_SETTINGS_PATH());
-my %default   = read_data_file(DATA_DEFAULT_PATH());
-my %state     = read_data_file(DATA_STATE_PATH());
+my %settings  = read_settings();
+my %default   = read_default();
+my %state     = read_state();
 my %all_frame_data = ();
 my %all_words_data = ();
 
@@ -173,9 +165,7 @@ sub get_frame_data {
                return $r;
        }
        
-       my %frame_data = read_data_file(
-               join_path(PATH_SEPARATOR(), DATA_PATH(), $f)
-       );
+       my %frame_data = read_frame_data($f);
        $all_frame_data{$f} = \%frame_data;
        return \%frame_data;
 }
@@ -197,15 +187,9 @@ sub get_words_data {
                return $r;
        }
        
-       my %frame_data = read_data_file(
-               join_path(PATH_SEPARATOR(), DATA_WORDS_PATH(), $f),
-               '', # encoding,
-               0,  # no header
-               1,  # header only
-               1,  # as list; not relevant
-       );
-       $all_words_data{$f} = \%frame_data;
-       return \%frame_data;
+       my %words_data = read_words_list($f, 1);
+       $all_words_data{$f} = \%words_data;
+       return \%words_data;
 }
 
 sub make_static_page {
@@ -216,10 +200,7 @@ sub make_static_page {
        my $f = int($id);
        unless (
                ($f >= 0) && (
-                       ($f < $last_frame-1) || (
-                               ($ong_state >= STATE->{'ready'}) &&
-                               ($f <= $last_frame-1)
-                       ) || (
+                       ($f < $last_frame) || (
                                ($ong_state >= STATE->{'end'}) &&
                                ($f <= $last_frame)
                        )