[Affelio-cvs 1410] CVS update: affelio/lib/Affelio/App/Standalone/Public/Bin

Back to archive index

Tadashi Okoshi slash****@users*****
2006年 8月 9日 (水) 14:12:17 JST


Index: affelio/lib/Affelio/App/Standalone/Public/Bin/get_content.pm
diff -u affelio/lib/Affelio/App/Standalone/Public/Bin/get_content.pm:1.1 affelio/lib/Affelio/App/Standalone/Public/Bin/get_content.pm:1.2
--- affelio/lib/Affelio/App/Standalone/Public/Bin/get_content.pm:1.1	Tue Mar  7 23:39:10 2006
+++ affelio/lib/Affelio/App/Standalone/Public/Bin/get_content.pm	Wed Aug  9 14:12:17 2006
@@ -14,16 +14,27 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #
-# $Id: get_content.pm,v 1.1 2006/03/07 14:39:10 slash5234 Exp $
+# $Id: get_content.pm,v 1.2 2006/08/09 05:12:17 slash5234 Exp $
 
 package Affelio::App::Standalone::Public::Bin::get_content;
 {
     use strict;
 
     use lib("../../../../../../extlib/");
+    use CGI qw(-unique_headers);
+    use CGI::Session; #qw(-ip_match);
+    use Error qw(:try);
+
     use lib("../../../../../../lib/");
+    use Affelio;
+    use Affelio::App::Standalone::Env;
+    use Affelio::App::Standalone::FriendRoutines qw(get_summed_permission_list);
     use Affelio::misc::CGIError;
     use Affelio::misc::Debug qw(debug_print);
+    use Affelio::misc::MyCrypt qw(url_decode msg_decrypt);
+    use Affelio::misc::Time qw(get_timestamp);
+    use Affelio::misc::NetMisc qw(get_remote_host);
+    use Affelio::misc::WebInput;
 
     use Exporter;
     @Affelio::App::Standalone::Public::Bin::get_content::ISA = "Exporter";
@@ -35,257 +46,256 @@
     sub run{
 	$| = 1;
 
-use CGI qw(-unique_headers);
-use CGI::Session; #qw(-ip_match);
-use Error qw(:try);
-
-use Affelio;
-use Affelio::App::Standalone::Env;
-use Affelio::App::Standalone::FriendRoutines qw(get_summed_permission_list);
-use Affelio::misc::MyCrypt qw(url_decode msg_decrypt);
-use Affelio::misc::Time qw(get_timestamp);
-use Affelio::misc::NetMisc qw(get_remote_host);
-use Affelio::misc::WebInput;
-
-#Load Affelio and CGI
-my $q = new CGI;
-my $cfg_dir = "../config/";
-my $af = new Affelio(ConfigDir => $cfg_dir,
-		     CGI => $q);
-my $wi = new Affelio::misc::WebInput(); 
-
-#Retrieve args
-my $module = $wi->PTN_word($q->param("module"));
-if($module eq "" || !defined($module)){
-    error($q,"Input parameters are not defined.(module)");
-}
-
-my $content = $wi->PTN_getcontent_content($q->param("content"));
-if($content eq "" || !defined($content)){
-    error($q,"Input parameters are not defined.(content)");
-}
-
-my $ck_visitor_type=0;
-my $ck_visitor_type_str="pb"; 
-my $ck_visitor_afid = "";
-
-############################################################################
-#Load session from cookie
-############################################################################
-my $session = $af->getSM()->get_session();
-
-if(!$session){
-    debug_print("StandAlone::get_content: session not found.");
-    $ck_visitor_type=0;
-    $ck_visitor_type_str="pb"; 
-    $ck_visitor_afid = "";
-}else{
-    my $type = $session->param("type");
-
-    if($type eq "self"){
-	debug_print("StandAlone::get_content: session found. [self]");
-	$ck_visitor_type=3; 
-	$ck_visitor_type_str="self"; 
-	$ck_visitor_afid = $session->param("user_afid");
-    }elsif($type eq "f1"){
-	debug_print("StandAlone::get_content: session found. [f1]");
-	$ck_visitor_type=2; 
-	$ck_visitor_type_str="f1"; 
-	$ck_visitor_afid = $session->param("user_afid");
-    }elsif($type eq "f2"){
-	debug_print("StandAlone::get_content: session found. [f2]");
-	$ck_visitor_type=1; 
-	$ck_visitor_type_str="f2"; 
-	$ck_visitor_afid = $session->param("user_afid");
-    }
-}
-
-
-#CFID check
-my $CFID_timestamp;
-my $CFID_expire;
-my $CFID_remotehost;
-my $CFID_visitor_afid;
-my $CFID_visitor_type=0;
-my $CFID_visitor_type_str="pb";
-
-if( ($ck_visitor_type <= 2) 
-    && ( $q->param("referrer") ne "")
-    && ( $q->param("cfid") ne "" )       
-    ){
-
-    my $referrer = $wi->PTN_URL($q->param("referrer"));
-    if($referrer =~ /(.*)\/$/){
-	$referrer = $1;
-    }
-
-    my $passAB = $af->getFM->get_attribute_by_afid($referrer, "password");
-    if($passAB eq "" || !defined($passAB)){
-	error($q,"Parameters are not defined. (1): Your peer does not have shared password with you...");
-    }
-
-    my $cfid = msg_decrypt( url_decode($q->param("cfid") ) , $passAB) ;
-    if($cfid eq "" || !defined($cfid)){
-	error($q,"Parameters are not defined. (2): Invalid encryption: After decryption, we could not valid your encrypted message...");
-    }
-
-    #######################################################################
-    #Check cfid
-    ($CFID_timestamp, $CFID_expire, $CFID_remotehost, $CFID_visitor_afid, $CFID_visitor_type_str) = split('\*', $cfid);
-
-    #check timestamp
-    #check expire
-    #check remotehost
-    #check visitor_afid
-    debug_print("StandAlone::get_content: Information extracted from CFID");
-    debug_print("StandAlone::get_content: \ttimestamp    =$CFID_timestamp\n");
-    debug_print("StandAlone::get_content: \texpire       =$CFID_expire\n");
-    debug_print("StandAlone::get_content: \tremote_host  =$CFID_remotehost\n");
-    debug_print("StandAlone::get_content: \tvisitor_afid =$CFID_visitor_afid\n");
-    debug_print("StandAlone::get_content: \tvisitor_type(original) =$CFID_visitor_type_str\n");
-
-    #check visitor_type_str
-    if($CFID_visitor_type_str eq "self") { 
-	$CFID_visitor_type_str = "f1";
-	$CFID_visitor_type =2;
-    }elsif($CFID_visitor_type_str eq "f1") { 
-	$CFID_visitor_type_str = "f2";
-	$CFID_visitor_type =1;
-    }else{
-	$CFID_visitor_type_str = "pb";
-	$CFID_visitor_type =0;
-    }
-    debug_print("StandAlone::get_content: \tvisitor_type(decreased) =$CFID_visitor_type_str\n");
-
-}
-
-
-############################################################################
-#Well, after all, who is it?
-############################################################################
-my $visitor_type=0;              #3=self 2=f1 1=f2 0=pb
-my $visitor_type_str="pb";
-my $visitor_afid="";
-
-if($ck_visitor_type == 3){
-
-    $visitor_type = $ck_visitor_type;
-    $visitor_type_str = $ck_visitor_type_str;
-    $visitor_afid = $ck_visitor_afid;
-
-}elsif($ck_visitor_type > $CFID_visitor_type){
-
-    $visitor_type = $ck_visitor_type;
-    $visitor_type_str = $ck_visitor_type_str;
-    $visitor_afid = $ck_visitor_afid;
-
-}else{
-
-    $visitor_type = $CFID_visitor_type;
-    $visitor_type_str = $CFID_visitor_type_str;
-    $visitor_afid = $CFID_visitor_afid;
-}
-
-#######################################
-#Is this visitor a friend of this site?
-
-if($visitor_type < 3){
-    my $tmp1 = $af->getFM->get_attribute_by_afid($visitor_afid, "password");
-
-    if($tmp1 ne ""){
-	$visitor_type = 2;  
-	$visitor_type_str="f1"; 
-	$visitor_afid = $CFID_visitor_afid;
-    }
-}
-
-debug_print("StandAlone::get_content: Finally...");
-debug_print("StandAlone::get_content: \tvisitor_type = [$visitor_type] [$visitor_type_str]");
-debug_print("StandAlone::get_content: \tvisitor_type = [$visitor_afid]");
-debug_print("StandAlone::get_content: \tmodule    = [$module]\n");
-debug_print("StandAlone::get_content: \tcontent   = [$content]\n");
-
-
-############################################################################
-#Output content
-############################################################################
-if($module eq "core"){
-
-    if($content =~ /^\/profile\/profile\_face([0-9a-zA-Z\_]*)\.jpg$/){
-
-	debug_print("StandAlone::get_content: image!");
-
-	#Get summarized permission list for the given user
-	my @list 
-	    =  get_summed_permission_list($af, 
-					  $visitor_afid, 
-					  $visitor_type_str);
-
-	debug_print("StandAlone::get_content: Got summarized permission...");
-	debug_print("StandAlone::get_content: \t[@list]");
-
-	my $permission = $list[5] ;
-	debug_print("StandAlone::get_content: Pic perm: $permission");
-
-	my $real_filename = $content;
-	$real_filename =~ s|/profile/||;
-
-	my $actual_file="";
-	if( $permission ==1)
-	{
-	    $actual_file = "$af->{site__user_dir}/$real_filename";
+	#Load Affelio and CGI
+	my $q = new CGI;
+	my $cfg_dir = "../config/";
+	my $af = new Affelio(ConfigDir => $cfg_dir,
+			     CGI => $q);
+	my $wi = new Affelio::misc::WebInput(); 
+	
+	#Retrieve args
+	my $module = $wi->PTN_word($q->param("module"));
+	if($module eq "" || !defined($module)){
+	    error($q,"Input parameters are not defined.(module)");
+	}
+	
+	my $content = $wi->PTN_getcontent_content($q->param("content"));
+	if($content eq "" || !defined($content)){
+	    error($q,"Input parameters are not defined.(content)");
+	}
+	
+	my $ck_visitor_type=0;
+	my $ck_visitor_type_str="pb"; 
+	my $ck_visitor_afid = "";
+
+	####################################################################
+	#(1) Load session from cookie
+	####################################################################
+	my $session = $af->getSM()->get_session();
+
+	if(!$session){
+	    debug_print("Standalone::get_content: session not found.");
+	    $ck_visitor_type=0;
+	    $ck_visitor_type_str="pb"; 
+	    $ck_visitor_afid = "";
 	}else{
-	    $actual_file = "$af->{site__fs_root}/skins/$af->{userpref__skin}/0_face.jpg";
+	    my $type = $session->param("type");
+	    
+	    if($type eq "self"){
+		debug_print("Standalone::get_content: session found. [self]");
+		$ck_visitor_type=3; 
+		$ck_visitor_type_str="self"; 
+		$ck_visitor_afid = $session->param("user_afid");
+	    }elsif($type eq "f1"){
+		debug_print("Standalone::get_content: session found. [f1]");
+		$ck_visitor_type=2; 
+		$ck_visitor_type_str="f1"; 
+		$ck_visitor_afid = $session->param("user_afid");
+	    }elsif($type eq "f2"){
+		debug_print("Standalone::get_content: session found. [f2]");
+		$ck_visitor_type=1; 
+		$ck_visitor_type_str="f2"; 
+		$ck_visitor_afid = $session->param("user_afid");
+	    }
 	}
-	open(IMG, "< $actual_file");
-	print "Content-type: image/jpeg\n";
-	print "Pragma: no-cache\n\n"; 
-	binmode (IMG);
-	binmode (STDOUT);
-	print <IMG>;
-	close IMG;
-    }
 
-    if($content eq "/profile/mystatus"){
-
-	debug_print("StandAlone::get_content: mystatus!");
-	my $mystatus="&nbsp;";
-	if( $visitor_type >= 2){
-	    $mystatus = $af->{user__currentstatus};
+	####################################################################
+	#(2) CFID (Contents Forwading ID) checking
+	####################################################################
+	my $CFID_timestamp;
+	my $CFID_expire;
+	my $CFID_remotehost;
+	my $CFID_visitor_afid;
+	my $CFID_visitor_type=0;
+	my $CFID_visitor_type_str="pb";
+	
+	if( ($ck_visitor_type <= 2) 
+	    && ( $q->param("referrer") ne "")
+	    && ( $q->param("cfid") ne "" )       
+	    ){
+	    
+	    my $referrer = $wi->PTN_URL($q->param("referrer"));
+	    if($referrer =~ /(.*)\/$/){
+		$referrer = $1;
+	    }
+	    
+	    my $passAB = $af->getFM->get_attribute_by_afid($referrer, "password");
+	    if($passAB eq "" || !defined($passAB)){
+		error($q,"Parameters are not defined. (1): Your peer does not have shared password with you...");
+	    }
+	    
+	    my $cfid = msg_decrypt( url_decode($q->param("cfid") ) , $passAB) ;
+	    if($cfid eq "" || !defined($cfid)){
+		error($q,"Parameters are not defined. (2): Invalid encryption: After decryption, we could not valid your encrypted message...");
+	    }
+	    
+	    ################################################################
+	    #Check cfid
+	    ($CFID_timestamp, $CFID_expire, $CFID_remotehost, $CFID_visitor_afid, $CFID_visitor_type_str) = split('\*', $cfid);
+	    
+	    #check timestamp
+	    #check expire
+	    #check remotehost
+	    #check visitor_afid
+	    debug_print("Standalone::get_content: Information extracted from CFID");
+	    debug_print("Standalone::get_content: \ttimestamp    =$CFID_timestamp\n");
+	    debug_print("Standalone::get_content: \texpire       =$CFID_expire\n");
+	    debug_print("Standalone::get_content: \tremote_host  =$CFID_remotehost\n");
+	    debug_print("Standalone::get_content: \tvisitor_afid =$CFID_visitor_afid\n");
+	    debug_print("Standalone::get_content: \tvisitor_type(original) =$CFID_visitor_type_str\n");
+	    
+	    #check visitor_type_str
+	    if($CFID_visitor_type_str eq "self") { 
+		$CFID_visitor_type_str = "f1";
+		$CFID_visitor_type =2;
+	    }elsif($CFID_visitor_type_str eq "f1") { 
+		$CFID_visitor_type_str = "f2";
+		$CFID_visitor_type =1;
+	    }else{
+		$CFID_visitor_type_str = "pb";
+		$CFID_visitor_type =0;
+	    }
+	    debug_print("Standalone::get_content: \tvisitor_type(decreased) =$CFID_visitor_type_str\n");
+	    
 	}
-	print "Content-type:application/x-javascript\n\n";
-	print "document.write(\"$mystatus\");";
-	print "\n\n";
-	exit(1);
-    }
 
-    if($content eq "/profile/mystatus_iframe"){
 
-	debug_print("StandAlone::get_content: mystatus!");
-	my $mystatus="&nbsp;";
-	if( $visitor_type >= 2){
-	    $mystatus = $af->{user__currentstatus};
+	####################################################################
+	#(3) after all, who is it?
+	####################################################################
+	my $visitor_type=0;              #3=self 2=f1 1=f2 0=pb
+	my $visitor_type_str="pb";
+	my $visitor_afid="";
+	
+	if($ck_visitor_type == 3){
+	    
+	    $visitor_type = $ck_visitor_type;
+	    $visitor_type_str = $ck_visitor_type_str;
+	    $visitor_afid = $ck_visitor_afid;
+	    
+	}elsif($ck_visitor_type > $CFID_visitor_type){
+	    
+	    $visitor_type = $ck_visitor_type;
+	    $visitor_type_str = $ck_visitor_type_str;
+	    $visitor_afid = $ck_visitor_afid;
+	    
+	}else{
+	    
+	    $visitor_type = $CFID_visitor_type;
+	    $visitor_type_str = $CFID_visitor_type_str;
+	    $visitor_afid = $CFID_visitor_afid;
+	}
+	
+	#######################################
+	#Is this visitor a friend of this site?
+
+	if($visitor_type < 3){
+	    my $tmp1 = $af->getFM->get_attribute_by_afid($visitor_afid, "password");
+	    
+	    if($tmp1 ne ""){
+		$visitor_type = 2;  
+		$visitor_type_str="f1"; 
+		$visitor_afid = $CFID_visitor_afid;
+	    }
+	}
+	
+	debug_print("Standalone::get_content: Finally...");
+	debug_print("Standalone::get_content: \tvisitor_type = [$visitor_type] [$visitor_type_str]");
+	debug_print("Standalone::get_content: \tvisitor_type = [$visitor_afid]");
+	debug_print("Standalone::get_content: \tmodule    = [$module]\n");
+	debug_print("Standalone::get_content: \tcontent   = [$content]\n");
+	
+
+	#####################################################################
+	#(4) Output content
+	#####################################################################
+	if($module eq "core"){
+	    
+	    if($content =~ /^\/profile\/profile\_face([0-9a-zA-Z\_]*)\.jpg$/){
+		
+		debug_print("Standalone::get_content: image!");
+		
+		#Get summarized permission list for the given user
+		my @list 
+		    =  get_summed_permission_list($af, 
+						  $visitor_afid, 
+						  $visitor_type_str);
+		
+		debug_print("Standalone::get_content: Got summarized permission...");
+		debug_print("Standalone::get_content: \t[@list]");
+		
+		my $permission = $list[5] ;
+		debug_print("Standalone::get_content: Pic perm: $permission");
+		
+		my $real_filename = $content;
+		$real_filename =~ s|/profile/||;
+		
+		my $actual_file="";
+		if( $permission ==1)
+		{
+		    $actual_file = "$af->{site__user_dir}/$real_filename";
+		}else{
+		    $actual_file = "$af->{site__fs_root}/skins/$af->{userpref__skin}/0_face.jpg";
+		}
+		$actual_file =~ s|//|/|g;
+		debug_print("Standalone::get_content: actual_file= $actual_file");
+		
+		open(IMG, "< $actual_file");
+		print "Content-type: image/jpeg\n";
+		print "Pragma: no-cache\n\n";
+		binmode (IMG);
+		binmode (STDOUT);
+		print <IMG>;
+		close IMG;
+		
+		debug_print("Standalone::get_content: img end.");
+		$af->DESTROY;
+		return();
+	    }
+	    
+	    if($content eq "/profile/mystatus"){
+		
+		debug_print("Standalone::get_content: mystatus!");
+		my $mystatus="&nbsp;";
+		if( $visitor_type >= 2){
+		    $mystatus = $af->{user__currentstatus};
+		}
+		print "Content-type:application/x-javascript\n\n";
+		print "document.write(\"$mystatus\");";
+		print "\n\n";
+		$af->DESTROY;
+		return();
+	    }
+	    
+	    if($content eq "/profile/mystatus_iframe"){
+		
+		debug_print("Standalone::get_content: mystatus!");
+		my $mystatus="&nbsp;";
+		if( $visitor_type >= 2){
+		    $mystatus = $af->{user__currentstatus};
+		}
+		print "Content-type: text/html; charset=UTF-8\n";
+		print "Pragma: no-cache\n\n";
+		
+		# " ni kiwo tsukero!!!! escape! escape! " --> \"
+		print "<HTML><body TOPMARGIN=0 LEFTMARGIN=0 MARGINHEIGHT=0 MARGINWIDTH=0><div style=\"margin:0px; padding:0px; font-family:sans-serif; font-size:xx-small;\">$mystatus</div></body></HTML>";
+		debug_print("Standalone::get_content: mystatus!");
+		$af->DESTROY;
+		return();
+	    }
+	    
+	    print "Content-type: text/html; charset=UTF-8\n";
+	    print "Pragma: no-cache\n\n";
+	    print "<HTML></HTML>";
+	    $af->DESTROY;
+	    return();
+	    
 	}
-	print "Content-type: text/html; charset=UTF-8\n";
-	print "Pragma: no-cache\n\n"; 
+	$af->DESTROY;
+	return();
 
-	# " ni kiwo tsukero!!!! escape! escape! " --> \"
-        print "<HTML><body TOPMARGIN=0 LEFTMARGIN=0 MARGINHEIGHT=0 MARGINWIDTH=0><div style=\"margin:0px; padding:0px; font-family:sans-serif; font-size:xx-small;\">$mystatus</div></body></HTML>";
-	debug_print("StandAlone::get_content: mystatus!");
-	exit(1);
     }
-
-    print "Content-type: text/html; charset=UTF-8\n";
-    print "Pragma: no-cache\n\n"; 
-    print "<HTML></HTML>";
-    exit(1);
-
-}
-exit(1);
-
-
-
-    }#method
+    #method
     #######################################################################
 }
 1;
Index: affelio/lib/Affelio/App/Standalone/Public/Bin/loginexec.pm
diff -u affelio/lib/Affelio/App/Standalone/Public/Bin/loginexec.pm:1.3 affelio/lib/Affelio/App/Standalone/Public/Bin/loginexec.pm:1.4
--- affelio/lib/Affelio/App/Standalone/Public/Bin/loginexec.pm:1.3	Thu Jun 29 03:12:48 2006
+++ affelio/lib/Affelio/App/Standalone/Public/Bin/loginexec.pm	Wed Aug  9 14:12:17 2006
@@ -14,7 +14,7 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #
-# $Id: loginexec.pm,v 1.3 2006/06/28 18:12:48 slash5234 Exp $
+# $Id: loginexec.pm,v 1.4 2006/08/09 05:12:17 slash5234 Exp $
 
 package Affelio::App::Standalone::Public::Bin::loginexec;
 {
@@ -48,7 +48,7 @@
 
 my $q = new CGI;
 
-debug_print("StandAlone::loginexec.cgi: **start.");
+debug_print("Standalone::loginexec.cgi: **start.");
 
 ############################################################################
 #Load Affelio
@@ -63,7 +63,7 @@
     error($q, "Affelio load error.\n" . $e);
 };
 my $wi = new Affelio::misc::WebInput;
-debug_print("StandAlone::loginexec.cgi: loaded Affelio.");
+debug_print("Standalone::loginexec.cgi: loaded Affelio.");
 
 ############################################################################
 #Prep (1) input args
@@ -90,7 +90,7 @@
 
 #type from FORM
 my $submit_type = $wi->PTN_mode($q->param("submittype"));
-debug_print("StandAlone::loginexec.cgi: checked input args.");
+debug_print("Standalone::loginexec.cgi: checked input args.");
 
 ############################################################################
 #Prep (2) misc
@@ -107,13 +107,13 @@
 my $issued_cookie="";
 my $next_url;
 
-debug_print("StandAlone::\t\tmode       = $mode");
-debug_print("StandAlone::\t\taffelio_url= $affelio_url");
-debug_print("StandAlone::\t\tusername   = $username");
-debug_print("StandAlone::\t\tpassword   = $password");
-debug_print("StandAlone::\t\tforward    = $forward_URL");
-debug_print("StandAlone::\t\taftergo    = $aftergo_URL");
-debug_print("StandAlone::\t\tfarm_users_root   = $farm_users_root");    
+debug_print("Standalone::\t\tmode       = $mode");
+debug_print("Standalone::\t\taffelio_url= $affelio_url");
+debug_print("Standalone::\t\tusername   = $username");
+debug_print("Standalone::\t\tpassword   = $password");
+debug_print("Standalone::\t\tforward    = $forward_URL");
+debug_print("Standalone::\t\taftergo    = $aftergo_URL");
+debug_print("Standalone::\t\tfarm_users_root   = $farm_users_root");    
 
 ############################################################################
 #Already logined?
@@ -130,11 +130,11 @@
 	###################################################################
 	if(  (verify_password($password, $af->{site__password}) > 0) 
 	     && ($username eq $af->{site__username}) ){
-	    debug_print("StandAlone::loginexec.cgi: AUTH OK.\n");
+	    debug_print("Standalone::loginexec.cgi: AUTH OK.\n");
 	    #login OK
 	}else{
 	    #login failed.
-	    debug_print("StandAlone::loginexec.cgi: AUTH NG.\n");
+	    debug_print("Standalone::loginexec.cgi: AUTH NG.\n");
 	    
 	    my $TMPL_FILE = "$af->{site__tmpl_dir}/owner_side/loginfailed.tmpl";
 	    my $tmpl = new HTML::Template( filename => $TMPL_FILE);
@@ -143,8 +143,9 @@
 	    print "Content-type: text/html; charset=UTF-8\n\n";
 	    print $af->translate_templateL10N($tmpl->output);
 	    
-	    debug_print("StandAlone::loginexec.cgi: exit(1).\n");    
-	    exit(1);
+	    debug_print("Standalone::loginexec.cgi: exit(1).\n");    
+	    $af->DESTROY;
+    	    return();
 	}    
     
     }elsif($mode eq "s0"){
@@ -159,7 +160,8 @@
 				      forward_URL => $forward_URL,
 				      aftergo_URL => $aftergo_URL,
 				      mode => "login_as_owner");
-	    exit(1);
+	    $af->DESTROY;
+	    return();
 
 	}else{
 	    ##################################
@@ -176,7 +178,7 @@
 	    if($affelio_url =~ /(.*)\/$/){
 		$affelio_url = $1;
 	    }
-	    debug_print("StandAlone::loginexec.cgi($mode): formated Affelio URL= [$affelio_url]");
+	    debug_print("Standalone::loginexec.cgi($mode): formated Affelio URL= [$affelio_url]");
 
 	    if($affelio_url eq $af->{site__user_afid}){
 
@@ -185,7 +187,8 @@
 					  aftergo_URL => $aftergo_URL,
 					  mode => "login_as_owner");
 
-		exit(1);
+		$af->DESTROY;
+		return();
 	    }
 
 	    ##################################
@@ -208,10 +211,11 @@
 	    ##################################
 	    my $next_URL
 		= "$affelio_url/bin/loginexec.cgi?mode=s1&forward_URL=$forward_URL&aftergo_URL=$aftergo_URL";
-	    debug_print("StandAlone::\t\tnext_URL= $next_URL");
-	    debug_print("StandAlone::loginexec.cgi($mode): end.");
+	    debug_print("Standalone::\t\tnext_URL= $next_URL");
+	    debug_print("Standalone::loginexec.cgi($mode): end.");
 	    print $q->redirect( -url => $next_URL);
-	    exit(1);
+	    $af->DESTROY;
+	    return();
 	}
 
     }elsif($mode eq "s1"){
@@ -223,31 +227,34 @@
 				  forward_URL => $forward_URL,
 				  aftergo_URL => $aftergo_URL,
 				  mode => "back_from_friend");
