def _base_args(self, context, field, request): args = super(QueryStringWidget, self)._base_args(context, field, request) args["name"] = field.getName() args["value"] = request.get(field.getName(), json.dumps([dict(c) for c in field.getRaw(context)])) args.setdefault("pattern_options", {}) args["pattern_options"] = dict_merge( get_querystring_options(context, self.querystring_view), args["pattern_options"] ) return args
def _base_args(self, context, field, request): args = super(QueryStringWidget, self)._base_args(context, field, request) args['name'] = field.getName() args['value'] = request.get( field.getName(), json.dumps([dict(c) for c in field.getRaw(context)])) args.setdefault('pattern_options', {}) args['pattern_options'] = dict_merge( get_querystring_options(context, self.querystring_view), args['pattern_options']) return args
def test__query_string_options(self): """Test query string options on root: All URLs and paths equal root url and path, no favorites """ portal = self.layer['portal'] options = get_querystring_options( portal, '@@qsOptions' ) # Test base options self.assertEqual( options['indexOptionsUrl'], 'http://nohost/plone/@@qsOptions' ) self.assertEqual( options['previewCountURL'], 'http://nohost/plone/@@querybuildernumberofresults' ) self.assertEqual( options['previewURL'], 'http://nohost/plone/@@querybuilder_html_results' ) # Test options of the AJAX select widget self.assertEqual( options['patternAjaxSelectOptions']['separator'], ';' ) # Test options of the date picker self.assertEqual( options['patternDateOptions']['time'], False ) # Test options of the related items widget self.assertEqual( options['patternRelateditemsOptions']['basePath'], '/plone' ) self.assertTrue( 'recentlyUsed' not in options['patternRelateditemsOptions'] )
def _base_args(self): """Method which will calculate _base class arguments. Returns (as python dictionary): - `pattern`: pattern name - `pattern_options`: pattern options - `name`: field name - `value`: field value :returns: Arguments which will be passed to _base :rtype: dict """ args = super(QueryStringWidget, self)._base_args() args['name'] = self.name args['value'] = self.value args.setdefault('pattern_options', {}) args['pattern_options'] = dict_merge( get_querystring_options(self.context, self.querystring_view), args['pattern_options']) return args