[Bio] / SeedViewer / seedviewer.cgi Repository:
ViewVC logotype

Diff of /SeedViewer/seedviewer.cgi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.34, Thu Dec 23 18:03:19 2010 UTC revision 1.38, Fri Sep 16 19:28:10 2011 UTC
# Line 10  Line 10 
10  use FIGRules;  use FIGRules;
11  use FIG_Config;  use FIG_Config;
12  use WebConfig;  use WebConfig;
13    use Data::Dumper;
14    
15  my $have_fcgi;  my $have_fcgi;
16  eval {  eval {
# Line 19  Line 20 
20    
21  if ($have_fcgi && ! $ENV{REQUEST_METHOD})  if ($have_fcgi && ! $ENV{REQUEST_METHOD})
22  {  {
23    
24        #
25        # Precompile modules. Find where we found one, and use that path
26        # to walk for the rest.
27        #
28        my $mod_path = $INC{"WebComponent/Ajax.pm"};
29        if ($mod_path && $mod_path =~ s,WebApplication/WebComponent/Ajax\.pm$,,)
30        {
31            local $SIG{__WARN__} = sub {};
32            for my $what (qw(SeedViewer RAST WebApplication))
33            {
34                for my $which (qw(WebPage WebComponent DataHandler))
35                {
36                    opendir(D, "$mod_path/$what/$which") or next;
37                    my @x = grep { /^[^.]/ } readdir(D);
38                    for my $mod (@x)
39                    {
40                        $mod =~ s/\.pm$//;
41                        my $fullmod = join("::", $what, $which, $mod);
42                        eval " require $fullmod; ";
43                    }
44                    closedir(D);
45                }
46            }
47        }
48    
49      my $max_requests = $FIG_Config::fcgi_max_requests || 50;      my $max_requests = $FIG_Config::fcgi_max_requests || 50;
50      my $n_requests = 0;      my $n_requests = 0;
51    
# Line 51  Line 78 
78      eval {      eval {
79          &main($cgi);          &main($cgi);
80      };      };
   
81      if ($@)      if ($@)
82      {      {
83          my $error = $@;          my $error = $@;
# Line 83  Line 109 
109          print CGI::redirect(-uri => "$FIG_Config::cgi_url/wiki/rest.cgi/NmpdrPlugin/SeedViewer$parms",          print CGI::redirect(-uri => "$FIG_Config::cgi_url/wiki/rest.cgi/NmpdrPlugin/SeedViewer$parms",
110                              -status => 301);                              -status => 301);
111      } else {      } else {
112            if ($FIG_Config::log_cgi)
113            {
114                if (open(CLOG, ">>", $FIG_Config::log_cgi))
115                {
116                    for my $p (sort $cgi->param)
117                    {
118                        print CLOG Data::Dumper->dump([$cgi->params($p)], [qq(\$params{'$p'})]);
119                    }
120                    close(CLOG);
121                }
122            }
123    
124          # initialize layout          # initialize layout
125          # Use the template file for the current mode-- NMPDR or SEED          # Use the template file for the current mode-- NMPDR or SEED
126          my $templateFile = TMPL_PATH . "/SeedViewer.tmpl";          my $templateFile = TMPL_PATH . "/SeedViewer.tmpl";
# Line 101  Line 139 
139          $menu->add_entry('»Navigate', 'Subsystems', '?page=SubsystemSelect');          $menu->add_entry('»Navigate', 'Subsystems', '?page=SubsystemSelect');
140          $menu->add_entry('»Navigate', 'Scenarios', '?page=Scenarios');          $menu->add_entry('»Navigate', 'Scenarios', '?page=Scenarios');
141          $menu->add_entry('»Navigate', 'FigFams', '?page=FigFamViewer');          $menu->add_entry('»Navigate', 'FigFams', '?page=FigFamViewer');
142            if ($FIG_Config::atomic_regulon_dir && -d $FIG_Config::atomic_regulon_dir)
143            {
144                $menu->add_entry('»Navigate', 'Atomic Regulons', '?page=AtomicRegulon&genome=all');
145            }
146          $menu->add_entry('»Navigate', 'BLAST Search', '?page=BlastRun');          $menu->add_entry('»Navigate', 'BLAST Search', '?page=BlastRun');
147            $menu->add_entry('»Navigate', 'Request a Subsystem', '?page=SubsystemPrimer');
148          if (defined($FIG_Config::teacher_db)) {          if (defined($FIG_Config::teacher_db)) {
149              $menu->add_category('»Teacher', '?page=Teach', undef, ['edit', 'problem_list'], 96);              $menu->add_category('»Teacher', '?page=Teach', undef, ['edit', 'problem_list'], 96);
150              $menu->add_entry('»Teacher', 'Class Performance', '?page=Teach');              $menu->add_entry('»Teacher', 'Class Performance', '?page=Teach');
# Line 125  Line 168 
168          $menu->add_entry('»Help', 'Register', '?page=Register');          $menu->add_entry('»Help', 'Register', '?page=Register');
169          $menu->add_entry('»Help', 'I forgot my Password', '?page=RequestNewPassword');          $menu->add_entry('»Help', 'I forgot my Password', '?page=RequestNewPassword');
170    
171            my $default_page = $FIG_Config::seedviewer_default_home || "Home";
172    
173          # initialize application          # initialize application
174          my $WebApp = WebApplication->new( { id => 'SeedViewer',          my $WebApp = WebApplication->new( { id => 'SeedViewer',
175                                              menu     => $menu,                                              menu     => $menu,
176                                              layout   => $layout,                                              layout   => $layout,
177                                              default  => 'Home',                                              default  => $default_page,
178                                              cgi => $cgi,                                              cgi => $cgi,
179                                            } );                                            } );
180    

Legend:
Removed from v.1.34  
changed lines
  Added in v.1.38

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3