To Check usergroup: put this in snippet and call it in your resources (myMemberChecker)
if ($modx->user->isMember('FirstGroup') )
{return $modx->getChunk('Profile1');}
elseif ($modx->user->isMember('Second-Group') )
{return $modx->getChunk('Profil2');}
else
{return $modx->getChunk('Not-Logged-In');
//if the user belongs to neither group, then chances are he is not logged in...unless some of your users don't have a group. I usually toss all members in a primary group.
//OR just make this resource inaccessible to non-members.
}
To Check if User is logged into this Context: Place in Snippet, and call it (checkLoggedin)
if ($modx->user->isAuthenticated('web'))
{return $modx->getChunk('members');}
//or {echo "Hello there member";}
else
{return $modx->getChunk('notLoggedin');}
//or {echo "Please log in or register";}
OR
[[!+modx.user.id:is=`0`:then=`Not a member yet? Please register`]]
For your second question....
You want this profile to be viewed by others (public profile)?
Using MIGX, you are no longer inputting info into profile extended fields.
You'll have to use a resource for each member. Each member will be able to edit this resource using what and where? Frontend or Backend?
Please explain.