tried to implement a save on each rating. might have bugs - has to be tested