change ajax, add Strategy pattern