0006578: referencedbyselection.py process_object calls non-existant process_note method
svn: r21802
This commit is contained in:
		@@ -127,7 +127,7 @@ class ReferencedBySelectionProxyDb(ProxyDbBase):
 | 
			
		||||
        elif class_name == "Note":
 | 
			
		||||
            obj = self.db.get_note_from_handle(handle)
 | 
			
		||||
            if obj:
 | 
			
		||||
                self.process_notes(obj)
 | 
			
		||||
                self.process_note(obj)
 | 
			
		||||
        else:
 | 
			
		||||
            raise AttributeError("unknown class: '%s'" % class_name)
 | 
			
		||||
 | 
			
		||||
@@ -308,24 +308,29 @@ class ReferencedBySelectionProxyDb(ProxyDbBase):
 | 
			
		||||
        self.process_attributes(media)
 | 
			
		||||
        self.process_notes(media)
 | 
			
		||||
 | 
			
		||||
    def process_notes(self, original_obj):
 | 
			
		||||
    def process_note(self, note):
 | 
			
		||||
        """
 | 
			
		||||
        Follow the note object and find all of the primary objects
 | 
			
		||||
        that it references.
 | 
			
		||||
        """
 | 
			
		||||
        if note is None or note.handle in self.referenced["Note"]:
 | 
			
		||||
            return
 | 
			
		||||
        self.referenced["Note"].add(note.handle)
 | 
			
		||||
        for tag in note.text.get_tags():
 | 
			
		||||
            if tag.name == 'Link':
 | 
			
		||||
                if tag.value.startswith("gramps://"):
 | 
			
		||||
                    obj_class, prop, value = tag.value[9:].split("/")
 | 
			
		||||
                    if obj_class == "Media":         # bug6493
 | 
			
		||||
                        obj_class = "MediaObject"
 | 
			
		||||
                    if prop == "handle":
 | 
			
		||||
                        self.process_object(obj_class, value)
 | 
			
		||||
 | 
			
		||||
    def process_notes(self, original_obj):
 | 
			
		||||
        """ Find all of the primary objects referred to """
 | 
			
		||||
        for note_handle in original_obj.get_note_list():
 | 
			
		||||
            if note_handle and note_handle not in self.referenced["Note"]:
 | 
			
		||||
            if note_handle:
 | 
			
		||||
                note = self.db.get_note_from_handle(note_handle)
 | 
			
		||||
                if note:
 | 
			
		||||
                    self.referenced["Note"].add(note_handle)
 | 
			
		||||
                    for tag in note.text.get_tags():
 | 
			
		||||
                        if tag.name == 'Link':
 | 
			
		||||
                            if tag.value.startswith("gramps://"):
 | 
			
		||||
                                obj_class, prop, value = tag.value[9:].split("/")
 | 
			
		||||
                                if obj_class == "Media":         # bug6493
 | 
			
		||||
                                    obj_class = "MediaObject"
 | 
			
		||||
                                if prop == "handle":
 | 
			
		||||
                                    self.process_object(obj_class, value)
 | 
			
		||||
                self.process_note(note)
 | 
			
		||||
 | 
			
		||||
    # --------------------------------------------
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user