def _make_group_object(self, user_id, case_sharing): def group_name(): return '/'.join( list(self.get_ancestors().values_list('name', flat=True)) + [self.name] ) from corehq.apps.groups.models import UnsavableGroup g = UnsavableGroup() g.domain = self.domain g.users = [user_id] if user_id else [] g.last_modified = datetime.utcnow() if case_sharing: g.name = group_name() + '-Cases' g._id = LOCATION_SHARING_PREFIX + self.location_id g.case_sharing = True g.reporting = False else: # reporting groups g.name = group_name() g._id = LOCATION_REPORTING_PREFIX + self.location_id g.case_sharing = False g.reporting = True g.metadata = { 'commcare_location_type': self.location_type.name, 'commcare_location_name': self.name, } for key, val in self.metadata.items(): g.metadata['commcare_location_' + key] = val return g
def _make_group_object(self, user_id, case_sharing): from corehq.apps.groups.models import UnsavableGroup g = UnsavableGroup() g.domain = self.domain g.users = [user_id] if user_id else [] g.last_modified = datetime.utcnow() if case_sharing: g.name = self.get_path_display() + '-Cases' g._id = self.location_id g.case_sharing = True g.reporting = False else: # reporting groups g.name = self.get_path_display() g._id = LOCATION_REPORTING_PREFIX + self.location_id g.case_sharing = False g.reporting = True g.metadata = { 'commcare_location_type': self.location_type.name, 'commcare_location_name': self.name, } for key, val in self.metadata.items(): g.metadata['commcare_location_' + key] = val return g
def _make_group_object(self, user_id, case_sharing): from corehq.apps.groups.models import UnsavableGroup g = UnsavableGroup() g.domain = self.domain g.users = [user_id] if user_id else [] g.last_modified = datetime.utcnow() if case_sharing: g.name = self.get_path_display() + "-Cases" g._id = self.location_id g.case_sharing = True g.reporting = False else: # reporting groups g.name = self.get_path_display() g._id = LOCATION_REPORTING_PREFIX + self.location_id g.case_sharing = False g.reporting = True g.metadata = {"commcare_location_type": self.location_type.name, "commcare_location_name": self.name} for key, val in self.metadata.items(): g.metadata["commcare_location_" + key] = val return g