[Affelio-cvs 24] CVS update: affelio

Back to archive index

Tadashi Okoshi slash****@users*****
2005年 6月 17日 (金) 13:35:40 JST


Index: affelio/setup.cgi
diff -u affelio/setup.cgi:1.2 affelio/setup.cgi:1.3
--- affelio/setup.cgi:1.2	Tue Jun 14 15:24:02 2005
+++ affelio/setup.cgi	Fri Jun 17 13:35:39 2005
@@ -6,16 +6,15 @@
 #    http://affelio.jp/ (Japan)
 #    http://affelio.jp/ (USA and other area)
 #
-# $Id: setup.cgi,v 1.2 2005/06/14 06:24:02 slash5234 Exp $
+# $Id: setup.cgi,v 1.3 2005/06/17 04:35:39 slash5234 Exp $
 
 use strict;
 
 use CGI qw(-unique_headers);
 $CGI::DISABLE_UPLOADS = 1;
 $CGI::POST_MAX = 102_400;
-
 use Cwd;
-
+use DBI;
 use lib("./extlib");
 use HTML::Template;
 use lib("./lib");
@@ -23,227 +22,107 @@
 use Affelio::misc::MyCrypt;
 use Affelio::misc::L10N;
 use Affelio::misc::Debug qw(debug_print);
-use DBI;
-
-my  $g_sendmail_path = "";
-my  $g_username="";
-my  $g_password="";
-my  $g_nickname="";
-my  $g_email="";
-my  $g_crypted_password="";
 
 ############################################################################
-#Load Affelio
-############################################################################
-my $lh = "";
-my $locale =""; 
-
-sub load_locale{
-    my $locale_name = shift;
-    $lh = Affelio::misc::L10N->get_handle(($locale_name));
-    die "Couldn't make a language handle. \n$@" unless $lh;
-}
-
+#Main
 ############################################################################
-my $q = new CGI;
-my $fs_root = cwd();
-my $web_root = $q->self_url();
-$web_root =~ s|/setup\.cgi.*||;
-$locale = $q->param("locale");
-
-my $action_url="";
-
-my $stage = $q->url_param("stage");
-if($stage eq "") { $stage =0};
-
-############################################
-my $err_msg="";
-my $msg="";
-my $img="";
-my $title="";
+my $g_username="";
+my $g_password="";
+my $g_nickname="";
+my $g_email="";
+my $g_crypted_password="";
+my $cgi = new CGI;
+my $g_fsroot = cwd();
+my $g_webroot = $cgi->self_url();
+my $g_lh = "";
+my $g_locale =""; 
+my $g_actionurl="";
+my $g_err="";
+my $g_msg="";
+my $g_img="";
+my $g_title="";
 my $TMPL_FILE="";
 my %output_data=();
 