-	debug_print("StandAlone::loginexec.cgi($mode): end.");
-	exit(1);
+	debug_print("Standalone::loginexec.cgi($mode): end.");
+	$af->DESTROY;
+	return();
 	
     }elsif($mode eq "s2"){ 
 	####################################################################
 	#Phase V2: Phase S2
 	# (auth check phase)
 	####################################################################
-	debug_print("StandAlone::loginexec.cgi($mode): submit_type= $submit_type");
+	debug_print("Standalone::loginexec.cgi($mode): submit_type= $submit_type");
 	if($submit_type eq "Cancel"){
 	    if($aftergo_URL eq ""){
 		print $q->redirect( -url => $af->{site__user_afid});
-		exit(0);
+		$af->DESTROY;
+		return();
 	    }else{
 		print $q->redirect( -url => $aftergo_URL);
-		exit(0);
+		$af->DESTROY;
+		return();
 	    } 
 
 	}
 
 	if(  (verify_password($password, $af->{site__password}) > 0) ){
-	    debug_print("StandAlone::loginexec.cgi: AUTH Ok.\n");
+	    debug_print("Standalone::loginexec.cgi: AUTH Ok.\n");
 	}else{
 	    #login failed.
-	    debug_print("StandAlone::loginexec.cgi: AUTH NG.\n");
+	    debug_print("Standalone::loginexec.cgi: AUTH NG.\n");
 
 	    my $loginfailed=
 		$af->translate_templateL10N('<AF_M text="Login failed.">');
@@ -268,8 +275,9 @@
 					  error => $loginfailed);
 	    }
 	    
