Hi Kyle,
We are not using cache on our site. We also turned on maximum debugging, but it is not getting an error.
We realized that when a user is logged in the default "my profile" link strips out the user id and with our sef settings ACEsef doesn't know which user profile to pull. If we turn off AceSEF the function works fine, no problems. We are very much invested in AceSEF at this point.
After a few days of testing, debugging and code tracing, we found out that the userProfileUrl function assigns a null value to the userid if the id is equal to the current logged in user. I think, AceSEF is not able to catch that null userid is equal to the current logged in user, thus giving a wrong profile in the return URL.
In order to correct the profile URL current issue, we decided to comment out line 2870 of administrator/components/com_comprofiler/plugin.foundation.php
Code:
function userProfileUrl( $userId = null, $htmlSpecials = true, $tab = null, $format = 'html' ) { if ( $userId && ( $userId == $this->myId() ) ) { /*$userId = null;*/ }
return $this->cbSef( 'index.php?option=com_comprofiler' . ( $userId ? '&task=userprofile&user=' . (int) $userId : '' ) . ( $tab ? '&tab=' . urlencode( $tab ) : '' ) . getCBprofileItemid( false ), $htmlSpecials, $format ); }
Doing this solved our first issue, but the redirect after updating your profile still uses a different function that we have not been able to track to this point.
Questions:
1) What's the reason for assigning null value if it's the same as the current user? This is what causes the problem for ACEsef.
2) Will there be any issue to other area/function if we comment this line out?
3) How can we do the same for the redirect function?
Thanks,
Emmanuel and Jay