def add_child_ref_default(self, obj, child, frel=1, mrel=1, private=False):
     object_type = ContentType.objects.get_for_model(obj) # obj is family
     count = models.ChildRef.objects.filter(object_id=obj.id,object_type=object_type).count()
     child_ref = models.ChildRef(private=private,
                             referenced_by=obj,
                             ref_object=child,
                             order=count + 1,
                             father_rel_type=models.get_type(models.ChildRefType, frel),  # birth
                             mother_rel_type=models.get_type(models.ChildRefType, mrel))
     child_ref.save()
Example #2
0
 def add_child_ref_default(self, obj, child, frel=1, mrel=1, private=False):
     object_type = ContentType.objects.get_for_model(obj)  # obj is family
     count = models.ChildRef.objects.filter(
         object_id=obj.id, object_type=object_type).count()
     child_ref = models.ChildRef(
         private=private,
         referenced_by=obj,
         ref_object=child,
         order=count + 1,
         father_rel_type=models.get_type(models.ChildRefType,
                                         frel),  # birth
         mother_rel_type=models.get_type(models.ChildRefType, mrel))
     child_ref.save()
 def add_child_ref(self, obj, data):
     (private, citation_list, note_list, ref, frel, mrel) = data
     try:
         child = models.Person.objects.get(handle=ref)
     except:
         print(("ERROR: Person does not exist: '%s'" % 
                               ref), file=sys.stderr)
         return
     object_type = ContentType.objects.get_for_model(obj)
     count = models.ChildRef.objects.filter(object_id=obj.id,object_type=object_type).count()
     child_ref = models.ChildRef(private=private,
                             referenced_by=obj,
                             ref_object=child,
                             order=count + 1,
                             father_rel_type=models.get_type(models.ChildRefType, frel),
                             mother_rel_type=models.get_type(models.ChildRefType, mrel))
     child_ref.save()
     self.add_citation_list(child_ref, citation_list)
     self.add_note_list(child_ref, note_list)
Example #4
0
 def add_attribute(self, obj, attribute_data):
     (private, citation_list, note_list, the_type, value) = attribute_data
     attribute_type = models.get_type(models.AttributeType, the_type)
     attribute = models.Attribute(private=private,
                                  attribute_of=obj,
                                  attribute_type=attribute_type,
                                  value=value)
     attribute.save()
     self.add_citation_list(attribute, citation_list)
     self.add_note_list(attribute, note_list)
 def add_attribute(self, obj, attribute_data):
     (private, citation_list, note_list, the_type, value) = attribute_data
     attribute_type = models.get_type(models.AttributeType, the_type)
     attribute = models.Attribute(private=private,
                              attribute_of=obj,
                              attribute_type=attribute_type,
                              value=value)
     attribute.save()
     self.add_citation_list(attribute, citation_list)
     self.add_note_list(attribute, note_list)
 def add_lds(self, field, obj, data, order):
     (lcitation_list, lnote_list, date, type, place_handle,
      famc_handle, temple, status, private) = data
     if place_handle:
         try:
             place = models.Place.objects.get(handle=place_handle)
         except:
             print(("ERROR: Place does not exist: '%s'" % 
                                   place_handle), file=sys.stderr)
             place = None
     else:
         place = None
     if famc_handle:
         try:
             famc = models.Family.objects.get(handle=famc_handle)
         except:
             print(("ERROR: Family does not exist: '%s'" % 
                                   famc_handle), file=sys.stderr)
             famc = None
     else:
         famc = None
     lds = models.Lds(lds_type = models.get_type(models.LdsType, type),
                  temple=temple, 
                  place=place,
                  famc=famc,
                  order=order,
                  status = models.get_type(models.LdsStatus, status),
                  private=private)
     self.add_date(lds, date)
     lds.save()
     self.add_note_list(lds, lnote_list)
     self.add_citation_list(lds, lcitation_list)
     if field == "person":
         lds.person = obj
     elif field == "family":
         lds.family = obj
     else:
         raise AttributeError("invalid field '%s' to attach lds" %
                              field)
     lds.save()
     return lds
