本文整理汇总了PHP中Fisharebest\Webtrees\GedcomTag::getLabel方法的典型用法代码示例。如果您正苦于以下问题:PHP GedcomTag::getLabel方法的具体用法?PHP GedcomTag::getLabel怎么用?PHP GedcomTag::getLabel使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Fisharebest\Webtrees\GedcomTag
的用法示例。
在下文中一共展示了GedcomTag::getLabel方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: __construct
/**
* Startup activity
*
* @param GedcomRecord|null $record
*/
public function __construct(GedcomRecord $record = null)
{
$this->record = $record;
// Automatically fix broken links
if ($this->record && $this->record->canEdit()) {
$broken_links = 0;
foreach ($this->record->getFacts('HUSB|WIFE|CHIL|FAMS|FAMC|REPO') as $fact) {
if (!$fact->isPendingDeletion() && $fact->getTarget() === null) {
$this->record->deleteFact($fact->getFactId(), false);
FlashMessages::addMessage(I18N::translate('The link from “%1$s” to “%2$s” has been deleted.', $this->record->getFullName(), $fact->getValue()));
$broken_links = true;
}
}
foreach ($this->record->getFacts('NOTE|SOUR|OBJE') as $fact) {
// These can be links or inline. Only delete links.
if (!$fact->isPendingDeletion() && $fact->getTarget() === null && preg_match('/^@.*@$/', $fact->getValue())) {
$this->record->deleteFact($fact->getFactId(), false);
FlashMessages::addMessage(I18N::translate('The link from “%1$s” to “%2$s” has been deleted.', $this->record->getFullName(), $fact->getValue()));
$broken_links = true;
}
}
if ($broken_links) {
// Reload the updated family
$this->record = GedcomRecord::getInstance($this->record->getXref(), $this->record->getTree());
}
}
parent::__construct();
// We want robots to index this page
$this->setMetaRobots('index,follow');
// Set a page title
if ($this->record) {
if ($this->record->canShowName()) {
// e.g. "John Doe" or "1881 Census of Wales"
$this->setPageTitle($this->record->getFullName());
} else {
// e.g. "Individual" or "Source"
$record = $this->record;
$this->setPageTitle(GedcomTag::getLabel($record::RECORD_TYPE));
}
} else {
// No such record
$this->setPageTitle(I18N::translate('Private'));
}
}
示例2: getBlock
//.........这里部分代码省略.........
$ind = $yahrzeit->getParent();
$content .= "<a href=\"" . $ind->getHtmlUrl() . "\" class=\"list_item name2\">" . $ind->getFullName() . "</a>" . $ind->getSexImage();
$content .= "<div class=\"indent\">";
$content .= $yahrzeit->getDate()->display(true);
$content .= ', ' . I18N::translate('%s year anniversary', $yahrzeit->anniv);
$content .= "</div>";
}
}
break;
case 'table':
default:
$table_id = Uuid::uuid4();
// table requires a unique ID
$controller->addExternalJavascript(WT_JQUERY_DATATABLES_JS_URL)->addInlineJavascript('
jQuery("#' . $table_id . '").dataTable({
dom: \'t\',
' . I18N::datatablesI18N() . ',
autoWidth: false,
paginate: false,
lengthChange: false,
filter: false,
info: true,
jQueryUI: true,
sorting: [[5,"asc"]],
columns: [
/* 0-name */ { dataSort: 1 },
/* 1-NAME */ { visible: false },
/* 2-date */ { dataSort: 3 },
/* 3-DATE */ { visible: false },
/* 4-Aniv */ { class: "center"},
/* 5-yart */ { dataSort: 6 },
/* 6-YART */ { visible: false }
]
});
jQuery("#' . $table_id . '").css("visibility", "visible");
jQuery(".loading-image").css("display", "none");
');
$content = '';
$content .= '<div class="loading-image"> </div>';
$content .= '<table id="' . $table_id . '" class="width100" style="visibility:hidden;">';
$content .= '<thead><tr>';
$content .= '<th>' . GedcomTag::getLabel('NAME') . '</th>';
$content .= '<th>' . GedcomTag::getLabel('NAME') . '</th>';
$content .= '<th>' . GedcomTag::getLabel('DEAT') . '</th>';
$content .= '<th>DEAT</th>';
$content .= '<th><i class="icon-reminder" title="' . I18N::translate('Anniversary') . '"></i></th>';
$content .= '<th>' . GedcomTag::getLabel('_YART') . '</th>';
$content .= '<th>_YART</th>';
$content .= '</tr></thead><tbody>';
foreach ($yahrzeits as $yahrzeit) {
if ($yahrzeit->jd >= $startjd && $yahrzeit->jd < $startjd + $days) {
$content .= '<tr>';
$ind = $yahrzeit->getParent();
// Individual name(s)
$name = $ind->getFullName();
$url = $ind->getHtmlUrl();
$content .= '<td>';
$content .= '<a href="' . $url . '">' . $name . '</a>';
$content .= $ind->getSexImage();
$addname = $ind->getAddName();
if ($addname) {
$content .= '<br><a href="' . $url . '">' . $addname . '</a>';
}
$content .= '</td>';
$content .= '<td>' . $ind->getSortName() . '</td>';
// death/yahrzeit event date
$content .= '<td>' . $yahrzeit->getDate()->display() . '</td>';
$content .= '<td>' . $yahrzeit->getDate()->julianDay() . '</td>';
// sortable date
// Anniversary
$content .= '<td>' . $yahrzeit->anniv . '</td>';
// upcomming yahrzeit dates
switch ($calendar) {
case 'gregorian':
$today = new GregorianDate($yahrzeit->jd);
break;
case 'jewish':
default:
$today = new JewishDate($yahrzeit->jd);
break;
}
$td = new Date($today->format('%@ %A %O %E'));
$content .= '<td>' . $td->display() . '</td>';
$content .= '<td>' . $td->julianDay() . '</td>';
// sortable date
$content .= '</tr>';
}
}
$content .= '</tbody></table>';
break;
}
if ($template) {
if ($block) {
$class .= ' small_inner_block';
}
return Theme::theme()->formatBlock($id, $title, $class, $content);
} else {
return $content;
}
}
示例3:
?>
</option>
<option value="BURI" <?php
echo $filterev === 'BURI' ? 'selected' : '';
?>
>
<?php
echo GedcomTag::getLabel('BURI');
?>
</option>
<option value="IMMI,EMIG" <?php
echo $filterev === 'IMMI,EMIG' ? 'selected' : '';
?>
>
<?php
echo GedcomTag::getLabel('EMIG');
?>
</option>
<option value="EVEN" <?php
echo $filterev === 'EVEN' ? 'selected' : '';
?>
>
<?php
echo I18N::translate('Custom event');
?>
</option>
</select>
</td>
</tr>
</table>
示例4: renderContent
//.........这里部分代码省略.........
"
>
<?php
echo I18N::translate('Roots');
?>
</button>
<button
type="button"
data-filter-column="23"
data-filter-value="L"
class="ui-state-default"
title="<?php
echo I18N::translate('Show “leaves” couples or individuals. These are individuals who are alive but have no children recorded in the database.');
?>
"
>
<?php
echo I18N::translate('Leaves');
?>
</button>
</div>
<div class="btn-group">
<button
type="button"
data-filter-column="21"
data-filter-value="U"
class="ui-state-default"
title="<?php
echo I18N::translate('Show couples with an unknown marriage date.');
?>
"
>
<?php
echo GedcomTag::getLabel('MARR');
?>
</button>
<button
type="button"
data-filter-column="21"
data-filter-value="YES"
class="ui-state-default"
title="<?php
echo I18N::translate('Show couples who married more than 100 years ago.');
?>
"
>
<?php
echo GedcomTag::getLabel('MARR');
?>
>100
</button>
<button
type="button"
data-filter-column="21"
data-filter-value="Y100"
class="ui-state-default"
title="<?php
echo I18N::translate('Show couples who married within the last 100 years.');
?>
"
>
<?php
echo GedcomTag::getLabel('MARR');
?>
<=100
</button>
示例5: print_indi_form
//.........这里部分代码省略.........
echo '<table class="facts_table">';
switch ($nextaction) {
case 'add_child_to_family_action':
case 'add_child_to_individual_action':
// When adding a new child, specify the pedigree
FunctionsEdit::addSimpleTag('0 PEDI');
break;
case 'update':
// When adding/editing a name, specify the type
FunctionsEdit::addSimpleTag('0 TYPE ' . $name_type, '', '', null, $person);
break;
}
// First - new/existing standard name fields
foreach ($name_fields as $tag => $value) {
if (substr_compare($tag, '_', 0, 1) !== 0) {
FunctionsEdit::addSimpleTag('0 ' . $tag . ' ' . $value);
}
}
// Second - new/existing advanced name fields
if ($surname_tradition->hasMarriedNames() || preg_match('/\\n2 _MARNM /', $namerec)) {
$adv_name_fields = array('_MARNM' => '');
} else {
$adv_name_fields = array();
}
if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('ADVANCED_NAME_FACTS'), $match)) {
foreach ($match[1] as $tag) {
$adv_name_fields[$tag] = '';
}
}
foreach (array_keys($adv_name_fields) as $tag) {
// Edit existing tags, grouped together
if (preg_match_all('/2 ' . $tag . ' (.+)/', $namerec, $match)) {
foreach ($match[1] as $value) {
FunctionsEdit::addSimpleTag('2 ' . $tag . ' ' . $value, '', GedcomTag::getLabel('NAME:' . $tag, $person));
if ($tag === '_MARNM') {
preg_match_all('/\\/([^\\/]*)\\//', $value, $matches);
FunctionsEdit::addSimpleTag('2 _MARNM_SURN ' . implode(',', $matches[1]));
}
}
}
// Allow a new tag to be entered
if (!array_key_exists($tag, $name_fields)) {
FunctionsEdit::addSimpleTag('0 ' . $tag, '', GedcomTag::getLabel('NAME:' . $tag, $person));
if ($tag === '_MARNM') {
FunctionsEdit::addSimpleTag('0 _MARNM_SURN');
}
}
}
// Third - new/existing custom name fields
foreach ($name_fields as $tag => $value) {
if (substr_compare($tag, '_', 0, 1) === 0) {
FunctionsEdit::addSimpleTag('0 ' . $tag . ' ' . $value);
if ($tag === '_MARNM') {
preg_match_all('/\\/([^\\/]*)\\//', $value, $matches);
FunctionsEdit::addSimpleTag('2 _MARNM_SURN ' . implode(',', $matches[1]));
}
}
}
// Fourth - SOUR, NOTE, _CUSTOM, etc.
if ($namerec) {
$gedlines = explode("\n", $namerec);
// -- find the number of lines in the record
$fields = explode(' ', $gedlines[0]);
$glevel = $fields[0];
$level = $glevel;
$type = trim($fields[1]);
示例6:
}
?>
><?php
echo I18N::translate('Sounds like');
?>
</option>
</select>
</td>
<?php
$j++;
?>
</tr>
<tr>
<td class="list_label">
<?php
echo GedcomTag::getLabel('SURN');
?>
</td>
<td class="list_value">
<input type="text" name="values[<?php
echo $j;
?>
]" value="<?php
echo $controller->getValue($controller->getIndex('FAMC:WIFE:NAME:SURN:' . $motherSurnOption));
?>
">
<select name="fields[<?php
echo $j;
?>
]">
<option value="FAMC:WIFE:NAME:SURN:EXACT" <?php
示例7: getDescendantsHtml
/**
* Generate a recursive list of descendants of an individual.
* If parents are specified, we can also show the pedigree (adopted, etc.).
*
* @param Individual $individual
* @param Family|null $parents
*
* @return string
*/
private function getDescendantsHtml(Individual $individual, Family $parents = null)
{
// A person has many names. Select the one that matches the searched surname
$person_name = '';
foreach ($individual->getAllNames() as $name) {
list($surn1) = explode(",", $name['sort']);
if (stripos($surn1, $this->surname) !== false || stripos($this->surname, $surn1) !== false || $this->soundex_std && Soundex::compare(Soundex::russell($surn1), Soundex::russell($this->surname)) || $this->soundex_dm && Soundex::compare(Soundex::daitchMokotoff($surn1), Soundex::daitchMokotoff($this->surname))) {
$person_name = $name['full'];
break;
}
}
// No matching name? Typically children with a different surname. The branch stops here.
if (!$person_name) {
return '<li title="' . strip_tags($individual->getFullName()) . '">' . $individual->getSexImage() . '…</li>';
}
// Is this individual one of our ancestors?
$sosa = array_search($individual, $this->ancestors, true);
if ($sosa) {
$sosa_class = 'search_hit';
$sosa_html = ' <a class="details1 ' . $individual->getBoxStyle() . '" title="' . I18N::translate('Sosa') . '" href="relationship.php?pid2=' . $this->ancestors[1]->getXref() . '&pid1=' . $individual->getXref() . '">' . $sosa . '</a>' . self::sosaGeneration($sosa);
} else {
$sosa_class = '';
$sosa_html = '';
}
// Generate HTML for this individual, and all their descendants
$indi_html = $individual->getSexImage() . '<a class="' . $sosa_class . '" href="' . $individual->getHtmlUrl() . '">' . $person_name . '</a> ' . $individual->getLifeSpan() . $sosa_html;
// If this is not a birth pedigree (e.g. an adoption), highlight it
if ($parents) {
$pedi = '';
foreach ($individual->getFacts('FAMC') as $fact) {
if ($fact->getTarget() === $parents) {
$pedi = $fact->getAttribute('PEDI');
break;
}
}
if ($pedi && $pedi != 'birth') {
$indi_html = '<span class="red">' . GedcomCodePedi::getValue($pedi, $individual) . '</span> ' . $indi_html;
}
}
// spouses and children
$spouse_families = $individual->getSpouseFamilies();
if ($spouse_families) {
usort($spouse_families, '\\Fisharebest\\Webtrees\\Family::compareMarrDate');
$fam_html = '';
foreach ($spouse_families as $family) {
$fam_html .= $indi_html;
// Repeat the individual details for each spouse.
$spouse = $family->getSpouse($individual);
if ($spouse) {
$sosa = array_search($spouse, $this->ancestors, true);
if ($sosa) {
$sosa_class = 'search_hit';
$sosa_html = ' <a class="details1 ' . $spouse->getBoxStyle() . '" title="' . I18N::translate('Sosa') . '" href="relationship.php?pid2=' . $this->ancestors[1]->getXref() . '&pid1=' . $spouse->getXref() . '"> ' . $sosa . ' </a>' . self::sosaGeneration($sosa);
} else {
$sosa_class = '';
$sosa_html = '';
}
$marriage_year = $family->getMarriageYear();
if ($marriage_year) {
$fam_html .= ' <a href="' . $family->getHtmlUrl() . '" title="' . strip_tags($family->getMarriageDate()->display()) . '"><i class="icon-rings"></i>' . $marriage_year . '</a>';
} elseif ($family->getFirstFact('MARR')) {
$fam_html .= ' <a href="' . $family->getHtmlUrl() . '" title="' . GedcomTag::getLabel('MARR') . '"><i class="icon-rings"></i></a>';
} elseif ($family->getFirstFact('_NMR')) {
$fam_html .= ' <a href="' . $family->getHtmlUrl() . '" title="' . GedcomTag::getLabel('_NMR') . '"><i class="icon-rings"></i></a>';
}
$fam_html .= ' ' . $spouse->getSexImage() . '<a class="' . $sosa_class . '" href="' . $spouse->getHtmlUrl() . '">' . $spouse->getFullName() . '</a> ' . $spouse->getLifeSpan() . ' ' . $sosa_html;
}
$fam_html .= '<ol>';
foreach ($family->getChildren() as $child) {
$fam_html .= $this->getDescendantsHtml($child, $family);
}
$fam_html .= '</ol>';
}
return '<li>' . $fam_html . '</li>';
} else {
// No spouses - just show the individual
return '<li>' . $indi_html . '</li>';
}
}
示例8: renderContent
//.........这里部分代码省略.........
echo I18N::translate('Show individuals who are alive or couples where both partners are alive.');
?>
"
type="button"
>
<?php
echo I18N::translate('Alive');
?>
</button>
<button
class="ui-state-default"
data-filter-column="20"
data-filter-value="Y"
title="<?php
echo I18N::translate('Show individuals who are dead or couples where both partners are deceased.');
?>
"
type="button"
>
<?php
echo I18N::translate('Dead');
?>
</button>
<button
class="ui-state-default"
data-filter-column="20"
data-filter-value="YES"
title="<?php
echo I18N::translate('Show individuals who died more than 100 years ago.');
?>
"
type="button"
><?php
echo GedcomTag::getLabel('DEAT');
?>
>100
</button>
<button
class="ui-state-default"
data-filter-column="20"
data-filter-value="Y100"
title="<?php
echo I18N::translate('Show individuals who died within the last 100 years.');
?>
"
type="button"
><?php
echo GedcomTag::getLabel('DEAT');
?>
<=100
</button>
</div>
<div class="btn-group">
<button
class="ui-state-default"
data-filter-column="19"
data-filter-value="YES"
title="<?php
echo I18N::translate('Show individuals born more than 100 years ago.');
?>
"
type="button"
><?php
echo GedcomTag::getLabel('BIRT');
?>
>100
示例9: icon
/**
* Display an icon for this fact.
*
* @param Fact $fact
*
* @return string
*/
public function icon(Fact $fact)
{
$icon = 'images/facts/' . $fact->getTag() . '.png';
$dir = substr($this->assetUrl(), strlen(WT_STATIC_URL));
if (file_exists($dir . $icon)) {
return '<img src="' . $this->assetUrl() . $icon . '" title="' . GedcomTag::getLabel($fact->getTag()) . '">';
} elseif (file_exists($dir . 'images/facts/NULL.png')) {
// Spacer image - for alignment - until we move to a sprite.
return '<img src="' . Theme::theme()->assetUrl() . 'images/facts/NULL.png">';
} else {
return '';
}
}
示例10: function
// Sort the facts
usort($facts, function (Fact $x, Fact $y) {
static $order = array('TITL' => 0, 'ABBR' => 1, 'AUTH' => 2, 'DATA' => 3, 'PUBL' => 4, 'TEXT' => 5, 'NOTE' => 6, 'OBJE' => 7, 'REFN' => 8, 'RIN' => 9, '_UID' => 10, 'CHAN' => 11);
return (array_key_exists($x->getTag(), $order) ? $order[$x->getTag()] : PHP_INT_MAX) - (array_key_exists($y->getTag(), $order) ? $order[$y->getTag()] : PHP_INT_MAX);
});
// Print the facts
foreach ($facts as $fact) {
FunctionsPrintFacts::printFact($fact, $controller->record);
}
// new fact link
if ($controller->record->canEdit()) {
FunctionsPrint::printAddNewFact($controller->record->getXref(), $facts, 'SOUR');
// new media
if ($controller->record->getTree()->getPreference('MEDIA_UPLOAD') >= Auth::accessLevel($WT_TREE)) {
echo '<tr><td class="descriptionbox">';
echo GedcomTag::getLabel('OBJE');
echo '</td><td class="optionbox">';
echo '<a href="#" onclick="window.open(\'addmedia.php?action=showmediaform&linktoid=', $controller->record->getXref(), '\', \'_blank\', edit_window_specs); return false;">', I18N::translate('Add a new media object'), '</a>';
echo FunctionsPrint::helpLink('OBJE');
echo '<br>';
echo '<a href="#" onclick="window.open(\'inverselink.php?linktoid=', $controller->record->getXref(), '&linkto=source\', \'_blank\', find_window_specs); return false;">', I18N::translate('Link to an existing media object'), '</a>';
echo '</td></tr>';
}
}
echo '</table>
</div>';
// Individuals linked to this source
if ($linked_indi) {
echo '<div id="indi-sources">', FunctionsPrintLists::individualTable($linked_indi), '</div>';
}
// Families linked to this source
示例11: format_type
/**
* Format a record type.
*
* @param string $type
*
* @return string
*/
function format_type($type)
{
return '<b title="' . strip_tags(GedcomTag::getLabel($type)) . '">' . $type . '</b>';
}
示例12:
<th class="descriptionbox" colspan="4">
<?php
echo I18N::translate('Select individuals by place or date');
?>
</th>
<th class="descriptionbox" colspan="2">
<?php
echo I18N::translate('Add individuals');
?>
</th>
</tr>
<tr>
<td class="optionbox">
<label for="place">
<?php
echo GedcomTag::getLabel('PLAC');
?>
</label>
</td>
<td class="optionbox" colspan="3">
<input id="place" data-autocomplete-type="PLAC" type="text" size="30" name="place">
</td>
<td class="optionbox">
<label for="newpid">
<?php
echo I18N::translate('Individual');
?>
</label>
</td>
<td class="optionbox">
<input id="newpid" class="pedigree_form" data-autocomplete-type="INDI" type="text" size="5" name="newpid"><?php
示例13: configureBlock
/**
* An HTML form to edit block settings
*
* @param int $block_id
*/
public function configureBlock($block_id)
{
if (Filter::postBool('save') && Filter::checkCsrf()) {
$this->setBlockSetting($block_id, 'filter', Filter::post('filter', 'indi|event|all', 'all'));
$this->setBlockSetting($block_id, 'controls', Filter::postBool('controls'));
$this->setBlockSetting($block_id, 'start', Filter::postBool('start'));
$this->setBlockSetting($block_id, 'filter_avi', Filter::postBool('filter_avi'));
$this->setBlockSetting($block_id, 'filter_bmp', Filter::postBool('filter_bmp'));
$this->setBlockSetting($block_id, 'filter_gif', Filter::postBool('filter_gif'));
$this->setBlockSetting($block_id, 'filter_jpeg', Filter::postBool('filter_jpeg'));
$this->setBlockSetting($block_id, 'filter_mp3', Filter::postBool('filter_mp3'));
$this->setBlockSetting($block_id, 'filter_ole', Filter::postBool('filter_ole'));
$this->setBlockSetting($block_id, 'filter_pcx', Filter::postBool('filter_pcx'));
$this->setBlockSetting($block_id, 'filter_pdf', Filter::postBool('filter_pdf'));
$this->setBlockSetting($block_id, 'filter_png', Filter::postBool('filter_png'));
$this->setBlockSetting($block_id, 'filter_tiff', Filter::postBool('filter_tiff'));
$this->setBlockSetting($block_id, 'filter_wav', Filter::postBool('filter_wav'));
$this->setBlockSetting($block_id, 'filter_audio', Filter::postBool('filter_audio'));
$this->setBlockSetting($block_id, 'filter_book', Filter::postBool('filter_book'));
$this->setBlockSetting($block_id, 'filter_card', Filter::postBool('filter_card'));
$this->setBlockSetting($block_id, 'filter_certificate', Filter::postBool('filter_certificate'));
$this->setBlockSetting($block_id, 'filter_coat', Filter::postBool('filter_coat'));
$this->setBlockSetting($block_id, 'filter_document', Filter::postBool('filter_document'));
$this->setBlockSetting($block_id, 'filter_electronic', Filter::postBool('filter_electronic'));
$this->setBlockSetting($block_id, 'filter_fiche', Filter::postBool('filter_fiche'));
$this->setBlockSetting($block_id, 'filter_film', Filter::postBool('filter_film'));
$this->setBlockSetting($block_id, 'filter_magazine', Filter::postBool('filter_magazine'));
$this->setBlockSetting($block_id, 'filter_manuscript', Filter::postBool('filter_manuscript'));
$this->setBlockSetting($block_id, 'filter_map', Filter::postBool('filter_map'));
$this->setBlockSetting($block_id, 'filter_newspaper', Filter::postBool('filter_newspaper'));
$this->setBlockSetting($block_id, 'filter_other', Filter::postBool('filter_other'));
$this->setBlockSetting($block_id, 'filter_painting', Filter::postBool('filter_painting'));
$this->setBlockSetting($block_id, 'filter_photo', Filter::postBool('filter_photo'));
$this->setBlockSetting($block_id, 'filter_tombstone', Filter::postBool('filter_tombstone'));
$this->setBlockSetting($block_id, 'filter_video', Filter::postBool('filter_video'));
}
$filter = $this->getBlockSetting($block_id, 'filter', 'all');
$controls = $this->getBlockSetting($block_id, 'controls', '1');
$start = $this->getBlockSetting($block_id, 'start', '0') || Filter::getBool('start');
echo '<tr><td class="descriptionbox wrap width33">';
echo I18N::translate('Show only individuals, events, or all');
echo '</td><td class="optionbox">';
echo FunctionsEdit::selectEditControl('filter', array('indi' => I18N::translate('Individuals'), 'event' => I18N::translate('Facts and events'), 'all' => I18N::translate('All')), null, $filter, '');
echo '</td></tr>';
$filters = array('avi' => $this->getBlockSetting($block_id, 'filter_avi', '0'), 'bmp' => $this->getBlockSetting($block_id, 'filter_bmp', '1'), 'gif' => $this->getBlockSetting($block_id, 'filter_gif', '1'), 'jpeg' => $this->getBlockSetting($block_id, 'filter_jpeg', '1'), 'mp3' => $this->getBlockSetting($block_id, 'filter_mp3', '0'), 'ole' => $this->getBlockSetting($block_id, 'filter_ole', '1'), 'pcx' => $this->getBlockSetting($block_id, 'filter_pcx', '1'), 'pdf' => $this->getBlockSetting($block_id, 'filter_pdf', '0'), 'png' => $this->getBlockSetting($block_id, 'filter_png', '1'), 'tiff' => $this->getBlockSetting($block_id, 'filter_tiff', '1'), 'wav' => $this->getBlockSetting($block_id, 'filter_wav', '0'), 'audio' => $this->getBlockSetting($block_id, 'filter_audio', '0'), 'book' => $this->getBlockSetting($block_id, 'filter_book', '1'), 'card' => $this->getBlockSetting($block_id, 'filter_card', '1'), 'certificate' => $this->getBlockSetting($block_id, 'filter_certificate', '1'), 'coat' => $this->getBlockSetting($block_id, 'filter_coat', '1'), 'document' => $this->getBlockSetting($block_id, 'filter_document', '1'), 'electronic' => $this->getBlockSetting($block_id, 'filter_electronic', '1'), 'fiche' => $this->getBlockSetting($block_id, 'filter_fiche', '1'), 'film' => $this->getBlockSetting($block_id, 'filter_film', '1'), 'magazine' => $this->getBlockSetting($block_id, 'filter_magazine', '1'), 'manuscript' => $this->getBlockSetting($block_id, 'filter_manuscript', '1'), 'map' => $this->getBlockSetting($block_id, 'filter_map', '1'), 'newspaper' => $this->getBlockSetting($block_id, 'filter_newspaper', '1'), 'other' => $this->getBlockSetting($block_id, 'filter_other', '1'), 'painting' => $this->getBlockSetting($block_id, 'filter_painting', '1'), 'photo' => $this->getBlockSetting($block_id, 'filter_photo', '1'), 'tombstone' => $this->getBlockSetting($block_id, 'filter_tombstone', '1'), 'video' => $this->getBlockSetting($block_id, 'filter_video', '0'));
?>
<tr>
<td class="descriptionbox wrap width33">
<?php
echo I18N::translate('Filter');
?>
</td>
<td class="optionbox">
<center><b><?php
echo GedcomTag::getLabel('FORM');
?>
</b></center>
<table class="width100">
<tr>
<td class="width33">
<label>
<input type="checkbox" value="yes" name="filter_avi" <?php
echo $filters['avi'] ? 'checked' : '';
?>
>
avi
</td>
<td class="width33">
<label>
<input type="checkbox" value="yes" name="filter_bmp" <?php
echo $filters['bmp'] ? 'checked' : '';
?>
>
bmp
</label>
</td>
<td class="width33">
<label>
<input type="checkbox" value="yes" name="filter_gif" <?php
echo $filters['gif'] ? 'checked' : '';
?>
>
gif
</label>
</td>
</tr>
<tr>
<td class="width33">
<label>
<input type="checkbox" value="yes" name="filter_jpeg" <?php
echo $filters['jpeg'] ? 'checked' : '';
?>
>
jpeg
</label>
//.........这里部分代码省略.........
示例14: configureBlock
//.........这里部分代码省略.........
</tr>
<tr>
<td class="facts_label">' . I18N::translate('Latest death year') . '</td>
<td class="facts_value" align="right">#lastDeathYear#</td>
<td class="facts_value">#lastDeath#</td>
</tr>
<tr>
<td class="facts_label">' . I18N::translate('Individual who lived the longest') . '</td>
<td class="facts_value" align="right">#longestLifeAge#</td>
<td class="facts_value">#longestLife#</td>
</tr>
<tr>
<td class="facts_label">' . I18N::translate('Average age at death') . '</td>
<td class="facts_value" align="right">#averageLifespan#</td>
<td class="facts_value"></td>
</tr>
<tr>
<td class="facts_label">' . I18N::translate('Family with the most children') . '</td>
<td class="facts_value" align="right">#largestFamilySize#</td>
<td class="facts_value">#largestFamily#</td>
</tr>
<tr>
<td class="facts_label">' . I18N::translate('Average number of children per family') . '</td>
<td class="facts_value" align="right">#averageChildren#</td>
<td class="facts_value"></td>
</tr>
</table>
</td>
</tr>
</table><br>
<span style="font-weight: bold;">' . I18N::translate('Most common surnames') . '</span><br>
#commonSurnames#
</div>');
$title = $this->getBlockSetting($block_id, 'title');
$html = $this->getBlockSetting($block_id, 'html');
$gedcom = $this->getBlockSetting($block_id, 'gedcom');
$show_timestamp = $this->getBlockSetting($block_id, 'show_timestamp', '0');
$languages = explode(',', $this->getBlockSetting($block_id, 'languages'));
echo '<tr><td class="descriptionbox wrap">', GedcomTag::getLabel('TITL'), '</td><td class="optionbox"><input type="text" name="title" size="30" value="', Filter::escapeHtml($title), '"></td></tr>';
// templates
echo '<tr><td class="descriptionbox wrap">', I18N::translate('Templates'), '</td><td class="optionbox wrap">';
// The CK editor needs lots of help to load/save data :-(
if (Module::getModuleByName('ckeditor')) {
$ckeditor_onchange = 'CKEDITOR.instances.html.setData(document.block.html.value);';
} else {
$ckeditor_onchange = '';
}
echo '<select name="template" onchange="document.block.html.value=document.block.template.options[document.block.template.selectedIndex].value;', $ckeditor_onchange, '">';
echo '<option value="', Filter::escapeHtml($html), '">', I18N::translate('Custom'), '</option>';
foreach ($templates as $title => $template) {
echo '<option value="', Filter::escapeHtml($template), '">', $title, '</option>';
}
echo '</select>';
if (!$html) {
echo '<p>', I18N::translate('To assist you in getting started with this block, we have created several standard templates. When you select one of these templates, the text area will contain a copy that you can then alter to suit your site’s requirements.'), '</p>';
}
echo '</td></tr>';
if (count(Tree::getAll()) > 1) {
if ($gedcom == '__current__') {
$sel_current = 'selected';
} else {
$sel_current = '';
}
if ($gedcom == '__default__') {
$sel_default = 'selected';
} else {
$sel_default = '';
}
echo '<tr><td class="descriptionbox wrap">', I18N::translate('Family tree'), '</td><td class="optionbox">', '<select name="gedcom">', '<option value="__current__" ', $sel_current, '>', I18N::translate('Current'), '</option>', '<option value="__default__" ', $sel_default, '>', I18N::translate('Default'), '</option>';
foreach (Tree::getAll() as $tree) {
if ($tree->getName() === $gedcom) {
$sel = 'selected';
} else {
$sel = '';
}
echo '<option value="', $tree->getNameHtml(), '" ', $sel, '>', $tree->getTitleHtml(), '</option>';
}
echo '</select>';
echo '</td></tr>';
}
// html
echo '<tr><td colspan="2" class="descriptionbox">', I18N::translate('Content');
if (!$html) {
echo '<p>', I18N::translate('As well as using the toolbar to apply HTML formatting, you can insert database fields which are updated automatically. These special fields are marked with <b>#</b> characters. For example <b>#totalFamilies#</b> will be replaced with the actual number of families in the database. Advanced users may wish to apply CSS classes to their text, so that the formatting matches the currently selected theme.'), '</p>';
}
echo '</td></tr><tr>', '<td colspan="2" class="optionbox">';
echo '<textarea name="html" class="html-edit" rows="10" style="width:98%;">', Filter::escapeHtml($html), '</textarea>';
echo '</td></tr>';
echo '<tr><td class="descriptionbox wrap">';
echo I18N::translate('Show the date and time of update');
echo '</td><td class="optionbox">';
echo FunctionsEdit::editFieldYesNo('show_timestamp', $show_timestamp);
echo '<input type="hidden" name="timestamp" value="', WT_TIMESTAMP, '">';
echo '</td></tr>';
echo '<tr><td class="descriptionbox wrap">';
echo I18N::translate('Show this block for which languages?');
echo '</td><td class="optionbox">';
echo FunctionsEdit::editLanguageCheckboxes('lang', $languages);
echo '</td></tr>';
}
示例15:
FunctionsEdit::addSimpleTag($subLevel . ' ' . $fact . ' ' . $event);
}
}
}
if ($sourceSOUR !== '') {
// Get rid of all saved Source data
FunctionsEdit::addSimpleTag($sourceLevel . ' SOUR ' . $sourceSOUR);
FunctionsEdit::addSimpleTag($sourceLevel + 1 . ' PAGE ' . $sourcePAGE);
FunctionsEdit::addSimpleTag($sourceLevel + 2 . ' TEXT ' . $sourceTEXT);
FunctionsEdit::addSimpleTag($sourceLevel + 2 . ' DATE ' . $sourceDATE, '', GedcomTag::getLabel('DATA:DATE'));
FunctionsEdit::addSimpleTag($sourceLevel + 1 . ' QUAY ' . $sourceQUAY);
}
}
if (Auth::isAdmin() && $action === 'update') {
echo '<tr><td class="descriptionbox wrap width25">';
echo GedcomTag::getLabel('CHAN'), '</td><td class="optionbox wrap">';
if ($NO_UPDATE_CHAN) {
echo '<input type="checkbox" checked name="preserve_last_changed">';
} else {
echo '<input type="checkbox" name="preserve_last_changed">';
}
echo I18N::translate('Keep the existing “last change” information'), '<br>';
echo '</td></tr>';
}
echo '</table>';
FunctionsEdit::printAddLayer('SOUR', 1);
FunctionsEdit::printAddLayer('NOTE', 1);
FunctionsEdit::printAddLayer('SHARED_NOTE', 1);
FunctionsEdit::printAddLayer('RESN', 1);
?>
<p id="save-cancel">