def store_user_data(user=None, group=None,data_kind=DINGOS_USER_DATA_TYPE_NAME,user_data=None,iobject_name=None):
        """
        Returns either stored settings of a given user or default settings.
        This behavior reflects the need for views to have some settings at
        hand when running. The settings are returned as dict object.
        """

        if not user_data:
            user_data = {}

        if not user.is_authenticated():
            user = None

        user_config,created =  UserData.objects.get_or_create(user=user,group=group,data_kind=data_kind)
        return user_config.store(user_data,iobject_type_name=data_kind,iobject_name=iobject_name)