def geo_settings(self): settings = {} fields = [i for i in getFields(IGeoSettings)] manager = utils.geo_settings(self.context) for name in fields: settings[name] = getattr(manager, name, None) return settings
def run(context, logger=None): if logger is None: logger = logging.getLogger('collective.geo.settings') # Fix/Set marker_image registry = getUtility(IRegistry) registry_key_marker_image = 'collective.geo.settings.interfaces.IGeoFeatureStyle.marker_image' registry._records._fields[registry_key_marker_image].default = DEFAULT_MARKER_LOCATION styles_settings = geo_styles() marker_image = styles_settings.marker_image if marker_image == OLD_DEFAULT_MARKER_LOCATION or not marker_image: styles_settings.marker_image = DEFAULT_MARKER_LOCATION # Fix set imgpath registry_key_location_images = 'collective.geo.settings.interfaces.IGeoFeatureStyle.marker_image' registry._records._fields[registry_key_location_images].default = DEFAULT_IMAGE_LOCATION general_settings = geo_settings() img_path = general_settings.imgpath if img_path == OLD_DEFAULT_IMAGE_LOCATION or not img_path: general_settings.imgpath = DEFAULT_IMAGE_LOCATION logger.info('New default value for registry field "marker_image" and ' '"imgpath" has been set')
def test_extended_form(self): portal_url = self.portal.absolute_url() self.browser.addHeader('Authorization', 'Basic %s:%s' % (portal_owner, default_password)) self.browser.open('%s/@@collectivegeo-controlpanel' % portal_url) widget = None try: widget = self.browser.getControl( name='form.widgets.geo_content_types.to') or False except: self.fail( 'geo_content_types widget not Found in controlpanel form') if widget: geo_content_types = geo_settings(self.portal).geo_content_types self.assertEqual(widget.options, geo_content_types)
def test_extended_form(self): portal_url = self.portal.absolute_url() self.browser.addHeader( 'Authorization', 'Basic %s:%s' % (SITE_OWNER_NAME, SITE_OWNER_PASSWORD)) self.browser.open('%s/@@collectivegeo-controlpanel' % portal_url) widget = None try: widget = self.browser.getControl( name='form.widgets.geo_content_types.to') or False except: self.fail( 'geo_content_types widget not Found in controlpanel form') if widget: geo_content_types = geo_settings(self.portal).geo_content_types self.assertEqual(widget.options, geo_content_types)
def isGeoreferenceable(self): geo_contenttypes = geo_settings().geo_content_types return ( IGeoreferenceable.providedBy(self.context) and self.context.portal_type in geo_contenttypes)
def _options(self): return geo_settings(self.context)
def isGeoreferenceable(self): geo_contenttypes = geo_settings().geo_content_types return (IGeoreferenceable.providedBy(self.context) and self.context.portal_type in geo_contenttypes)