Tadashi Okoshi
slash****@users*****
2005年 6月 30日 (木) 15:06:35 JST
Index: affelio/index.cgi diff -u affelio/index.cgi:1.6 affelio/index.cgi:1.7 --- affelio/index.cgi:1.6 Thu Jun 30 07:54:05 2005 +++ affelio/index.cgi Thu Jun 30 15:06:35 2005 @@ -6,7 +6,7 @@ # http://affelio.jp/ (Japan) # http://affelio.jp/ (USA and other area) # -# $Id: index.cgi,v 1.6 2005/06/29 22:54:05 slash5234 Exp $ +# $Id: index.cgi,v 1.7 2005/06/30 06:06:35 slash5234 Exp $ use strict; @@ -16,6 +16,7 @@ $CGI::POST_MAX = 102_400; use CGI::Session qw(-ip_match); use HTML::Template; +use Error qw(:try); use lib("./lib"); use Affelio; @@ -27,18 +28,24 @@ use Affelio::SNS::Handshaker_c; debug_print("index.cgi: start."); +my $q = new CGI; ############################################################################ #Load Affelio ############################################################################ -my $cfg_dir = "."; -my $af = new Affelio(ConfigDir => $cfg_dir); my $wi = new Affelio::misc::WebInput(); +my $cfg_dir = "./"; +my $af; +try{ + $af = new Affelio(ConfigDir => $cfg_dir); +}catch Error with{ + my $e = shift; + error($q, "Affelio load error.\n" . $e); +}; ############################################################################ #Check session w/ cookie ############################################################################ -my $q = new CGI; my $sid = $q->cookie("affelio-$af->{user__nickname}"); my $session = new CGI::Session(undef, $sid, @@ -100,8 +107,13 @@ $output_data{"site__skin_dir"} = $af->{site__web_root} . "/skins/" . $af->{userpref__skin}; $output_data{"site__locale"} = $af->{site__locale}; -$af->get_module_list(\%output_data, $visitor_afid, $visitor_type); -$af->get_guest_owner_list(\%output_data); +try{ + $af->get_module_list(\%output_data, $visitor_afid, $visitor_type); + $af->get_guest_owner_list(\%output_data); +}catch Error with{ + my $e = shift; + error($q, "Affelio init error.\n" . $e); +}; ################# @@ -133,53 +145,69 @@ "./bin/get_content.cgi?module=core&content=/profile/profile_face.jpg"; ###################################################### -#Data prep (2) +#Data prep from Models ###################################################### #Inject Profile Data use Affelio::App::ShowProfile; -Affelio::App::ShowProfile::show_profile($af, - \%output_data, - $visitor_type, - $visitor_afid); +try{ + Affelio::App::ShowProfile::show_profile($af, + \%output_data, + $visitor_type, + $visitor_afid); +}catch Error with{ + my $e = shift; + error($q, "Affelio: model execution error.\n" . $e); +}; -###################################################### -#Data prep (3) Tag-dependent -###################################################### #Friendlist use Affelio::App::FriendRoutines; -my @friendlist_5 - = Affelio::App::FriendRoutines::get_friends_list($af, - $visitor_afid, - $visitor_type, - 5); +my @friendlist_5; +try{ + @friendlist_5 = get_friends_list($af, $visitor_afid, $visitor_type, 5); +}catch Error with{ + my $e = shift; + error($q, "Affelio: model execution error.\n" . $e); +}; $output_data{"friendlist_5"} = \@friendlist_5; -my @friendlist_5_IF - = Affelio::App::FriendRoutines::get_friends_list_IF($af, - $visitor_afid, - $visitor_type, - 5); +my @friendlist_5_IF; +try{ + @friendlist_5_IF = get_friends_list_IF($af,$visitor_afid, $visitor_type,5); +}catch Error with{ + my $e = shift; + error($q, "Affelio: model execution error.\n" . $e); +}; $output_data{"friendlist_5_IF"} = \@friendlist_5_IF; -my @friendlist_all - = Affelio::App::FriendRoutines::get_friends_list($af, - $visitor_afid, - $visitor_type, - -1); +my @friendlist_all; +try{ + @friendlist_all = get_friends_list($af, $visitor_afid, $visitor_type, -1); +}catch Error with{ + my $e = shift; + error($q, "Affelio: model execution error.\n" . $e); +}; $output_data{"friendlist_all"} = \@friendlist_all; -my @friendlist_all_IF - = Affelio::App::FriendRoutines::get_friends_list_IF($af, - $visitor_afid, - $visitor_type, - -1); +my @friendlist_all_IF; +try{ + @friendlist_all_IF=get_friends_list_IF($af,$visitor_afid,$visitor_type,-1); +}catch Error with{ + my $e = shift; + error($q, "Affelio: model execution error.\n" . $e); +}; $output_data{"friendlist_all_IF"} = \@friendlist_all_IF; ########################################################################### #Inject data into template ########################################################################### -my $tmpl = new HTML::Template( filename => $TMPL_FILE, +my $tmpl; +try{ + $tmpl = new HTML::Template( filename => $TMPL_FILE, die_on_bad_params => 0); +}catch Error with{ + my $e = shift; + error($q, "Affelio: error in HTML::Template init.\n" . $e); +}; foreach my $data_key (keys(%output_data)) { debug_print("index.cgi: $data_key = $output_data{$data_key}"); @@ -197,9 +225,14 @@ $afid = $visitor_afid; } - $af->{alm}->save_log($afid, $visitor_nickname, $visitor_type); -} + try{ + $af->{alm}->save_log($afid, $visitor_nickname, $visitor_type); + }catch Error with{ + my $e = shift; + error($q, "Affelio: error in AccessLogging\n" . $e); + }; +} ########################################################################### #Output @@ -207,5 +240,3 @@ print "Content-type: text/html; charset=UTF-8\n"; print "Pragma: no-cache", "\n\n"; print $af->translate_templateL10N($tmpl->output); - -