add factory & fetch ideas in controller