def __call__(self): request = BaseRequest() site = self.context.getSite() request['PARENTS'] = [site] request.steps = list(self.context.getPhysicalPath()) request['URL'] = site.absolute_url() request.response = Response() import pdb; pdb.set_trace() request.traverse('who-who') return
def __call__(self): request = BaseRequest() site = self.context.getSite() request['PARENTS'] = [site] request.steps = list(self.context.getPhysicalPath()) request['URL'] = site.absolute_url() request.response = Response() import pdb pdb.set_trace() request.traverse('who-who') return
def run(self, *args, **kwargs): self.payload = kwargs['payload'] self.template = kwargs['template'] self.rec_id = kwargs['rec_id'] site = getSite() user = getSecurityManager().getUser() acl_users = site.acl_users user = user.__of__(acl_users) user_id = kwargs['user_id'] request = BaseRequest() request.response = Response() request.AUTHENTICATED_USER = user request['PARENTS'] = [site] request['URL'] = kwargs['url'] request.steps = [] request.cookies = {} request.form = {} import_location = site.unrestrictedTraverse(kwargs['import_path']) import_location.REQUEST = request site.REQUEST = request geo_fields = kwargs['geo_fields'] self.prop_map = kwargs['properties'] meta_type = kwargs['meta_type'] header = self.template row = self.payload record_number = self.rec_id content_type = import_location.getSite().get_pluggable_item(meta_type) add_object = content_type['add_method'] properties = {} extra_properties = {} address = None for column, value in zip(header, row): if value == '': continue if column not in self.prop_map: extra_properties[column] = value continue key = self.prop_map[column]['column'] widget = self.prop_map[column]['widget'] widget = widget.__of__(import_location) convert = widget.convert_from_user_string properties[key] = convert(value) try: properties = do_geocoding(geo_fields, properties) except GeocoderServiceError, e: msg = ( 'Warnings: could not find a valid address ' 'for row ${record_number}: ${error}', { 'record_number': record_number + 1, # account for header 'error': str(e) }) self.warnings.append(msg) address = properties.pop(geo_fields['address'])
def run(self, *args, **kwargs): self.payload = kwargs['payload'] self.template = kwargs['template'] self.rec_id = kwargs['rec_id'] site = getSite() user = getSecurityManager().getUser() acl_users = site.acl_users user = user.__of__(acl_users) user_id = kwargs['user_id'] request = BaseRequest() request.response = Response() request.AUTHENTICATED_USER = user request['PARENTS'] = [site] request['URL'] = kwargs['url'] request.steps = [] request.cookies = {} request.form = {} import_location = site.unrestrictedTraverse(kwargs['import_path']) import_location.REQUEST = request site.REQUEST = request geo_fields = kwargs['geo_fields'] self.prop_map = kwargs['properties'] meta_type = kwargs['meta_type'] header = self.template row = self.payload record_number = self.rec_id content_type = import_location.getSite().get_pluggable_item(meta_type) add_object = content_type['add_method'] properties = {} extra_properties = {} address = None for column, value in zip(header, row): if value == '': continue if column not in self.prop_map: extra_properties[column] = value continue key = self.prop_map[column]['column'] widget = self.prop_map[column]['widget'] widget = widget.__of__(import_location) convert = widget.convert_from_user_string properties[key] = convert(value) try: properties = do_geocoding(geo_fields, properties) except GeocoderServiceError, e: msg = ('Warnings: could not find a valid address ' 'for row ${record_number}: ${error}', {'record_number': record_number + 1, # account for header 'error': str(e)}) self.warnings.append(msg) address = properties.pop(geo_fields['address'])