%include;perso_utils
%nn;
%apply;a_of_b_gr_eq_lev%with;
[*descendants]%nn;
%and;
%if;(public_name != "")%public_name;%else;%first_name;%end;
%if;(qualifier != "") %qualifier;%end;
%sp;%surname;
%if;(alias != "") (%alias;)%end;
%end;
%if;not cancel_links;
%if;(referer != "")
%end;
%end;
%define;tothegen(xx)
[*to the %s generation:::xx]%nn;
%end;
%define;togen(xx)
%if;(xx = 0)[*specify::generation/generations]0%nn;
%elseif;(xx = 1)[*to the children]%nn;
%elseif;(xx = 2)[*to the grandchildren]%nn;
%elseif;(xx = 3)[*to the great-grandchildren]%nn;
%else;
%apply;tothegen%with;
%apply;nth([nth (generation)], xx)
%end;
%end;
%end;
%define;link(xx)
%if;(evar.cgl = "on")%xx;%else;
%xx;%end;
%xx.title;%xx.dates;
%end;
%define;p_link(aa, xx)
%if;(evar.cgl = "on")xx%else;
xx%end;
%end;
%define;somebody_long_info(xx)
%if;xx.has_nobility_titles;
%nn;
%foreach;xx.nobility_title;, %nobility_title;%end;
%nn;
%end;
%if;(xx.has_birth_date or xx.has_birth_place)
, %if;xx.is_male;[born]0%elseif;xx.is_female;[born]1%else;[born]2%end;
%if;xx.has_birth_date; %xx.on_birth_date;%end;
%if;xx.has_birth_place;, %xx.birth_place;%end;
%end;
%if;(xx.has_baptism_date or xx.has_baptism_place)
, %if;xx.is_male;[baptized]0%elseif;xx.is_female;[baptized]1%nn;
%else;[baptized]2%end;
%if;xx.has_baptism_date; %xx.on_baptism_date;%end;
%if;xx.has_baptism_place;, %xx.baptism_place;%end;
%end;
%if;xx.is_dead;, %xx.died;
%if;(xx.has_death_date) %xx.on_death_date;%end;
%if;(xx.has_death_place), %xx.death_place;%end;
%end;
%if;xx.is_buried;,
%if;xx.is_male;[buried]0%else;[buried]1%end;
%if;xx.has_burial_date; %xx.on_burial_date;%end;
%if;xx.has_burial_place;, %xx.burial_place;%end;%nl;
%end;
%if;xx.is_cremated;,
%if;xx.is_male;[cremated]0%else;[cremated]1%end;
%if;xx.has_cremation_date; %xx.on_cremation_date;%end;
%if;xx.has_cremation_place;, %xx.cremation_place;%end;%nl;
%end;
%if;xx.computable_death_age;%sp;
([age at death:] %xx.death_age;)%nn;
%end;
%if;xx.has_occupation;, %xx.occupation;%end;
%if;(evar.rel = "on" and xx.has_relations)
%foreach;xx.relation;%nl;
(%relation_type;[:]
%if;has_relation_him;%apply;link(relation_him.var)%end;%nl;
%if;has_relation_her;%apply;link(relation_her.var)%end;)%nn;
%end;
%foreach;xx.related;%nl;
(%related_type;[:] %apply;link(related.var))%nn;
%end;
%foreach;event_witness_relation;
%sp;
(%apply;capitalize(event_witness_relation_kind)%nn;
%if;(event_witness_relation.event.date.year != "")
(%event_witness_relation.event.date.year;)%nn;
%end;%nn;
[:]%sp;
%event_witness_relation.event.name;,%sp;
%apply;short_display_person("event_witness_relation.person")
%if;(event_witness_relation.event.spouse != "")
%sp;[and]
%apply;short_display_person("event_witness_relation.event.spouse")
%end;
%nn;)
%end;
%end;
%end;
%define;married_to(is_male, date_place)
%if;("is_male" = 1)
%if;are_married;[married%t to:::date_place]0%nn;
%elseif;are_not_married;[relationship%t to:::date_place]0%nn;
%elseif;are_engaged;[engaged%t to:::date_place]0%nn;
%elseif;is_no_sexes_check;[relationship%t to:::date_place]0%nn;
%elseif;is_no_mention;date_place [with]%nn;
%end;
%else;
%if;are_married;[married%t to:::date_place]1%nn;
%elseif;are_not_married;[relationship%t to:::date_place]1%nn;
%elseif;are_engaged;[engaged%t to:::date_place]1%nn;
%elseif;is_no_sexes_check;[relationship%t to:::date_place]1%nn;
%elseif;is_no_mention;date_place [with]%nn;
%end;
%end;
%end;
%define;descendants_by_list(xx, yy, curlev, maxlev, famlev, ctr)
%if;(curlev = 0)
%nl;%end;
%if;(evar.cgl = "on" or xx.is_restricted)%yy;%nn;
%else;%yy;%nn;
%end;
%nn;
%apply;somebody_long_info("xx").
%if;((evar.notes = "on" and (xx.has_notes or xx.has_event) and evar.inline = "on") or (evar.src = "on" and xx.has_sources and evar.inline = "on"))
%if;(evar.notes = "on" and (xx.has_notes or xx.has_event))
[*note/notes]0[:] %apply;clean_html_tags(xx.notes)
%if;xx.has_event;
%foreach;xx.event;
%if;event.has_date;%event.date;[:]
%else;---[:]
%end;
|
%apply;capitalize(event.name)%sp;
%if;event.has_spouse;([with] %event.spouse;)%end;
%if;event.has_place; - %event.place; %end;
%if;event.has_witnesses;
%foreach;event_witness;
%apply;capitalize(event_witness_kind)[:]
%apply;short_display_person("event_witness")
%end;
%end;
%if;event.has_note;%event.note; %end;
%if;event.has_src;[*source/sources]1[:] %event.src;%end;
|
%end;
%end;
%end;
%if;(evar.src = "on" and xx.has_sources)
[*source/sources]1[:]
%foreach;xx.source;
%source_type;[:] %apply;clean_html_tags(source)
%if;(not is_last),%sp;%end;
%end;
%end;
%end;
%if;((((evar.notes="on" and (xx.has_notes or xx.has_event))
and (wizard or friend or bvar.no_note_for_visitor="" or bvar.no_note_for_visitor="no"))
or (evar.src="on" and xx.has_sources)) and evar.inline != "on")%sp;
%[[*note/notes]0%sp;
%nn;%ctr;%]%nn;
%end
%incr_count;
%apply;lazy_print%with;
%nl;%end;
%foreach;xx.family;
%if;(family_cnt != 1 and curlev = 0)
%nl;%end;
%lazy_force;
%apply;capitalize%with;
%apply;married_to%with;
%xx.is_male;
%and;
%if;(on_marriage_date != "") %on_marriage_date;%end;
%if;(marriage_place != ""), %marriage_place;,%end;
%end;
%end;%nl;
%if;(evar.cgl = "on" or spouse.is_restricted)%spouse;%nn;
%else;%spouse;%nn;
%end;
%nn;
%apply;somebody_long_info("spouse")
%if;((evar.notes = "on" and (spouse.has_notes or spouse.has_event) and evar.inline = "on") or (evar.src = "on" and spouse.has_sources and evar.inline = "on"))
%if;(evar.notes = "on" and (spouse.has_notes or spouse.has_event))
[*note/notes]0[:] %apply;clean_html_tags(spouse.notes)
%if;spouse.has_event;
%foreach;spouse.event;
%if;event.has_date;%event.date;[:]
%else;---[:]
%end;
|
%apply;capitalize(event.name)%sp;
%if;event.has_spouse;([with] %event.spouse;)%end;
%if;event.has_place; - %event.place; %end;
%if;event.has_witnesses;
%foreach;event_witness;
%apply;capitalize(event_witness_kind)[:]
%apply;short_display_person("event_witness")
%end;
%end;
%if;event.has_note;%event.note; %end;
%if;event.has_src;[*source/sources]1[:] %event.src;%end;
|
%end;
%end;
%end;
%if;(evar.src = "on" and spouse.has_sources)
[*source/sources]1[:]
%foreach;spouse.source;
%source_type;[:] %apply;clean_html_tags(source)
%if;(not is_last),%sp;%end;
%end;
%end;
%end;
%if;((((evar.notes="on" and (spouse.has_notes or spouse.has_event))
and (wizard or friend or bvar.no_note_for_visitor="" or bvar.no_note_for_visitor="no"))
or (evar.src="on" and spouse.has_sources)) and evar.inline != "on")%sp;
%[[*note/notes]0%sp;
%nn;%ctr;-%family_cnt;%]%nn;
%end;
%if;(evar.witn = "on" and has_witnesses)%nl;
([witness/witnesses]1[:]
%foreach;witness;
%if;(not is_first),%nl;%end;
%apply;link(witness.var)
%end;)%sq;
%end;
%if;(evar.comm = "on" and (has_comment or has_marriage_note))
(%comment;%nn;
%if;has_marriage_note;
%apply;clean_html_tags(marriage_note)
%end;)
%end;
%if;are_divorced;,
[divorced]%end;
%if;are_separated;,
[separated]%end;
%if;(curlev < maxlev)
%if;(curlev = 0 or
evar.t = "M" and xx.is_male or
evar.t = "F" and xx.is_female or
evar.t = "L")
%if;(family.desc_level < famlev)
, [see further].
%apply;lazy_print%with;
%nl;%end;
%elseif;(family.desc_level > famlev)
, [see above].
%apply;lazy_print%with;
%nl;%end;
%elseif;has_children;
... [having as children]
%family.set_infinite_desc_level;
%if;(curlev = 0)%nl;%end;
%foreach;child;
-
%if;(evar.alwsurn = "yes")
%apply;descendants_by_list("child", "child", curlev+1, maxlev, famlev+1, count+1)
%else;
%apply;descendants_by_list("child", "child_name", curlev+1, maxlev, famlev+1, count+1)
%end;
%end;
%apply;lazy_print%with;%end;
%else;.
%if;(curlev = 0)%nl;%nl;
%else;%apply;lazy_print%with;
%nl;%end;
%end;
%end;
%elseif;has_children;, ...
%else;.
%end;
%else;.%nl;
%apply;lazy_print%with;
%nl;%end;
%end;
%end;
%end;
%define;notes_by_list(xx, curlev, maxlev, famlev, ctr)
%incr_count;
%if;(((evar.notes="on" and (xx.has_notes or xx.has_event))
and (wizard or friend or
bvar.no_note_for_visitor="" or
bvar.no_note_for_visitor="no"))
or
(evar.src="on" and xx.has_sources))
%ctr;%sp;
(%xx; %xx.dates;)
%if;((evar.notes="on" and (xx.has_notes or xx.has_event))
and (wizard or friend or
bvar.no_note_for_visitor="" or
bvar.no_note_for_visitor="no"))
%xx.notes;
%if;xx.has_event;
%foreach;xx.event;
%if;event.has_date;%event.date;[:]
%else;---[:]
%end;
|
%apply;capitalize(event.name)%sp;
%if;event.has_spouse;([with] %event.spouse;)%end;
%if;event.has_place; - %event.place; %end;
%if;event.has_witnesses;
%foreach;event_witness;
%apply;capitalize(event_witness_kind)[:]
%apply;short_display_person("event_witness")
%end;
%end;
%if;event.has_note;%event.note; %end;
%if;event.has_src;[*source/sources]1[:] %event.src;%end;
|
%end;
%end;
|
%end;
%if;(evar.src="on" and xx.has_sources)
[*source/sources]1[:]
%foreach;xx.source;
- %source_type;[:] %source;
%end;
%end;
%end;
%foreach;xx.family;
%if;(((evar.notes="on" and (spouse.has_notes or spouse.has_event))
and (wizard or friend or
bvar.no_note_for_visitor="" or
bvar.no_note_for_visitor="no"))
or
(evar.src="on" and spouse.has_sources))
%ctr;
-%family_cnt;%sp;
(%spouse; %spouse.dates;)
%if;((evar.notes="on" and (spouse.has_notes or spouse.has_event))
and (wizard or friend or
bvar.no_note_for_visitor="" or
bvar.no_note_for_visitor="no"))
%spouse.notes;
%if;spouse.has_event;
%foreach;spouse.event;
%if;event.has_date;%event.date;[:]
%else;---[:]
%end;
|
%apply;capitalize(event.name)%sp;
%if;event.has_spouse;([with] %event.spouse;)%end;
%if;event.has_place; - %event.place; %end;
%if;event.has_witnesses;
%foreach;event_witness;
%apply;capitalize(event_witness_kind)[:]
%apply;short_display_person("event_witness")
%end;
%end;
%if;event.has_note;%event.note; %end;
%if;event.has_src;[*source/sources]1[:] %event.src;%end;
|
%end;
%end;
|
%end;
%if;(evar.src="on" and spouse.has_sources)
[*source/sources]1[:]
%foreach;spouse.source;
- %source_type;[:] %source;
%end;
%end;
%end;
%if;(curlev < maxlev)
%if;((curlev=0) or
(evar.t="M" and xx.is_male) or
(evar.t="F" and xx.is_female) or
(evar.t="L"))
%if;(family.desc_level < famlev)%nn;
%elseif;(family.desc_level > famlev)%nn;
%elseif;has_children;
%family.set_infinite_desc_level;
%foreach;child;
%apply;notes_by_list("child", curlev+1,
maxlev, famlev+1, count+1)
%end;
%end;
%end;
%end;
%end;
%end;
%define;by_list(xx)
%if;((evar.notes = "on" or evar.src = "on") and evar.inline != "on")
[*see][:] [*descendants]%sp;%nn;
%end;
%if;((evar.notes = "on" or evar.src = "on") and evar.inline != "on")
| [*note/notes]1
%end;
%reset_count;
%apply;togen(xx).
%reset_count;
%apply;descendants_by_list("self", "self", 0, xx, 0, 1)%nl;
[*total][:] %expr(count-1) [[person/persons]1@(c)]%sp;
([spouses not included]).
%if;((evar.notes="on" or evar.src="on") and evar.inline != "on")
%if;(evar.notes = "on")[*note/notes]1%else;[*source/sources]1%end;
%reset_count;
%reset_desc_level;
%apply;notes_by_list("self", 0, xx, 0, 1)%nl;
%end;
%end;
%let;evarv;%if;(evar.v!="")%evar.v;%else;0%end;%in;
%apply;by_list%with;
%if;(bvar.max_desc_level = "")%apply;min(evarv, max_desc_level, 12)
%else;%apply;min(evarv, max_desc_level, bvar.max_desc_level)%end;
%end;
%include;trl
%include;copyr
%include;js