-if($stage ==0){
+$g_webroot =~ s|/setup\.cgi.*||;
+$g_locale = $cgi->param("locale");
 
-    $TMPL_FILE = "$fs_root/templates/default/owner_side/setup_0.tmpl";
-    $img= "0.jpg";
-    $action_url="setup.cgi?stage=30";
-
-}elsif($stage ==30){
-
-    load_locale($locale);
-    $TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-    $title= title_30();
-    $msg= msg_30();
-    $img= "0.jpg";
-    $err_msg="";
-    $action_url="setup.cgi?stage=50";
-
-}elsif($stage ==50){
-
-    load_locale($q->param("locale"));
-    $TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-    $title= title_50();
-    $msg= msg_50();
-    $img= "100.jpg";
-    $err_msg="";
-    $action_url="setup.cgi?stage=100";
+my $g_stage = $cgi->url_param("stage");
+if($g_stage eq "") { $g_stage =0};
 
-}elsif($stage ==100){
+if($g_locale ne ""){
+    load_locale($g_locale);
+}
 
-    load_locale($q->param("locale"));
-    $err_msg= check_50();
-    if($err_msg ne ""){
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_50();
-	$msg= msg_50();
-	$img= "100.jpg";
-	$action_url="setup.cgi?stage=100";
-    }
-    else{
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_100();
-	$msg= msg_100();
-	$img= "100.jpg";
-	$err_msg="";
-	$action_url="setup.cgi?stage=200";
-    }
+############################################
+if($g_stage ==0){
+    show_0();
 
-}elsif($stage ==200){
+}elsif($g_stage ==30){
+    show_30();
 
-    load_locale($locale);
-    $err_msg= check_100();
-    if($err_msg ne ""){
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_100();
-	$msg= msg_100();
-	$img= "100.jpg";
-	$action_url="setup.cgi?stage=200";
-    }
-    else{
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_200();
-	$msg= msg_200();
-	$img= "200.jpg";
-	$err_msg="";
-	$action_url="setup.cgi?stage=300";
-    }
-
-}elsif($stage ==300){
-
-    load_locale($locale);
-    $g_sendmail_path = $q->param("sendmail_path");
-    $err_msg= check_200();
+}elsif($g_stage ==50){
+    show_50();
 
-    if($err_msg ne ""){
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_200();
-	$msg= msg_200();
-	$img= "200.jpg";
-	$action_url="setup.cgi?stage=300";
-    }
-    else{
-	save_affelio_cfg();
-
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_300();
-	$msg= msg_300();
-	$img= "300.jpg";
-	$err_msg="";
-	$action_url="setup.cgi?stage=400";
+}elsif($g_stage ==100){
+    $g_err= check_50();
+    if($g_err ne ""){
+	show_50();
+    }else{
+	show_100();
     }
 
-}elsif($stage ==400){
-
-    load_locale($locale);
-    $err_msg= check_300();
-    if($err_msg ne ""){
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_300();
-	$msg= msg_300();
-	$img= "300.jpg";
-	$action_url="setup.cgi?stage=400";
-    }
-    else{
-	#make userdata/xxxxx session/yyyy directories
-	srand(time ^ ($$ + ($$ << 15)));
-	#userdata
-	my $dir1 = Affelio::misc::MyCrypt::generate_password();
-	mkdir("userdata/$dir1", 0777);
-	my $dir2 = Affelio::misc::MyCrypt::generate_password();
-	mkdir("session/$dir2", 0777);
-
-	$TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-	$title= title_400();
-	$msg= msg_400();
-	$img= "400.jpg";
-	$err_msg="";
-	$action_url="setup.cgi?stage=500";
-    }
-
-}elsif($stage ==500){
-
-    load_locale($locale);
-    $g_username = $q->param("username");
-    $g_password = $q->param("password");
-    $g_nickname = $q->param("nickname");
-    $g_email = $q->param("email");
-
-    #Password
-    my @salts = ( "A".."Z", "a".."z", "0".."9", ".", "/" );
-    my $salt = $salts[int(rand(64))] . $salts[int(rand(64))];
-    $g_crypted_password = crypt($g_password, $salt);
-
-    #Determine userdata/..../ directory
-    my $userdata_dir="";
-    my $dir;
-    opendir(DIR, "./userdata");
-    while (defined($dir = readdir(DIR))) {
-	if(($dir ne '.') && ($dir ne '..') 
-	   && ($dir ne 'default') && ($dir ne 'CVS')){
-	    $userdata_dir = "./userdata/$dir";
-	}
+}elsif($g_stage ==200){
+    $g_err= check_100();
+    if($g_err ne ""){
+	show_100();
+    }else{
+	show_200();
     }
-    closedir(DIR);
-
-    #Copy default face JPEG file 
-    system("cp -f defaults/profile_face.jpg $userdata_dir/profile_face.jpg");
-    system("chmod 666 $userdata_dir/profile_face.jpg");
-
-    #Copy default preference file
-    system("cp -f defaults/preference.cfg $userdata_dir/preference.cfg");
 
-    #Generate login.cfg file
-    open(OUT, "> $userdata_dir/login.cfg");
-    print OUT "[auth]\n";
-    print OUT "username=$g_username\n";
-    print OUT "password=$g_crypted_password\n";
-    close OUT;
+}elsif($g_stage ==300){
+    $g_err= check_200();
+    if($g_err ne ""){
+	show_200();
+    }else{
+	show_300();
+    }
 
-    #Database
-    init_database($g_nickname, $g_email);
+}elsif($g_stage ==350){
+    $g_err= check_300();
+    if($g_err ne ""){
+	show_300();
+    }else{
+	show_350();
+    }
 
-    ##########################################################
+}elsif($g_stage ==400){
+    $g_err= check_350();
+    if($g_err ne ""){
+	show_350();
+    }else{
+	show_400();
+    }
 
-    $TMPL_FILE = "$fs_root/templates/default/owner_side/setup_1.tmpl";
-    $title= title_500();
-    $msg= msg_500();
-    $img= "500.jpg";
-    $err_msg="";
-    $action_url="";
+}elsif($g_stage==500){
+    $g_err= check_400();
+    if($g_err ne ""){
+	show_400();
+    }else{
+	show_500();
+    }
 }
 
-##########################################################################
+#########################################
 #HTML::Template processing
-##########################################################################
-%output_data = ("msg", $msg,
-		"title", $title,
-		"err_msg", $err_msg,
-		"tmpl_path", "$web_root/templates/default/owner_side",
-		"locale", $locale,
-		"action_url", $action_url,
-		"img_filename", $img
+#########################################
+%output_data = ("msg", $g_msg,
+		"title", $g_title,
+		"err_msg", $g_err,
+		"tmpl_path", "$g_webroot/templates/default/owner_side",
+		"locale", $g_locale,
+		"action_url", $g_actionurl,
+		"img_filename", $g_img
 		);
 
 my $tmpl = new HTML::Template( filename => $TMPL_FILE,
@@ -253,9 +132,9 @@
 } 
 my $out_msg =  $tmpl->output;
 
-##########################################################################
+#########################################
 #<AF_M> L10N Template processing
-##########################################################################
+#########################################
 $out_msg = translate_templateL10N_for_setup($out_msg);
 
 print "Content-type: text/html; charset=UTF-8\n";
@@ -264,31 +143,48 @@
 exit(1);
 
 
+
+
 ############################################################################
 #Sub routines
 ############################################################################
-sub title_30{
-    return $lh->maketext("_SETUP_title_30");
-}
-sub msg_30{
-    return $lh->maketext("_SETUP_msg_30");
+sub show_0{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_0.tmpl";
+    $g_title ="";
+    $g_msg="";
+    $g_img= "0.jpg";
+    $g_actionurl="setup.cgi?stage=30";
+}
+
+#########################################
+sub show_30{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_30");
+    $g_msg= $g_lh->maketext("_SETUP_msg_30");
+    $g_img= "100.jpg";
+    $g_actionurl="setup.cgi?stage=50";
+}
+
+#########################################
+sub show_50{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_50");
+    $g_msg= msg_50();
+    $g_img= "100.jpg";
+    $g_actionurl="setup.cgi?stage=100";
 }
 
-
-############################################################################
-sub title_50{
-    return $lh->maketext("_SETUP_title_50");
-}
 sub msg_50{
-    my $msg = $lh->maketext("_SETUP_msg_50_1");
+    my $msg = $g_lh->maketext("_SETUP_msg_50_1");
     $msg .= '<blockquote>';
     $msg .= check_module("CGI");
     $msg .= check_module("CGI::Session");
     $msg .= check_module("DBI");
+    $msg .= $g_lh->maketext("_SETUP_msg_50_3");
     $msg .= check_module("DBD::SQLite");
+    $msg .= check_module("DBD::mysql");
     $msg .= '</blockquote>';
-
-    $msg .= $lh->maketext("_SETUP_msg_50_2");
+    $msg .= $g_lh->maketext("_SETUP_msg_50_2");
 }
 
 sub check_50{
@@ -301,43 +197,46 @@
     $err += load_module("DBD::SQLite");
 
     if($err < 0){
-	$err_msg = $lh->maketext("_SETUP_check_50_err1");
+	$err_msg = $g_lh->maketext("_SETUP_check_50_err1");
     }
     return $err_msg;
 }
 
-
-############################################################################
-sub title_100{
-    return $lh->maketext("_SETUP_title_100");
-}
-sub msg_100{
-    return $lh->maketext("_SETUP_msg_100");
+#########################################
+sub show_100{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_100");
+    $g_msg= $g_lh->maketext("_SETUP_msg_100");
+    $g_img= "100.jpg";
+    $g_actionurl="setup.cgi?stage=200";
 }
 
 sub check_100{
     my $err_msg="";
 
     if(! -e "affelio.cfg"){
-	$err_msg .= $lh->maketext("_SETUP_check_100_err1");
+	$err_msg .= $g_lh->maketext("_SETUP_check_100_err1");
     }else{
 	if(! -r "affelio.cfg"){
-	    $err_msg .= $lh->maketext("_SETUP_check_100_err2");
+	    $err_msg .= $g_lh->maketext("_SETUP_check_100_err2");
 	}
 	if(! -w "affelio.cfg"){
-	    $err_msg .= $lh->maketext("_SETUP_check_100_err3");
+	    $err_msg .= $g_lh->maketext("_SETUP_check_100_err3");
 	}
     }
     return $err_msg;
 }
 
-############################################################################
-sub title_200{
-    return $lh->maketext("_SETUP_title_200");
+#########################################
+sub show_200{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_200");
+    $g_msg= msg_200();
+    $g_img= "200.jpg";
+    $g_actionurl="setup.cgi?stage=300";
 }
+
 sub msg_200{
-    
-    
     my $sendmail_path="";
     if(-f "/usr/sbin/sendmail"){
 	$sendmail_path = "/usr/sbin/sendmail";
@@ -346,48 +245,46 @@
 	$sendmail_path = "/usr/lib/sendmail";
     }
 
-    my $msg = $lh->maketext("_SETUP_msg_200");
-
+    my $msg = $g_lh->maketext("_SETUP_msg_200");
     $msg .= '<P><TABLE BORDR="0"><TR><TD>Sendmail:&nbsp;</TD>';
     $msg .= '<TD><INPUT TYPE="text" NAME="sendmail_path" SIZE="40" VALUE="';
     $msg .= $sendmail_path;
     $msg .= '"></TD></TR>';
     $msg .= '</TABLE>';
-
     return($msg);
 }
 
 sub check_200{
     my $err_msg="";
 
-    if(-f $g_sendmail_path){
+    my $sendmail_path = $cgi->param("sendmail_path");
+    if(-f $sendmail_path){
     }else{
-	$err_msg .= $lh->maketext("_SETUP_check_200_err1", $g_sendmail_path);
+	$err_msg .= $g_lh->maketext("_SETUP_check_200_err1", $sendmail_path);
+	return $err_msg;
     }
 
-    return $err_msg;
-}
-
-############################################################################
-sub save_affelio_cfg{
     open(OUT, "> affelio.cfg");
     print OUT "[site_config]\n";
-    print OUT "fs_root=$fs_root\n";
-    print OUT "web_root=$web_root\n";
-    print OUT "char_set =$locale\n";
+    print OUT "fs_root=$g_fsroot\n";
+    print OUT "web_root=$g_webroot\n";
+    print OUT "char_set =$g_locale\n";
     print OUT "template =default\n";
     print OUT "\n";
     print OUT "[command]\n";
-    print OUT "sendmail=$g_sendmail_path\n";
+    print OUT "sendmail=$sendmail_path\n";
     close OUT;
-}
 
-sub title_300{
-    return $lh->maketext("_SETUP_title_300");
+    return("");
 }
 
-sub msg_300{
-    return $lh->maketext("_SETUP_msg_300");
+#########################################
+sub show_300{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_300");
+    $g_msg= $g_lh->maketext("_SETUP_msg_300");
+    $g_img= "300.jpg";
+    $g_actionurl="setup.cgi?stage=350";
 }
 
 sub check_300{
@@ -405,69 +302,175 @@
     my $skinsdir_mode = substr((sprintf "%03o", $st[2]), -3);
 
     if($cfg_mode ne "444"){
-	$err_msg .= $lh->maketext("_SETUP_check_300_err1", 
+	$err_msg .= $g_lh->maketext("_SETUP_check_300_err1", 
 				  "affelio.cfg", 444, $cfg_mode);
     }
     if($userdatadir_mode ne "777"){
-	$err_msg .= $lh->maketext("_SETUP_check_300_err1", 
+	$err_msg .= $g_lh->maketext("_SETUP_check_300_err1", 
 				  "userdata", 777, $userdatadir_mode);
     }
     if($sessiondir_mode ne "777"){
-	$err_msg .= $lh->maketext("_SETUP_check_300_err1", 
+	$err_msg .= $g_lh->maketext("_SETUP_check_300_err1", 
 				  "session", 777, $sessiondir_mode);
     }
     if($templatesdir_mode ne "777"){
-	$err_msg .= $lh->maketext("_SETUP_check_300_err1", 
+	$err_msg .= $g_lh->maketext("_SETUP_check_300_err1", 
 				  "templates_dyn", 777, $templatesdir_mode);
     }
     if($skinsdir_mode ne "777"){
-	$err_msg .= $lh->maketext("_SETUP_check_300_err1", 
+	$err_msg .= $g_lh->maketext("_SETUP_check_300_err1", 
 				  "skins", 777, $skinsdir_mode);
     }
 
-    return $err_msg;
-}
-############################################################################
-sub title_400{
-    return $lh->maketext("_SETUP_title_400");
-}
+    if($err_msg ne ""){
+	return($err_msg);
+    }
 
-sub msg_400{
-    return $lh->maketext("_SETUP_msg_400");
-}
+    #make userdata/xxxxx session/yyyy directories
+    srand(time ^ ($$ + ($$ << 15)));
+    #userdata
+    my $dir1 = Affelio::misc::MyCrypt::generate_password();
+    mkdir("userdata/$dir1", 0777);
+    my $dir2 = Affelio::misc::MyCrypt::generate_password();
+    mkdir("session/$dir2", 0777);
+
+    return("");
+}
+
+#########################################
+sub show_350{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_350");
+    $g_msg= $g_lh->maketext("_SETUP_msg_350");
+    $g_img= "350.jpg";
+    $g_actionurl="setup.cgi?stage=400";
+}
+
+sub check_350{
+    my $db_type = $cgi->param("dbtype");
+    my $db_dbname ="";
+    my $db_username ="";
+    my $db_password = "";
+    my $db_hostname ="";
+    my $db_port ="";
+
+    if((!$db_type) || ($db_type eq "")){
+	return("invlalid input.");
+    }
+    if($db_type eq "mysql"){
+	if(load_module("DBD::mysql") < 0){
+	    return("Perl module not found.");
+	}
+	$db_dbname = $cgi->param("mysql_dbname");
+	$db_username = $cgi->param("mysql_username");
+	$db_password = $cgi->param("mysql_password");
+	$db_hostname = $cgi->param("mysql_hostname");
+	$db_port     = $cgi->param("mysql_port");
+    }else{
+	if(load_module("DBD::SQLite") < 0){
+	    return("Perl module not found.");
+	}
+    }
 
+    my $userdata_dir="";
+    my $dir;
+    opendir(DIR, "./userdata");
+    while (defined($dir = readdir(DIR))) {
+	if(($dir ne '.') && ($dir ne '..') 
+	   && ($dir ne 'default') && ($dir ne 'CVS')){
+	    $userdata_dir = "./userdata/$dir";
+	}
+    }
+    closedir(DIR);
 
-############################################################################
-sub title_500{
-    return $lh->maketext("_SETUP_title_500");
-}
+    #Generate login.cfg file
+    open(OUT, "> $userdata_dir/db.cfg");
+    print OUT "[db]\n";
+    print OUT "type=$db_type\n";
+    print OUT "dbname=$db_dbname\n";
+    print OUT "username=$db_username\n";
+    print OUT "password=$db_password\n";
+    print OUT "hostname=$db_hostname\n";
+    print OUT "port=$db_port\n";
+    close OUT;
 
-sub msg_500{
-    return $lh->maketext("_SETUP_msg_500", $web_root);
+    return("");
 }
 
+#########################################
+sub show_400{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_400");
+    $g_msg= $g_lh->maketext("_SETUP_msg_400");
+    $g_img= "400.jpg";
+    $g_actionurl="setup.cgi?stage=500";
+}
+
+sub check_400{
+    $g_username = $cgi->param("username");
+    $g_password = $cgi->param("password");
+    $g_nickname = $cgi->param("nickname");
+    $g_email = $cgi->param("email");
+
+    ##########################################################
+    #Input check
+    ##########################################################
+    my @salts = ( "A".."Z", "a".."z", "0".."9", ".", "/" );
+    my $salt = $salts[int(rand(64))] . $salts[int(rand(64))];
+    $g_crypted_password = crypt($g_password, $salt);
+
+    ##########################################################
+    #Determine userdata/..../ directory
+    ##########################################################
+    my $userdata_dir="";
+    my $dir;
+    opendir(DIR, "./userdata");
+    while (defined($dir = readdir(DIR))) {
+	if(($dir ne '.') && ($dir ne '..') 
+	   && ($dir ne 'default') && ($dir ne 'CVS')){
+	    $userdata_dir = "./userdata/$dir";
+	}
+    }
+    closedir(DIR);
+
+    ##########################################################
+    #Copy files
+    ##########################################################
+    #Copy default face JPEG file 
+    system("cp -f defaults/profile_face.jpg $userdata_dir/profile_face.jpg");
+    system("chmod 666 $userdata_dir/profile_face.jpg");
 
-#########################################################################
-sub init_database{
-    my $g_nickname = shift;
-    my $g_email = shift;
+    #Copy default preference file
+    system("cp -f defaults/preference.cfg $userdata_dir/preference.cfg");
+
+    #Generate login.cfg file
+    open(OUT, "> $userdata_dir/login.cfg");
+    print OUT "[auth]\n";
+    print OUT "username=$g_username\n";
+    print OUT "password=$g_crypted_password\n";
+    close OUT;
 
+    ##########################################################
+    #Load Affelio
+    ##########################################################
     my $cfg_dir = ".";
     my $af = new Affelio(ConfigDir => $cfg_dir,
 			 Mode => "init");
     my $dbh = $af->{db};
 
     ##########################################################
-    #Table Creation
+    #Database initialization
     ##########################################################
 
     ################################
     #profile DB
     ################################
     my $create_tbl_cmd = <<EOT;
-CREATE TABLE AFuser_CORE_prof(attribute TEXT, value TEXT)
+CREATE TABLE AFuser_CORE_prof(attribute TEXT, value TEXT) 
 EOT
-$dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     $af->{user__nickname} = $g_nickname;
     $af->{user__email1} = $g_email;
@@ -482,7 +485,9 @@
     $create_tbl_cmd = <<EOT;
 CREATE TABLE AFuser_CORE_prof_attr(aid INTEGER, name TEXT, type INTEGER)
 EOT
-$dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     my $sth = $dbh->prepare(q{insert into AFuser_CORE_prof_attr(aid, name, type) values (?,?,?)}) or die $dbh->errstr;
 
@@ -502,7 +507,9 @@
     $create_tbl_cmd = <<EOT;
 CREATE TABLE AFuser_CORE_friends(uid INTEGER PRIMARY KEY, af_id CHAR(255), nickname TEXT, timestamp TEXT, password TEXT, intro TEXT, option_pid INTEGER, lastupdated TEXT, f2list TEXT)
 EOT
-$dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #erasedfriends DB
@@ -510,7 +517,9 @@
     $create_tbl_cmd = <<EOT;
 CREATE TABLE AFuser_CORE_erasedfriends(uid INTEGER PRIMARY KEY, af_id CHAR(255), timestamp TEXT)
 EOT
-$dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #friendsfriends DB
@@ -518,7 +527,9 @@
     $create_tbl_cmd = <<EOT;
 CREATE TABLE AFuser_CORE_friendsfriends(uid INTEGER PRIMARY KEY, af_id CHAR(255), nickname TEXT, timestamp TEXT, f1list TEXT)
 EOT
-$dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #group DB
@@ -526,7 +537,9 @@
     $create_tbl_cmd = <<EOT;
 CREATE TABLE AFuser_CORE_group(gid INTEGER, group_name TEXT, members TEXT, option_pid INTEGER)
 EOT
-$dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #Permission DB
@@ -541,23 +554,29 @@
     chop($create_tbl_cmd);
     $create_tbl_cmd .= ")";
     debug_print("setup: create [$create_tbl_cmd]");
-    $dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #tmp_recvd_hs
     ################################
     $create_tbl_cmd = <<EOT;
-CREATE TABLE AFuser_SNS_tmp_recvd_hs(sessionid TEXT PRIMARY KEY, timestamp TEXT, af_id CHAR(255), nickname TEXT, DH_key_str TEXT)
+CREATE TABLE AFuser_SNS_tmp_recvd_hs(sessionid TEXT, timestamp TEXT, af_id CHAR(255), nickname TEXT, DH_key_str TEXT)
 EOT
-    $dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #tmp_sent_hs
     ################################
     $create_tbl_cmd = <<EOT;
-CREATE TABLE AFuser_SNS_tmp_sent_hs(sessionid TEXT PRIMARY KEY, timestamp TEXT, af_id CHAR(255), nickname TEXT, DH_key_str TEXT)
+CREATE TABLE AFuser_SNS_tmp_sent_hs(sessionid TEXT, timestamp TEXT, af_id CHAR(255), nickname TEXT, DH_key_str TEXT)
 EOT
-    $dbh->do($create_tbl_cmd);
+    if(!$dbh->do($create_tbl_cmd)){
+	die $dbh->errstr;
+    }
 
     ################################
     #message
@@ -600,7 +619,7 @@
     ################################
     #Make a new group "dear_friend"
     ################################
-    my $gid = $af->{gm}->add_group($lh->maketext("_SETUP_group_dear_friend"));
+    my $gid = $af->{gm}->add_group($g_lh->maketext("_SETUP_group_dear_friend"));
 
 
     #####################################
@@ -615,7 +634,6 @@
     #Others...
     ##########################################################
 
-
     ################################
     #Copy default template files
     ################################
@@ -631,9 +649,23 @@
     #Finally, "chmod"
     ################################
     system("chmod -R 777 ./$af->{site__user_dir}");
+
+    return("");
 }
 
+#########################################
+sub show_500{
+    $TMPL_FILE = "$g_fsroot/templates/default/owner_side/setup_1.tmpl";
+    $g_title= $g_lh->maketext("_SETUP_title_500");
+    $g_msg= $g_lh->maketext("_SETUP_msg_500", $g_webroot);
+    $g_img= "500.jpg";
+    $g_actionurl="";
+}
 
+
+#########################################
+#Perl module
+#########################################
 sub check_module{
     my $mod_name = shift;
     my $mod_ver="";
@@ -641,10 +673,10 @@
     
     $err = load_module($mod_name);
     if ($err < 0) {
-	return( $lh->maketext("_SETUP_err_module_notfound", $mod_name) );
+	return( $g_lh->maketext("_SETUP_err_module_notfound", $mod_name) );
     } else {
 	$mod_ver = $mod_name->VERSION;
-	return( $lh->maketext("_SETUP_module_found", $mod_name, $mod_ver) );
+	return( $g_lh->maketext("_SETUP_module_found", $mod_name, $mod_ver) );
     }
 }
 
@@ -662,7 +694,14 @@
     }
 }
 
-
+#########################################
+#Locale
+#########################################
+sub load_locale{
+    my $locale_name = shift;
+    $g_lh = Affelio::misc::L10N->get_handle(($locale_name));
+    die "Couldn't make a language handle. \n$@" unless $g_lh;
+}
 
 sub translate_templateL10N_for_setup {
     #my $af=shift;
@@ -687,10 +726,12 @@
         #print "[$text_value]\n";
         #print "[$param_value]\n";
 
-        my $sbst = $lh->maketext($text_value, $param_value);
+        my $sbst = $g_lh->maketext($text_value, $param_value);
 
         $mesg =~ s/<AF_M $tag_body>/$sbst/g;
     }
 
     return($mesg);
 }
+
+


Affelio-cvs メーリングリストの案内
Back to archive index