Index: openacs-4/packages/dotlrn-ecommerce/catalog/dotlrn-ecommerce.en_US.ISO-8859-1.xml
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/catalog/dotlrn-ecommerce.en_US.ISO-8859-1.xml,v
diff -u -r1.55 -r1.56
--- openacs-4/packages/dotlrn-ecommerce/catalog/dotlrn-ecommerce.en_US.ISO-8859-1.xml	23 Jan 2006 08:04:43 -0000	1.55
+++ openacs-4/packages/dotlrn-ecommerce/catalog/dotlrn-ecommerce.en_US.ISO-8859-1.xml	16 Feb 2006 20:30:54 -0000	1.56
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
-<message_catalog package_key="dotlrn-ecommerce" package_version="0.1d23" locale="en_US" charset="ISO-8859-1">
+<message_catalog package_key="dotlrn-ecommerce" package_version="0.1d24" locale="en_US" charset="ISO-8859-1">
 
   <msg key="A_place_is_available">A place is available.</msg>
   <msg key="Action">Action</msg>
@@ -12,6 +12,7 @@
   <msg key="Added">to waiting list / Application submitted</msg>
   <msg key="Administer_Public_Pages">Administer Public Pages</msg>
   <msg key="Administrative_Setup">Administrative Setup</msg>
+  <msg key="Already_Registered">Already Registered</msg>
   <msg key="Amount_to_be_Paid">Amount to be Paid</msg>
   <msg key="Application">Application</msg>
   <msg key="Application_1">Application submitted</msg>
@@ -222,6 +223,7 @@
   <msg key="lt_User_has_approved_pre">Prequisite has been approved - waiting for purchase</msg>
   <msg key="lt_User_has_submitted_an">User has submitted an application and is waiting for approval</msg>
   <msg key="lt_User_is_already_regis">User is already registered to this section or has a pending application.</msg>
+  <msg key="lt_User_is_already_regis_1">User is already registered</msg>
   <msg key="lt_User_is_in_waiting_li">User is in waiting list</msg>
   <msg key="lt_User_requests_for_app">User requests for approval</msg>
   <msg key="lt_Users_in_waiting_list">Users in waiting list</msg>
Index: openacs-4/packages/dotlrn-ecommerce/www/applications.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn-ecommerce/www/applications.tcl,v
diff -u -r1.41 -r1.42
--- openacs-4/packages/dotlrn-ecommerce/www/applications.tcl	23 Jan 2006 08:04:42 -0000	1.41
+++ openacs-4/packages/dotlrn-ecommerce/www/applications.tcl	16 Feb 2006 20:30:54 -0000	1.42
@@ -43,6 +43,7 @@
 }
 
 set filters {
+    {"[_ dotlrn-ecommerce.Already_Registered]" "approved"}
     {"[_ dotlrn-ecommerce.In_Waiting_List]" "needs approval"}
     {"[_ dotlrn-ecommerce.lt_Approved_Waiting_List]" "waitinglist approved"}
     {"[_ dotlrn-ecommerce.For_PreReq_Approval]" "request approval"}
@@ -117,6 +118,9 @@
                 <elseif @applications.member_state@ eq "request approved">
 		[_ dotlrn-ecommerce.lt_User_has_approved_pre]
                 </elseif>
+		<elseif @applications.member_state@ eq "approved">
+		[_ dotlrn-ecommerce.lt_User_is_already_regis_1]
+		</elseif>
 		<else>
 		[_ dotlrn-ecommerce.lt_User_has_submitted_an]
 		</else>
@@ -168,12 +172,12 @@
 		<a href="@applications.approve_url;noquote@" class="button">[_ dotlrn-ecommerce.Approve]</a>
 		<a href="@applications.reject_url;noquote@" class="button">[_ dotlrn-ecommerce.Reject]</a>
 		</if>
-		<else>
+		<elseif @applications.member_state@ ne "approved">
 		<a href="@applications.reject_url;noquote@" class="button">[_ dotlrn-ecommerce.Cancel]</a>
 		<if @admin_p@>
 		<a href="@applications.register_url;noquote@" class="button">[_ dotlrn-ecommerce.Register]</a>
 		</if>
-		</else>
+		</elseif>
 	    }
 	    html { width 125 align center nowrap }
 	}
@@ -238,9 +242,9 @@
 }
 
 if { $enable_applications_p } {
-    set member_state_clause { and member_state in ('needs approval', 'waitinglist approved', 'request approval', 'request approved', 'application sent', 'application approved') }
+    set member_state_clause { and member_state in ('needs approval', 'waitinglist approved', 'request approval', 'request approved', 'application sent', 'application approved', 'approved') }
 } else {
-    set member_state_clause { and member_state in ('needs approval', 'waitinglist approved', 'request approval', 'request approved') }
+    set member_state_clause { and member_state in ('needs approval', 'waitinglist approved', 'request approval', 'request approved', 'approved') }
 }
 
 set general_comments_url [apm_package_url_from_key "general-comments"]
@@ -296,39 +300,16 @@
 	
     set reject_url [export_vars -base application-reject { community_id {user_id $applicant_user_id} {type $list_type} return_url }]
 
-    if { $member_state == "needs approval" || 
-	 $member_state == "application sent" ||
-	 $member_state == "waitinglist approved" ||
-	 $member_state == "application approved"
-     } {
-	if { ! [empty_string_p $session_id] } {
-	    if {$use_embedded_application_view_p ==1} {
-		set asm_url "admin/application-view?session_id=$session_id"
-		set target ""
-	    } else {
-		
-		set asm_url [export_vars -base "[apm_package_url_from_id [parameter::get -parameter AssessmentPackage]]asm-admin/results-session" { session_id }]
-		set target "_blank"
-	    }
-	}
+    if { ! [empty_string_p $session_id] } {
+	if {$use_embedded_application_view_p ==1} {
+	    set asm_url "admin/application-view?session_id=$session_id"
+	    set target ""
+	} else {
 	    
-    } elseif { $member_state == "request approval" ||
-	       $member_state == "request approved" } {
-
-	# Get associated assessment
-	set assessment_id [parameter::get -parameter ApplicationAssessment -default ""]
-
-	if { ! [empty_string_p $session_id] } {
-	    if {$use_embedded_application_view_p ==1} {
-		set asm_url "admin/application-view?session_id=$session_id"
-		set target ""
-	    } else {
-		
-		set asm_url [export_vars -base "[apm_package_url_from_id [parameter::get -parameter AssessmentPackage]]asm-admin/results-session" { session_id }]
-		set target "_blank"
-	    }
+	    set asm_url [export_vars -base "[apm_package_url_from_id [parameter::get -parameter AssessmentPackage]]asm-admin/results-session" { session_id }]
+	    set target "_blank"
 	}
-    }
+    }	    
 
     set section_edit_url [export_vars -base admin/one-section { section_id return_url }]
     set person_url [export_vars -base /acs-admin/users/one { {user_id $applicant_user_id} }]