-	    debug_print("StandAlone::loginexec.cgi: exit(1).\n");    
-	    exit(1);
+	    debug_print("Standalone::loginexec.cgi: exit(1).\n");    
+	    $af->DESTROY;
+	    return();
 	}    
     }
     
@@ -279,13 +287,15 @@
     $af->getSM->startup_session(user_afid => $af->{site__user_afid},
 				user_nickname => $af->{user__nickname},
 				type => "self");
+
     $af->getSM->get_session->expire("+3d");
     $af->getSM->get_session->flush();
 
-    debug_print("StandAlone::loginexec.cgi: startup_session finished.\n");    
+    debug_print("Standalone::loginexec.cgi: startup_session finished.\n");    
 
     #Prepare a cookie with the session_id
     $issued_cookie = $af->getSM->issue_cookie();
+
 }
 
 ############################################################################
@@ -295,7 +305,7 @@
     if($forward_URL =~ /(.*)\/$/){
 	$forward_URL = $1;
     }
-    debug_print("StandAlone::loginexec.cgi: ForwardURL= $forward_URL");
+    debug_print("Standalone::loginexec.cgi: ForwardURL= $forward_URL");
 
     my $passAB="";
     try{
@@ -307,7 +317,8 @@
 
     if($passAB eq ""){
 	show_askmakefriend_screen($af, $forward_URL);
-	exit(0);
+	$af->DESTROY;
+	return();
     }else{
 	$next_url= "$af->{site__user_afid}/outgoing.cgi?dest_url=$forward_URL&dest_url2=$aftergo_URL"; 
     }
@@ -321,7 +332,8 @@
     print $q->redirect( -url => $next_url);
 }
 
