Here is how I solved the issue:
I used a search condition on the Search Results web part.
I created a custom macro to build a search condition for the current user (GroupID:100 OR GroupID:122 )
Then since I also have an index for pages on the site, I add this to the condition: DocumentID:[0 TO 99999999]
Looks like this in the field on the webpart:
+({% GetSearchConditions(CurrentUser.UserID) |(identity)GlobalAdministrator%} OR DocumentID:[0 TO 99999999])
Result will be something like this:
+(GroupID:100 OR GroupID:122 OR DocumentID:[0 TO 99999999])