complete add page with validation