func (repo *SportActivityRepository) CreateSportActivity(activity *services.SportActivity) (*services.SportActivity, error) {

	if activity.GetID() == "" {
		u, _ := uuid.NewV4()
		id := u.String()
		activity.ID = &id
	}

	err := repo.mongo.Collection.Insert(activity)

	return activity, err

}
func (ch *SportActivityHandler) CreateActivity(token string, activity *services.SportActivity) (*services.SportActivity, error) {
	userid, _ := ch.userR.GetUserIdFromToken(token)
	host, err := ch.userR.GetFullUserInfo(userid)
	if err != nil {
		return nil, err
	}

	activity.Hostid = &userid

	//broadcast activity to all friends:
	mActivity, err := ch.repo.CreateSportActivity(activity)
	if err != nil {
		return nil, err
	}

	//invite all friends to join activity
	friends := host.Friends
	if friends != nil {
		for _, friendid := range friends {
			//invite friend to activity
			ch.userR.AnnounceActivity(friendid, *(mActivity.ID))
		}
	}

	//Announce activity to user himself:
	ch.userR.AnnounceActivity(*(mActivity.Hostid), *(mActivity.ID))

	if activity.ActPublic != nil && *(activity.ActPublic) == true {
		ch.cityR.AnnounceActivity(*(mActivity.Cityid), *(mActivity.ID))
	}

	//finally add first participant to activity;
	//TODO this is disabled for debugging reasons
	//ch.repo.JoinUser(userid,*(mActivity.ID))
	return mActivity, err

}