edit functions but uses separate view