add donations functionality