pageController reorganized