def projects_for_object(context, obj): ct = ContentType.objects.get_for_model(obj) projects = [p.project for p in ProjectRelatedObject.objects.filter(content_type=ct, object_id=obj.id)] project_widget = Autocomplete(Project, '/project/search_by_name') project_widget = "%s \n %s" % (str(project_widget.media), project_widget.render('project')) return dict(projects=projects, project_widget=project_widget, contenttype=ct.id, object_id=obj.id)
def _get_widgets_dict(obj): tag_widget = TaggitWidget(autocomplete_url="/%s/search_tags/" % obj) tag_widget = "%s \n %s" % (str(tag_widget.media), tag_widget.render('tags')) # tag_widget = "<input id='id_tags' type='text'/>" community_widget = Autocomplete(Community, '/community/search_by_name') community_widget = "%s \n %s" % (str(community_widget.media), community_widget.render('community')) ##### NEED CATEGORIES FILTER ##### # FIXME: this code should be somewhere else. need_categories_widget = "<input id='need_categories' type='hidden'/>\n" for nc in NeedCategory.objects.all().order_by('name'): need_categories_widget += """ <img src='/static/{0}' title='{3}' class='nc_filter' ncid='{2}'/> <img src='/static/{1}' title='{3}' class='nc_filter hidden' ncid='{2}'/> """.format(nc.image_off, nc.image, nc.id, nc.name) need_categories_widget += """ <script type="text/javascript"> var nc_filter_arr = []; $("img.nc_filter").on("click", function (evt) { var id = $(evt.target).attr('ncid'); var pos = nc_filter_arr.indexOf(id); if (pos != -1) nc_filter_arr.splice(pos, 1); // removes the element else nc_filter_arr.push(id); // appends element $("#need_categories").val(nc_filter_arr.join()).change; $(".nc_filter[ncid='"+id+"']").toggle(); }); </script> """ ################################## target_audience_widget = TaggitWidget( autocomplete_url="/need/target_audience_search/" ) target_audience_widget = "%s \n %s" % ( str(target_audience_widget.media), target_audience_widget.render('target_audiences') ) # filters return { 'tags': tag_widget, 'community': community_widget, 'need_categories': need_categories_widget, 'target_audiences': target_audience_widget, }
def _get_widgets_dict(obj): tag_widget = TaggitWidget(autocomplete_url="/%s/search_tags/" % obj) tag_widget = "%s \n %s" % (str( tag_widget.media), tag_widget.render('tags')) # tag_widget = "<input id='id_tags' type='text'/>" community_widget = Autocomplete(Community, '/community/search_by_name') community_widget = "%s \n %s" % (str( community_widget.media), community_widget.render('community')) ##### NEED CATEGORIES FILTER ##### # FIXME: this code should be somewhere else. need_categories_widget = "<input id='need_categories' type='hidden'/>\n" for nc in NeedCategory.objects.all().order_by('name'): need_categories_widget += """ <img src='/static/{0}' title='{3}' class='nc_filter' ncid='{2}'/> <img src='/static/{1}' title='{3}' class='nc_filter hidden' ncid='{2}'/> """.format(nc.image_off, nc.image, nc.id, nc.name) need_categories_widget += """ <script type="text/javascript"> var nc_filter_arr = []; $("img.nc_filter").on("click", function (evt) { var id = $(evt.target).attr('ncid'); var pos = nc_filter_arr.indexOf(id); if (pos != -1) nc_filter_arr.splice(pos, 1); // removes the element else nc_filter_arr.push(id); // appends element $("#need_categories").val(nc_filter_arr.join()).change; $(".nc_filter[ncid='"+id+"']").toggle(); }); </script> """ ################################## target_audience_widget = TaggitWidget( autocomplete_url="/need/target_audience_search/") target_audience_widget = "%s \n %s" % ( str(target_audience_widget.media), target_audience_widget.render('target_audiences')) # target_audience_widget = target_audience_widget.render('target_audiences') # target_audience_widget = "<input id='id_target_audiences' type='text'/>" # filters return { 'tags': tag_widget, 'community': community_widget, 'need_categories': need_categories_widget, 'target_audiences': target_audience_widget, }
def filtered_query_to_project(context, type, params, filtered=False): project_widget = Autocomplete(Project, '/project/search_by_name') project_widget = "%s \n %s" % (str(project_widget.media), project_widget.render('project')) return dict(project_widget=project_widget, type=type, params=json.dumps(params), filtered=filtered)