[C++]Checking Aura/Spell Area

I’m trying to do a check if a player has a certain talent and if they’re standing in a certain spell effect.
Do I use caster->HasSpell(#) to check for the talent? Also how do I check if they player is standing in one of their own aoe spell effects?
(I’ve tried using ValidateSpellInfo() but not getting the info back that I need.)