Example #7
0
 def add_child_ref(self, obj, data):
     (private, citation_list, note_list, ref, frel, mrel) = data
     try:
         child = models.Person.objects.get(handle=ref)
     except:
         print(("ERROR: Person does not exist: '%s'" % ref),
               file=sys.stderr)
         return
     object_type = ContentType.objects.get_for_model(obj)
     count = models.ChildRef.objects.filter(
         object_id=obj.id, object_type=object_type).count()
     child_ref = models.ChildRef(
         private=private,
         referenced_by=obj,
         ref_object=child,
         order=count + 1,
         father_rel_type=models.get_type(models.ChildRefType, frel),
         mother_rel_type=models.get_type(models.ChildRefType, mrel))
     child_ref.save()
     self.add_citation_list(child_ref, citation_list)
     self.add_note_list(child_ref, note_list)
Example #8
0
 def add_lds(self, field, obj, data, order):
     (lcitation_list, lnote_list, date, type, place_handle, famc_handle,
      temple, status, private) = data
     if place_handle:
         try:
             place = models.Place.objects.get(handle=place_handle)
         except:
             print(("ERROR: Place does not exist: '%s'" % place_handle),
                   file=sys.stderr)
             place = None
     else:
         place = None
     if famc_handle:
         try:
             famc = models.Family.objects.get(handle=famc_handle)
         except:
             print(("ERROR: Family does not exist: '%s'" % famc_handle),
                   file=sys.stderr)
             famc = None
     else:
         famc = None
     lds = models.Lds(lds_type=models.get_type(models.LdsType, type),
                      temple=temple,
                      place=place,
                      famc=famc,
                      order=order,
                      status=models.get_type(models.LdsStatus, status),
                      private=private)
     self.add_date(lds, date)
     lds.save()
     self.add_note_list(lds, lnote_list)
     self.add_citation_list(lds, lcitation_list)
     if field == "person":
         lds.person = obj
     elif field == "family":
         lds.family = obj
     else:
         raise AttributeError("invalid field '%s' to attach lds" % field)
     lds.save()
     return lds
 def add_note(self, data):
     # Unpack from the BSDDB:
     (handle, gid, styled_text, format, note_type,
      change, tag_list, private) = data
     text, markup_list = styled_text
     n = models.Note(handle=handle,
                     gramps_id=gid,
                     last_changed=todate(change),
                     private=private,
                     preformatted=format,
                     text=text,
                     note_type=models.get_type(models.NoteType, note_type))
     #n.cache = base64.encodestring(cPickle.dumps(data))
     n.save()
     self.save_note_markup(n, markup_list)
Example #10
0
 def add_note(self, data):
     # Unpack from the BSDDB:
     (handle, gid, styled_text, format, note_type, change, tag_list,
      private) = data
     text, markup_list = styled_text
     n = models.Note(handle=handle,
                     gramps_id=gid,
                     last_changed=todate(change),
                     private=private,
                     preformatted=format,
                     text=text,
                     note_type=models.get_type(models.NoteType, note_type))
     #n.cache = base64.encodestring(cPickle.dumps(data))
     n.save()
     self.save_note_markup(n, markup_list)
Example #11
0
 def add_surname_list(self, name, surname_list):
     order = 1
     for data in surname_list:
         (surname_text, prefix, primary, origin_type, connector) = data
         surname = models.Surname()
         surname.surname = surname_text
         surname.prefix = prefix
         surname.primary = primary
         surname.name_origin_type = models.get_type(models.NameOriginType,
                                                    origin_type)
         surname.connector = connector
         surname.name = name
         surname.order = order
         surname.save()
         order += 1
 def save_note_markup(self, note, markup_list):
     # delete any prexisting markup:
     models.Markup.objects.filter(note=note).delete()
     count = 1
     for markup in markup_list:
         markup_code, value, start_stop_list = markup
         m = models.Markup(
             note=note, 
             order=count, 
             styled_text_tag_type=models.get_type(models.StyledTextTagType,
                                                  markup_code, 
                                                  get_or_create=False),
             string=value,
             start_stop_list=str(start_stop_list))
         m.save()
Example #13
0
 def save_note_markup(self, note, markup_list):
     # delete any prexisting markup:
     models.Markup.objects.filter(note=note).delete()
     count = 1
     for markup in markup_list:
         markup_code, value, start_stop_list = markup
         m = models.Markup(note=note,
                           order=count,
                           styled_text_tag_type=models.get_type(
                               models.StyledTextTagType,
                               markup_code,
                               get_or_create=False),
                           string=value,
                           start_stop_list=str(start_stop_list))
         m.save()
