share page refactoring