def get_nutritional_info_as_text_blob (self, rec): if not get_prefs().get('include_nutritional_info_in_export',True): return None txt = '' footnotes = '' rd = default_rec_manager() nd = rd.nd nutinfo = nd.get_nutinfo_for_inglist(rd.get_ings(rec),rd) ings = rd.get_ings(rec) vapor = nutinfo._get_vapor() if len(vapor)==len(ings): return None if len(vapor) >= 1 and not get_prefs().get('include_partial_nutritional_info',False): return None if rec.yields and rec.yield_unit: singular_unit = gourmet.defaults.get_pluralized_form(rec.yield_unit,1) txt += '<i>%s</i>'%((rec.yields and _('Nutritional information reflects amount per %s.'%singular_unit)) or _('Nutritional information reflects amounts for entire recipe')) if vapor: txt = txt + '*' footnotes = '\n*' + _('Nutritional information is missing for %s ingredients: %s')%( len(vapor), ', '.join([escape(nv.__ingobject__.item) for nv in vapor]) ) for itm in MAIN_NUT_LAYOUT: if itm == SEP: # We don't have any nice way of outputting separator # lines in our export continue else: label,typ,name,properties,show_percent,unit = itm if typ==MAJOR: itm_text = '<b>'+label+'</b>' else: itm_text = label if unit: itm_text += ' (%s)'%unit if type(properties) == list: amts = [getattr(nutinfo,att) for att in properties] amt = sum(amts) else: amt = getattr(nutinfo,properties) if rec.yields: amt = amt/rec.yields itm_text += ' %d'%round(amt) txt += '\n'+itm_text return '\n'.join([txt,footnotes])
t.show() test_in_window(t) print t.selected_dic def test_merger (rd, conflicts): recs = [rd.get_rec(i) for i in conflicts] rmerger = RecipeMerger(rd) to_fill,conflict_dic = gourmet.recipeIdentifier.merge_recipes(rd,recs) if conflict_dic: dt = rmerger.uiMergeRecipes(recs) dt.show() test_in_window(dt) print dt.selected_dic elif to_fill: print 'Differences in ',conflicts,'can be auto-filled with',to_fill else: print 'No differences in ',conflicts import recipeManager rd = recipeManager.default_rec_manager() rmd = RecipeMergerDialog(rd) rmd.populate_tree() rmd.show() rmd.ui.get_object('window1').connect('delete-event',gtk.main_quit) gtk.main() #dups = rd.find_complete_duplicates() #for d in dups[5:]: # test_merger(rd,d)
t.show() test_in_window(t) print(t.selected_dic) def test_merger(rd, conflicts): recs = [rd.get_rec(i) for i in conflicts] rmerger = RecipeMerger(rd) to_fill, conflict_dic = gourmet.recipeIdentifier.merge_recipes( rd, recs) if conflict_dic: dt = rmerger.uiMergeRecipes(recs) dt.show() test_in_window(dt) print(dt.selected_dic) elif to_fill: print('Differences in ', conflicts, 'can be auto-filled with', to_fill) else: print('No differences in ', conflicts) import recipeManager rd = recipeManager.default_rec_manager() rmd = RecipeMergerDialog(rd) rmd.populate_tree() rmd.show() rmd.ui.get_object('window1').connect('delete-event', Gtk.main_quit) Gtk.main() #dups = rd.find_complete_duplicates() #for d in dups[5:]: # test_merger(rd,d)