-exit(1);
+$af->DESTROY;
+return();
 
     }#method
     #######################################################################
Index: affelio/lib/Affelio/App/Standalone/Public/Bin/logoutexec.pm
diff -u affelio/lib/Affelio/App/Standalone/Public/Bin/logoutexec.pm:1.2 affelio/lib/Affelio/App/Standalone/Public/Bin/logoutexec.pm:1.3
--- affelio/lib/Affelio/App/Standalone/Public/Bin/logoutexec.pm:1.2	Thu Jun 29 03:12:48 2006
+++ affelio/lib/Affelio/App/Standalone/Public/Bin/logoutexec.pm	Wed Aug  9 14:12:17 2006
@@ -14,7 +14,7 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #
-# $Id: logoutexec.pm,v 1.2 2006/06/28 18:12:48 slash5234 Exp $
+# $Id: logoutexec.pm,v 1.3 2006/08/09 05:12:17 slash5234 Exp $
 
 package Affelio::App::Standalone::Public::Bin::logoutexec;
 {
@@ -44,7 +44,7 @@
 use Affelio::misc::MyCrypt;
 use Affelio::misc::Time;
 
-debug_print("StandAlone::logoutexec.cgi: start.");
+debug_print("Standalone::logoutexec.cgi: start.");
 
 my $q = new CGI;
 ############################################################################
@@ -64,7 +64,6 @@
 ############################################################################
 #Check session w/ cookie
 ############################################################################
-my $sid = $q->cookie("affelio-$af->{user__nickname}");
 my $session = $af->getSM->get_session();
 
 if($session){
@@ -78,9 +77,9 @@
 
 print $q->redirect( -url => $af->{site__user_afid});
 
-debug_print("StandAlone::logoutexec.cgi: end.");
-exit(1);
-
+debug_print("Standalone::logoutexec.cgi: end.");
+$af->DESTROY;
+return();
 
 
 
Index: affelio/lib/Affelio/App/Standalone/Public/Bin/recv_mail_ack.pm
diff -u affelio/lib/Affelio/App/Standalone/Public/Bin/recv_mail_ack.pm:1.3 affelio/lib/Affelio/App/Standalone/Public/Bin/recv_mail_ack.pm:1.4
--- affelio/lib/Affelio/App/Standalone/Public/Bin/recv_mail_ack.pm:1.3	Thu Jun 29 03:12:48 2006
+++ affelio/lib/Affelio/App/Standalone/Public/Bin/recv_mail_ack.pm	Wed Aug  9 14:12:17 2006
@@ -14,7 +14,7 @@
 # along with this program; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #
-# $Id: recv_mail_ack.pm,v 1.3 2006/06/28 18:12:48 slash5234 Exp $
+# $Id: recv_mail_ack.pm,v 1.4 2006/08/09 05:12:17 slash5234 Exp $
 
 package Affelio::App::Standalone::Public::Bin::recv_mail_ack;
 {
@@ -58,9 +58,11 @@
 my $cfg_dir = "../config/";
 my $af;
 try{
-    $af = new Affelio(ConfigDir => $cfg_dir);
+    $af = new Affelio(ConfigDir => $cfg_dir,
+		      CGI => $q);
 }catch Error with{
     my $e = shift;
+    $af->DESTROY;
     error($q, "Affelio load error.\n" . $e);
 };
 my $wi = new Affelio::misc::WebInput;
@@ -68,16 +70,14 @@
 ############################################################################
 #Sesion check (as admin)
 my $sid = $q->cookie("affelio-$af->{user__nickname}");
-my $session = new CGI::Session(undef, 
-			       $sid, 
-			       {Directory=> $af->{site__session_dir}});
+my $session = $af->getSM()->get_session();
 
 my $TMPL_FILE="";
 if( (!$session) || ($session->param("type") ne "self")  ){
     # Is the session alive?
     # Is the user the admin of this site?
     # if not....
-    debug_print("StandAlone::recv_mail_ack.cgi: login is needed.");
+    debug_print("Standalone::recv_mail_ack.cgi: login is needed.");
 
     $TMPL_FILE 
 	= "$af->{site__tmpl_dir}/owner_side/login.tmpl";
@@ -87,9 +87,10 @@
     $tmpl->param("tmpl_path" => "$af->{site__tmpl_web_path}/owner_side/");
     print "Content-type: text/html; charset=UTF-8\n\n";
     print $af->translate_templateL10N($tmpl->output);
-    exit(1);
+    $af->DESTROY;
+    return();
 }
-debug_print("StandAlone::recv_mail_ack.cgi: Session as the admin is OK.");
+debug_print("Standalone::recv_mail_ack.cgi: Session as the admin is OK.");
 
 
 ############################################################################
@@ -99,7 +100,7 @@
 if(!$session_id){
     die "id is not defined. [$session_id]";
 }
-debug_print("StandAlone::recv_mail_ack: $session_id\n");
+debug_print("Standalone::recv_mail_ack: $session_id\n");
 
 
 ############################################################################
@@ -120,7 +121,8 @@
 
 if(!defined(@ret)){
     #No such session exists!!
-    debug_print("StandAlone::recv_mail_ack: session not found.\n");
+    debug_print("Standalone::recv_mail_ack: session not found.\n");
+    $af->DESTROY;
     error($q, "Affelio load error.\nNo such session exists!");
 }else{
     ($dummy, $timestamp, $peer_af_id, 
@@ -128,7 +130,7 @@
 
     $peer_DH_pub_key = Math::BigInt->new($peer_DH_pub_key_str);
 }
-debug_print("StandAlone::recv_mail_ack: $session_id, $timestamp, $peer_af_id, $peer_nickname, $peer_DH_pub_key_str\n");
+debug_print("Standalone::recv_mail_ack: $session_id, $timestamp, $peer_af_id, $peer_nickname, $peer_DH_pub_key_str\n");
 
 ############################################################################
 #DH key generation
@@ -160,15 +162,16 @@
 			   );
 }catch Error with {
     my $E = shift;
+    $af->DESTROY;
     error($q, "HandShake reply output an error!\n$E");
 };
 
-debug_print("StandAlone::recv_mail_ack: reply_HandShake finished.");
+debug_print("Standalone::recv_mail_ack: reply_HandShake finished.");
 
 ############################################################################
 #generate Password
 my $pass = $mydh->compute_key($peer_DH_pub_key)->bstr;
-debug_print("StandAlone::recv_mail_ack: PASSWORD=[$pass]\n");
+debug_print("Standalone::recv_mail_ack: PASSWORD=[$pass]\n");
 
 ############################################################################
 #Add peer to my friends list.
@@ -180,9 +183,10 @@
 			   $peer_type);
 }catch Error with{
     my $E = shift;
+    $af->DESTROY;
     error($q, "Error from FriendManager\n$E\n");
 };
-debug_print("StandAlone::recv_mail_ack: added to my friends list.");
+debug_print("Standalone::recv_mail_ack: added to my friends list.");
 sleep(2);
 
 ############################################################################
@@ -192,10 +196,11 @@
 		      timestamp => 0);
 }catch Error with {
     my $E = shift;
+    $af->DESTROY;
     error($q, "HandShake was successful!\n But, get_F2List reply output an error!\n$E");
 };
-debug_print("StandAlone::recv_mail_ack: get_F2List finished.");
-debug_print("StandAlone::recv_mail_ack: List I've got is [$ret]");
+debug_print("Standalone::recv_mail_ack: get_F2List finished.");
+debug_print("Standalone::recv_mail_ack: List I've got is [$ret]");
 #
 #
 ##################################################


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