Example #14
0
 def add_url(self, field, obj, url_data, order):
     (private, path, desc, type) = url_data
     url = models.Url(private=private,
                      path=path,
                      desc=desc,
                      order=order,
                      url_type=models.get_type(models.UrlType, type))
     if field == "person":
         url.person = obj
     elif field == "repository":
         url.repository = obj
     elif field == "place":
         url.place = obj
     else:
         raise AttributeError("invalid field '%s' to attach to url" % field)
     url.save()
 def add_surname_list(self, name, surname_list):
     order = 1
     for data in surname_list:
         (surname_text, prefix, primary, origin_type,
          connector) = data
         surname = models.Surname()
         surname.surname = surname_text
         surname.prefix = prefix
         surname.primary = primary
         surname.name_origin_type = models.get_type(models.NameOriginType, 
                                                    origin_type)
         surname.connector = connector
         surname.name = name
         surname.order = order
         surname.save() 
         order += 1
 def add_url(self, field, obj, url_data, order):
     (private, path, desc, type) = url_data
     url = models.Url(private=private,
                  path=path,
                  desc=desc,
                  order=order,
                  url_type=models.get_type(models.UrlType, type))
     if field == "person":
         url.person = obj
     elif field == "repository":
         url.repository = obj
     elif field == "place":
         url.place = obj
     else:
         raise AttributeError("invalid field '%s' to attach to url" %
                              field)
     url.save()
 def add_event_ref(self, obj, event_data):
     (private, note_list, attribute_list, ref, role) = event_data
     try:
         event = models.Event.objects.get(handle=ref)
     except:
         print(("ERROR: Event does not exist: '%s'" % 
                               ref), file=sys.stderr)
         return
     object_type = ContentType.objects.get_for_model(obj)
     count = models.EventRef.objects.filter(object_id=obj.id,object_type=object_type).count()
     event_ref = models.EventRef(private=private,
                             referenced_by=obj,
                             ref_object=event,
                             order=count + 1,
                             role_type = models.get_type(models.EventRoleType, role))
     event_ref.save()
     self.add_note_list(event_ref, note_list)
     self.add_attribute_list(event_ref, attribute_list)
Example #18
0
 def add_event_ref(self, obj, event_data):
     (private, note_list, attribute_list, ref, role) = event_data
     try:
         event = models.Event.objects.get(handle=ref)
     except:
         print(("ERROR: Event does not exist: '%s'" % ref), file=sys.stderr)
         return
     object_type = ContentType.objects.get_for_model(obj)
     count = models.EventRef.objects.filter(
         object_id=obj.id, object_type=object_type).count()
     event_ref = models.EventRef(private=private,
                                 referenced_by=obj,
                                 ref_object=event,
                                 order=count + 1,
                                 role_type=models.get_type(
                                     models.EventRoleType, role))
     event_ref.save()
     self.add_note_list(event_ref, note_list)
     self.add_attribute_list(event_ref, attribute_list)
Example #19
0
 def add_repository_ref(self, obj, reporef_data):
     (note_list, ref, call_number, source_media_type,
      private) = reporef_data
     try:
         repository = models.Repository.objects.get(handle=ref)
     except:
         print(("ERROR: Repository does not exist: '%s'" % ref),
               file=sys.stderr)
         return
     object_type = ContentType.objects.get_for_model(obj)
     count = models.RepositoryRef.objects.filter(
         object_id=obj.id, object_type=object_type).count()
     repos_ref = models.RepositoryRef(private=private,
                                      referenced_by=obj,
                                      call_number=call_number,
                                      source_media_type=models.get_type(
                                          models.SourceMediaType,
                                          source_media_type),
                                      ref_object=repository,
                                      order=count + 1)
     repos_ref.save()
     self.add_note_list(repos_ref, note_list)
 def add_repository_ref(self, obj, reporef_data):
     (note_list, 
      ref,
      call_number, 
      source_media_type,
      private) = reporef_data
     try:
         repository = models.Repository.objects.get(handle=ref)
     except:
         print(("ERROR: Repository does not exist: '%s'" % 
                               ref), file=sys.stderr)
         return
     object_type = ContentType.objects.get_for_model(obj)
     count = models.RepositoryRef.objects.filter(object_id=obj.id,object_type=object_type).count()
     repos_ref = models.RepositoryRef(private=private,
                                  referenced_by=obj,
                                  call_number=call_number,
                                  source_media_type=models.get_type(models.SourceMediaType,
                                                             source_media_type),
                                  ref_object=repository,
                                  order=count + 1)
     repos_ref.save()
     self.add_note_list(repos_ref, note_list)