diff options
| -rw-r--r-- | addmedia.php | 52 | ||||
| -rw-r--r-- | app/Functions/FunctionsEdit.php | 307 | ||||
| -rwxr-xr-x | edit_interface.php | 44 |
3 files changed, 193 insertions, 210 deletions
diff --git a/addmedia.php b/addmedia.php index d33869639d..07b4235416 100644 --- a/addmedia.php +++ b/addmedia.php @@ -283,7 +283,7 @@ if ($gedfile == 'FILE') { $isExternal = Functions::isFileExternal($gedfile); if ($gedfile === 'FILE') { if (Auth::isManager($WT_TREE)) { - FunctionsEdit::addSimpleTag( + echo FunctionsEdit::addSimpleTag( '1 FILE', '', I18N::translate('Filename on server'), @@ -370,23 +370,7 @@ if (preg_match('/\n(2 FORM .*)/', $gedrec, $match)) { } else { $gedform = '2 FORM'; } -$formid = FunctionsEdit::addSimpleTag($gedform); - -// automatically set the format field from the filename -$controller->addInlineJavascript(' - function updateFormat(filename) { - var extsearch=/\.([a-zA-Z]{3,4})$/; - if (extsearch.exec(filename)) { - ext = RegExp.$1.toLowerCase(); - if (ext=="jpg") ext="jpeg"; - if (ext=="tif") ext="tiff"; - } else { - ext = ""; - } - formfield = document.getElementById("' . $formid . '"); - formfield.value = ext; - } -'); +echo FunctionsEdit::addSimpleTag($gedform); // 1 FILE / 2 FORM / 3 TYPE if (preg_match('/\n(3 TYPE .*)/', $gedrec, $match)) { @@ -394,7 +378,7 @@ if (preg_match('/\n(3 TYPE .*)/', $gedrec, $match)) { } else { $gedtype = '3 TYPE photo'; // default to ‘Photo’ } -FunctionsEdit::addSimpleTag($gedtype); +echo FunctionsEdit::addSimpleTag($gedtype); // 1 FILE / 2 TITL if (preg_match('/\n(2 TITL .*)/', $gedrec, $match)) { @@ -402,7 +386,7 @@ if (preg_match('/\n(2 TITL .*)/', $gedrec, $match)) { } else { $gedtitl = '2 TITL'; } -FunctionsEdit::addSimpleTag($gedtitl); +echo FunctionsEdit::addSimpleTag($gedtitl); // 1 FILE / 2 TITL / 3 _HEB if (strstr($WT_TREE->getPreference('ADVANCED_NAME_FACTS'), '_HEB') !== false) { @@ -411,7 +395,7 @@ if (strstr($WT_TREE->getPreference('ADVANCED_NAME_FACTS'), '_HEB') !== false) { } else { $gedtitl = '3 _HEB'; } - FunctionsEdit::addSimpleTag($gedtitl); + echo FunctionsEdit::addSimpleTag($gedtitl); } // 1 FILE / 2 TITL / 3 ROMN @@ -421,7 +405,7 @@ if (strstr($WT_TREE->getPreference('ADVANCED_NAME_FACTS'), 'ROMN') !== false) { } else { $gedtitl = '3 ROMN'; } - FunctionsEdit::addSimpleTag($gedtitl); + echo FunctionsEdit::addSimpleTag($gedtitl); } // 1 _PRIM @@ -430,7 +414,7 @@ if (preg_match('/\n(1 _PRIM .*)/', $gedrec, $match)) { } else { $gedprim = '1 _PRIM'; } -FunctionsEdit::addSimpleTag($gedprim); +echo FunctionsEdit::addSimpleTag($gedprim); //-- print out editing fields for any other data in the media record $sourceLevel = 0; @@ -456,11 +440,11 @@ if (!empty($gedrec)) { } if ($sourceSOUR !== '' && $subLevel <= $sourceLevel) { // 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); + echo FunctionsEdit::addSimpleTag($sourceLevel . ' SOUR ' . $sourceSOUR); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 1) . ' PAGE ' . $sourcePAGE); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 2) . ' TEXT ' . $sourceTEXT); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 2) . ' DATE ' . $sourceDATE, '', GedcomTag::getLabel('DATA:DATE')); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 1) . ' QUAY ' . $sourceQUAY); $sourceSOUR = ''; } @@ -497,18 +481,18 @@ if (!empty($gedrec)) { // Output anything that isn’t part of a source reference if (!empty($fact) && $fact !== 'CONC' && $fact !== 'CONT' && $fact !== 'DATA') { - FunctionsEdit::addSimpleTag($subLevel . ' ' . $fact . ' ' . $event); + echo 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); + echo FunctionsEdit::addSimpleTag($sourceLevel . ' SOUR ' . $sourceSOUR); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 1) . ' PAGE ' . $sourcePAGE); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 2) . ' TEXT ' . $sourceTEXT); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 2) . ' DATE ' . $sourceDATE, '', GedcomTag::getLabel('DATA:DATE')); + echo FunctionsEdit::addSimpleTag(($sourceLevel + 1) . ' QUAY ' . $sourceQUAY); } } echo '</table>'; diff --git a/app/Functions/FunctionsEdit.php b/app/Functions/FunctionsEdit.php index e11e08c4aa..ea18bbb44b 100644 --- a/app/Functions/FunctionsEdit.php +++ b/app/Functions/FunctionsEdit.php @@ -616,16 +616,17 @@ class FunctionsEdit { break; } - echo '<div class="' . $row_class . '">'; - echo '<label class="col-sm-3 col-form-label" for="' . $id . '">'; + $html = ''; + $html .= '<div class="' . $row_class . '">'; + $html .= '<label class="col-sm-3 col-form-label" for="' . $id . '">'; // tag name if ($label) { - echo $label; + $html .= $label; } elseif ($upperlevel) { - echo GedcomTag::getLabel($upperlevel . ':' . $fact); + $html .= GedcomTag::getLabel($upperlevel . ':' . $fact); } else { - echo GedcomTag::getLabel($fact); + $html .= GedcomTag::getLabel($fact); } // If using GEDFact-assistant window @@ -636,26 +637,26 @@ class FunctionsEdit { switch ($fact) { case 'NAME': if ($upperlevel !== 'REPO' && $upperlevel !== 'UNKNOWN') { - echo FunctionsPrint::helpLink($fact); + $html .= FunctionsPrint::helpLink($fact); } break; case 'ROMN': case 'SURN': case '_HEB': - echo FunctionsPrint::helpLink($fact); + $html .= FunctionsPrint::helpLink($fact); break; } } // tag level if ($level !== '0') { - echo '<input type="hidden" name="glevels[]" value="', $level, '">'; - echo '<input type="hidden" name="islink[]" value="', $islink, '">'; - echo '<input type="hidden" name="tag[]" value="', $fact, '">'; + $html .= '<input type="hidden" name="glevels[]" value="' . $level . '">'; + $html .= '<input type="hidden" name="islink[]" value="' . $islink . '">'; + $html .= '<input type="hidden" name="tag[]" value="' . $fact . '">'; } - echo '</label>'; + $html .= '</label>'; // value - echo '<div class="col-sm-9">'; + $html .= '<div class="col-sm-9">'; // Show names for spouses in MARR/HUSB/AGE and MARR/WIFE/AGE if ($fact === 'HUSB' || $fact === 'WIFE') { @@ -665,17 +666,17 @@ class FunctionsEdit { if ($spouse_link) { $spouse = $spouse_link->getTarget(); if ($spouse) { - echo $spouse->getFullName(); + $html .= $spouse->getFullName(); } } } } if (in_array($fact, Config::emptyFacts()) && ($value === '' || $value === 'Y' || $value === 'y')) { - echo '<input type="hidden" id="', $id, '" name="', $name, '" value="', $value, '">'; + $html .= '<input type="hidden" id="' . $id . '" name="' . $name . '" value="' . $value . '">'; if ($fact === 'CENS' && $value === 'Y') { - echo self::censusDateSelector(WT_LOCALE, $xref); + $html .= self::censusDateSelector(WT_LOCALE, $xref); /** @var CensusAssistantModule $census_assistant */ $census_assistant = Module::getModuleByName('GEDFact_assistant'); @@ -685,165 +686,165 @@ class FunctionsEdit { } } } elseif ($fact === 'NPFX' || $fact === 'NSFX' || $fact === 'SPFX' || $fact === 'NICK') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" oninput="updatewholename()">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" oninput="updatewholename()">'; } elseif ($fact === 'GIVN') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" data-autocomplete-type="GIVN" oninput="updatewholename()" autofocus>'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" data-autocomplete-type="GIVN" oninput="updatewholename()" autofocus>'; } elseif ($fact === 'SURN' || $fact === '_MARNM_SURN') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" data-autocomplete-type="SURN" oninput="updatewholename()">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" data-autocomplete-type="SURN" oninput="updatewholename()">'; } elseif ($fact === 'ADOP') { - echo Bootstrap4::select(GedcomCodeAdop::getValues($person), $value, ['id' => $id, 'name' => $name]); + $html .= Bootstrap4::select(GedcomCodeAdop::getValues($person), $value, ['id' => $id, 'name' => $name]); } elseif ($fact === 'ALIA') { - echo self::formControlIndividual(Individual::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]); + $html .= self::formControlIndividual(Individual::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]); } elseif ($fact === 'ASSO' || $fact === '_ASSO') { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" onclick="createNewRecord(' . $id . ')" title="' . I18N::translate('Create an individual') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlIndividual(Individual::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; if ($level === '1') { - echo '<p class="small text-muted">' . I18N::translate('An associate is another individual who was involved with this individual, such as a friend or an employer.') . '</p>'; + $html .= '<p class="small text-muted">' . I18N::translate('An associate is another individual who was involved with this individual, such as a friend or an employer.') . '</p>'; } else { - echo '<p class="small text-muted">' . I18N::translate('An associate is another individual who was involved with this fact or event, such as a witness or a priest.') . '</p>'; + $html .= '<p class="small text-muted">' . I18N::translate('An associate is another individual who was involved with this fact or event, such as a witness or a priest.') . '</p>'; } } elseif ($fact === 'DATE') { - echo '<div class="input-group">'; - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" oninput="valid_date(this)">'; - echo self::inputAddonCalendar($id); - echo self::inputAddonHelp('DATE'); - echo '</div>'; - echo '<div id="caldiv' . $id . '" style="position:absolute;visibility:hidden;background-color:white;z-index:1000"></div>'; - echo '<p class="text-muted">' . (new Date($value))->display() . '</p>'; + $html .= '<div class="input-group">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" oninput="valid_date(this)">'; + $html .= self::inputAddonCalendar($id); + $html .= self::inputAddonHelp('DATE'); + $html .= '</div>'; + $html .= '<div id="caldiv' . $id . '" style="position:absolute;visibility:hidden;background-color:white;z-index:1000"></div>'; + $html .= '<p class="text-muted">' . (new Date($value))->display() . '</p>'; } elseif ($fact === 'FAMC') { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" data-toggle="modal" data-target="#modal-create-family" data-element-id="' . $id . '" title="' . I18N::translate('Create a family') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlFamily(Family::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; } elseif ($fact === 'LATI') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" oninput="valid_lati_long(this, \'N\', \'S\')">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" oninput="valid_lati_long(this, \'N\', \'S\')">'; } elseif ($fact === 'LONG') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" oninput="valid_lati_long(this, \'E\', \'W\')">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" oninput="valid_lati_long(this, \'E\', \'W\')">'; } elseif ($fact === 'NOTE' && $islink) { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" data-toggle="modal" data-target="#modal-create-note-object" data-element-id="' . $id . '" title="' . I18N::translate('Create a shared note') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlNote(Note::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; } elseif ($fact === 'OBJE') { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" data-toggle="modal" data-target="#modal-create-media-object" data-element-id="' . $id . '" title="' . I18N::translate('Create a media object') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlMediaObject(Media::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; } elseif ($fact === 'PAGE') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" data-autocomplete-type="PAGE" data-autocomplete-extra="#' . $previous_ids['SOUR'] . '">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" data-autocomplete-type="PAGE" data-autocomplete-extra="#' . $previous_ids['SOUR'] . '">'; } elseif ($fact === 'PEDI') { - echo Bootstrap4::select(GedcomCodePedi::getValues($person), $value, ['id' => $id, 'name' => $name]); + $html .= Bootstrap4::select(GedcomCodePedi::getValues($person), $value, ['id' => $id, 'name' => $name]); } elseif ($fact === 'PLAC') { - echo '<div class="input-group">'; - echo self::formControlPlace($value, ['id' => $id, 'name' => $name]); - echo '<span class="input-group-addon">' . FontAwesome::linkIcon('coordinates', I18N::translate('Latitude') . ' / ' . I18N::translate('Longitude'), ['data-toggle' => 'collapse', 'data-target' => '.child_of_' . $id]) . '</span>'; - echo self::inputAddonHelp('PLAC'); - echo '</div>'; + $html .= '<div class="input-group">'; + $html .= self::formControlPlace($value, ['id' => $id, 'name' => $name]); + $html .= '<span class="input-group-addon">' . FontAwesome::linkIcon('coordinates', I18N::translate('Latitude') . ' / ' . I18N::translate('Longitude'), ['data-toggle' => 'collapse', 'data-target' => '.child_of_' . $id]) . '</span>'; + $html .= self::inputAddonHelp('PLAC'); + $html .= '</div>'; if (Module::getModuleByName('places_assistant')) { \PlacesAssistantModule::setup_place_subfields($id); \PlacesAssistantModule::print_place_subfields($id); } } elseif ($fact === 'QUAY') { - echo Bootstrap4::select(GedcomCodeQuay::getValues(), $value, ['id' => $id, 'name' => $name]); + $html .= Bootstrap4::select(GedcomCodeQuay::getValues(), $value, ['id' => $id, 'name' => $name]); } elseif ($fact === 'RELA') { - echo Bootstrap4::select(FunctionsEdit::optionsRelationships($value), $value, ['id' => $id, 'name' => $name]); + $html .= Bootstrap4::select(FunctionsEdit::optionsRelationships($value), $value, ['id' => $id, 'name' => $name]); } elseif ($fact === 'REPO') { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" data-toggle="modal" data-target="#modal-create-repository" data-element-id="' . $id . '" title="' . I18N::translate('Create a repository') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlRepository(Individual::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; } elseif ($fact === 'RESN') { - echo '<div class="input-group">'; - echo Bootstrap4::select(FunctionsEdit::optionsRestrictions(true), $value, ['id' => $id, 'name' => $name]); - echo self::inputAddonHelp('RESN'); - echo '</span>'; - echo '</div>'; + $html .= '<div class="input-group">'; + $html .= Bootstrap4::select(FunctionsEdit::optionsRestrictions(true), $value, ['id' => $id, 'name' => $name]); + $html .= self::inputAddonHelp('RESN'); + $html .= '</span>'; + $html .= '</div>'; } elseif ($fact === 'SEX') { - echo Bootstrap4::radioButtons($name, ['M' => I18N::translate('Male'), 'F' => I18N::translate('Female'), 'U' => I18N::translateContext('unknown gender', 'Unknown')], $value, true); + $html .= Bootstrap4::radioButtons($name, ['M' => I18N::translate('Male'), 'F' => I18N::translate('Female'), 'U' => I18N::translateContext('unknown gender', 'Unknown')], $value, true); } elseif ($fact === 'SOUR') { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" data-toggle="modal" data-target="#modal-create-source" data-element-id="' . $id . '" title="' . I18N::translate('Create a source') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlSource(Source::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; } elseif ($fact === 'STAT') { - echo Bootstrap4::select(GedcomCodeStat::statusNames($upperlevel), $value); + $html .= Bootstrap4::select(GedcomCodeStat::statusNames($upperlevel), $value); } elseif ($fact === 'SUBM') { - echo + $html .= '<div class="input-group">' . '<span class="input-group-btn"><button class="btn btn-secondary" type="button" data-toggle="modal" data-target="#modal-create-submitter" data-element-id="' . $id . '" title="' . I18N::translate('Create a submitter') . '"><i class="fa fa-plus"></i></button></span>' . self::formControlSubmitter(GedcomRecord::getInstance($value, $WT_TREE), ['id' => $id, 'name' => $name]) . '</div>'; } elseif ($fact === 'TEMP') { - echo Bootstrap4::select(FunctionsEdit::optionsTemples(), $value, ['id' => $id, 'name' => $name]); + $html .= Bootstrap4::select(FunctionsEdit::optionsTemples(), $value, ['id' => $id, 'name' => $name]); } elseif ($fact === 'TIME') { - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '" pattern="([0-1][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9])?" dir="ltr" placeholder="' . /* I18N: Examples of valid time formats (hours:minutes:seconds) */ I18N::translate('hh:mm or hh:mm:ss') . '">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '" pattern="([0-1][0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9])?" dir="ltr" placeholder="' . /* I18N: Examples of valid time formats (hours:minutes:seconds) */ I18N::translate('hh:mm or hh:mm:ss') . '">'; } elseif ($fact === '_WT_USER') { - echo Bootstrap4::select(FunctionsEdit::optionsUsers(), $value, ['id' => $id, 'name' => $name]); + $html .= Bootstrap4::select(FunctionsEdit::optionsUsers(), $value, ['id' => $id, 'name' => $name]); } elseif ($fact === '_PRIM') { - echo Bootstrap4::select(['' => '', 'Y' => I18N::translate('always'), 'N' => I18N::translate('never')], $value, ['id' => $id, 'name' => $name]); - echo '<p class="small text-muted">', I18N::translate('Use this image for charts and on the individual’s page.'), '</p>'; + $html .= Bootstrap4::select(['' => '', 'Y' => I18N::translate('always'), 'N' => I18N::translate('never')], $value, ['id' => $id, 'name' => $name]); + $html .= '<p class="small text-muted">' . I18N::translate('Use this image for charts and on the individual’s page.') . '</p>'; } elseif ($fact === 'TYPE' && $level === '3') { //-- Build the selector for the Media 'TYPE' Fact - echo '<select name="text[]"><option selected value="" ></option>'; + $html .= '<select name="text[]"><option selected value="" ></option>'; $selectedValue = strtolower($value); if (!array_key_exists($selectedValue, GedcomTag::getFileFormTypes())) { - echo '<option selected value="', Html::escape($value), '" >', Html::escape($value), '</option>'; + $html .= '<option selected value="' . Html::escape($value) . '" >' . Html::escape($value) . '</option>'; } foreach (GedcomTag::getFileFormTypes() as $typeName => $typeValue) { - echo '<option value="', $typeName, '" '; + $html .= '<option value="' . $typeName . '" '; if ($selectedValue === $typeName) { - echo 'selected'; + $html .= 'selected'; } - echo '>', $typeValue, '</option>'; + $html .= '>' . $typeValue . '</option>'; } - echo '</select>'; + $html .= '</select>'; } elseif (($fact !== 'NAME' || $upperlevel === 'REPO' || $upperlevel === 'UNKNOWN') && $fact !== '_MARNM') { if ($fact === 'TEXT' || $fact === 'ADDR' || ($fact === 'NOTE' && !$islink)) { - echo '<div class="input-group">'; - echo '<textarea class="form-control" id="', $id, '" name="', $name, '" dir="auto">', Html::escape($value), '</textarea>'; - echo self::inputAddonKeyboard($id); - echo '</div>'; + $html .= '<div class="input-group">'; + $html .= '<textarea class="form-control" id="' . $id . '" name="' . $name . '" dir="auto">' . Html::escape($value) . '</textarea>'; + $html .= self::inputAddonKeyboard($id); + $html .= '</div>'; } else { // If using GEDFact-assistant window - echo '<input class="form-control" type="text" id="', $id, '" name="', $name, '" value="', Html::escape($value), '">'; + $html .= '<input class="form-control" type="text" id="' . $id . '" name="' . $name . '" value="' . Html::escape($value) . '">'; } } else { // Populated in javascript from sub-tags - echo '<input type="hidden" id="', $id, '" name="', $name, '" oninput="updateTextName(\'', $id, '\')" value="', Html::escape($value), '" class="', $fact, '">'; - echo '<span id="', $id, '_display" dir="auto">', Html::escape($value), '</span>'; - echo ' <a href="#edit_name" onclick="convertHidden(\'', $id, '\'); return false" class="icon-edit_indi" title="' . I18N::translate('Edit the name') . '"></a>'; + $html .= '<input type="hidden" id="' . $id . '" name="' . $name . '" oninput="updateTextName(\'' . $id . '\')" value="' . Html::escape($value) . '" class="' . $fact . '">'; + $html .= '<span id="' . $id . '_display" dir="auto">' . Html::escape($value) . '</span>'; + $html .= ' <a href="#edit_name" onclick="convertHidden(\'' . $id . '\'); return false" class="icon-edit_indi" title="' . I18N::translate('Edit the name') . '"></a>'; } // MARRiage TYPE : hide text field and show a selection list if ($fact === 'TYPE' && $level === '2' && $tags[0] === 'MARR') { - echo '<script>'; - echo 'document.getElementById(\'', $id, '\').style.display=\'none\''; - echo '</script>'; - echo '<select id="', $id, '_sel" oninput="document.getElementById(\'', $id, '\').value=this.value" >'; + $html .= '<script>'; + $html .= 'document.getElementById(\'' . $id . '\').style.display=\'none\''; + $html .= '</script>'; + $html .= '<select id="' . $id . '_sel" oninput="document.getElementById(\'' . $id . '\').value=this.value" >'; foreach (['Unknown', 'Civil', 'Religious', 'Partners'] as $key) { if ($key === 'Unknown') { - echo '<option value="" '; + $html .= '<option value="" '; } else { - echo '<option value="', $key, '" '; + $html .= '<option value="' . $key . '" '; } $a = strtolower($key); $b = strtolower($value); if ($b !== '' && strpos($a, $b) !== false || strpos($b, $a) !== false) { - echo 'selected'; + $html .= 'selected'; } - echo '>', GedcomTag::getLabel('MARR_' . strtoupper($key)), '</option>'; + $html .= '>' . GedcomTag::getLabel('MARR_' . strtoupper($key)) . '</option>'; } - echo '</select>'; + $html .= '</select>'; } elseif ($fact === 'TYPE' && $level === 0) { // NAME TYPE : hide text field and show a selection list - echo Bootstrap4::select(GedcomCodeName::getValues($person), $value, ['id' => $id, 'name' => $name, 'oninput' => 'document.getElementById(\'' . $id . '\').value=this.value"']); - echo '<script>document.getElementById("', $id, '").style.display="none";</script>'; + $html .= Bootstrap4::select(GedcomCodeName::getValues($person), $value, ['id' => $id, 'name' => $name, 'oninput' => 'document.getElementById(\'' . $id . '\').value=this.value"']); + $html .= '<script>document.getElementById("' . $id . '").style.display="none";</script>'; } // popup links @@ -851,7 +852,7 @@ class FunctionsEdit { case 'SOUR': //-- checkboxes to apply '1 SOUR' to BIRT/MARR/DEAT as '2 SOUR' if ($level === '1') { - echo '<br>'; + $html .= '<br>'; switch ($WT_TREE->getPreference('PREFER_LEVEL2_SOURCES')) { case '2': // records $level1_checked = 'checked'; @@ -868,11 +869,11 @@ class FunctionsEdit { break; } if (strpos($bdm, 'B') !== false) { - echo ' <label><input type="checkbox" name="SOUR_INDI" ', $level1_checked, ' value="1">', I18N::translate('Individual'), '</label>'; + $html .= ' <label><input type="checkbox" name="SOUR_INDI" ' . $level1_checked . ' value="1">' . I18N::translate('Individual') . '</label>'; if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('QUICK_REQUIRED_FACTS'), $matches)) { foreach ($matches[1] as $match) { if (!in_array($match, explode('|', WT_EVENTS_DEAT))) { - echo ' <label><input type="checkbox" name="SOUR_', $match, '" ', $level2_checked, ' value="1">', GedcomTag::getLabel($match), '</label>'; + $html .= ' <label><input type="checkbox" name="SOUR_' . $match . '" ' . $level2_checked . ' value="1">' . GedcomTag::getLabel($match) . '</label>'; } } } @@ -881,16 +882,16 @@ class FunctionsEdit { if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('QUICK_REQUIRED_FACTS'), $matches)) { foreach ($matches[1] as $match) { if (in_array($match, explode('|', WT_EVENTS_DEAT))) { - echo ' <label><input type="checkbox" name="SOUR_', $match, '"', $level2_checked, ' value="1">', GedcomTag::getLabel($match), '</label>'; + $html .= ' <label><input type="checkbox" name="SOUR_' . $match . '"' . $level2_checked . ' value="1">' . GedcomTag::getLabel($match) . '</label>'; } } } } if (strpos($bdm, 'M') !== false) { - echo ' <label><input type="checkbox" name="SOUR_FAM" ', $level1_checked, ' value="1">', I18N::translate('Family'), '</label>'; + $html .= ' <label><input type="checkbox" name="SOUR_FAM" ' . $level1_checked . ' value="1">' . I18N::translate('Family') . '</label>'; if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('QUICK_REQUIRED_FAMFACTS'), $matches)) { foreach ($matches[1] as $match) { - echo ' <label><input type="checkbox" name="SOUR_', $match, '"', $level2_checked, ' value="1">', GedcomTag::getLabel($match), '</label>'; + $html .= ' <label><input type="checkbox" name="SOUR_' . $match . '"' . $level2_checked . ' value="1">' . GedcomTag::getLabel($match) . '</label>'; } } } @@ -898,15 +899,15 @@ class FunctionsEdit { break; } - echo '<div id="' . $id . '_description">'; + $html .= '<div id="' . $id . '_description">'; // pastable values if ($fact === 'FORM' && $upperlevel === 'OBJE') { FunctionsPrint::printAutoPasteLink($id, Config::fileFormats()); } - echo '</div>', $extra, '</div></div>'; + $html .= '</div>' . $extra . '</div></div>'; - return $id; + return $html; } /** @@ -994,47 +995,47 @@ class FunctionsEdit { switch ($tag) { case 'SOUR': echo '<h3>', I18N::translate('Add a source citation'), '</h3>'; - self::addSimpleTag($level . ' SOUR @'); - self::addSimpleTag(($level + 1) . ' PAGE'); - self::addSimpleTag(($level + 1) . ' DATA'); - self::addSimpleTag(($level + 2) . ' TEXT'); + echo self::addSimpleTag($level . ' SOUR @'); + echo self::addSimpleTag(($level + 1) . ' PAGE'); + echo self::addSimpleTag(($level + 1) . ' DATA'); + echo self::addSimpleTag(($level + 2) . ' TEXT'); if ($WT_TREE->getPreference('FULL_SOURCES')) { - self::addSimpleTag(($level + 2) . ' DATE', '', GedcomTag::getLabel('DATA:DATE')); - self::addSimpleTag(($level + 1) . ' QUAY'); + echo self::addSimpleTag(($level + 2) . ' DATE', '', GedcomTag::getLabel('DATA:DATE')); + echo self::addSimpleTag(($level + 1) . ' QUAY'); } - self::addSimpleTag(($level + 1) . ' OBJE'); - self::addSimpleTag(($level + 1) . ' SHARED_NOTE'); + echo self::addSimpleTag(($level + 1) . ' OBJE'); + echo self::addSimpleTag(($level + 1) . ' SHARED_NOTE'); break; case 'ASSO': case 'ASSO2': echo '<h3>', I18N::translate('Add an associate'), '</h3>'; - self::addSimpleTag($level . ' _ASSO @'); - self::addSimpleTag(($level + 1) . ' RELA'); - self::addSimpleTag(($level + 1) . ' NOTE'); - self::addSimpleTag(($level + 1) . ' SHARED_NOTE'); + echo self::addSimpleTag($level . ' _ASSO @'); + echo self::addSimpleTag(($level + 1) . ' RELA'); + echo self::addSimpleTag(($level + 1) . ' NOTE'); + echo self::addSimpleTag(($level + 1) . ' SHARED_NOTE'); break; case 'NOTE': echo '<h3>', I18N::translate('Add a note'), '</h3>'; - self::addSimpleTag($level . ' NOTE'); + echo self::addSimpleTag($level . ' NOTE'); break; case 'SHARED_NOTE': echo '<h3>', I18N::translate('Add a shared note'), '</h3>'; - self::addSimpleTag($level . ' SHARED_NOTE', $parent_tag); + echo self::addSimpleTag($level . ' SHARED_NOTE', $parent_tag); break; case 'OBJE': if ($WT_TREE->getPreference('MEDIA_UPLOAD') >= Auth::accessLevel($WT_TREE)) { echo '<h3>', I18N::translate('Add a media object'), '</h3>'; - self::addSimpleTag($level . ' OBJE'); + echo self::addSimpleTag($level . ' OBJE'); } break; case 'RESN': echo '<h3>', I18N::translate('Add a restriction'), '</h3>'; - self::addSimpleTag($level . ' RESN'); + echo self::addSimpleTag($level . ' RESN'); break; } } @@ -1049,26 +1050,26 @@ class FunctionsEdit { // For new individuals, these facts default to "Y" if ($fact === 'MARR') { - self::addSimpleTag('0 ' . $fact . ' Y'); + echo self::addSimpleTag('0 ' . $fact . ' Y'); } else { - self::addSimpleTag('0 ' . $fact); + echo self::addSimpleTag('0 ' . $fact); } if (!in_array($fact, Config::nonDateFacts())) { - self::addSimpleTag('0 DATE', $fact, GedcomTag::getLabel($fact . ':DATE')); + echo self::addSimpleTag('0 DATE', $fact, GedcomTag::getLabel($fact . ':DATE')); } if (!in_array($fact, Config::nonPlaceFacts())) { - self::addSimpleTag('0 PLAC', $fact, GedcomTag::getLabel($fact . ':PLAC')); + echo self::addSimpleTag('0 PLAC', $fact, GedcomTag::getLabel($fact . ':PLAC')); if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('ADVANCED_PLAC_FACTS'), $match)) { foreach ($match[1] as $tag) { - self::addSimpleTag('0 ' . $tag, $fact, GedcomTag::getLabel($fact . ':PLAC:' . $tag)); + echo self::addSimpleTag('0 ' . $tag, $fact, GedcomTag::getLabel($fact . ':PLAC:' . $tag)); } } - self::addSimpleTag('0 MAP', $fact); - self::addSimpleTag('0 LATI', $fact); - self::addSimpleTag('0 LONG', $fact); + echo self::addSimpleTag('0 MAP', $fact); + echo self::addSimpleTag('0 LATI', $fact); + echo self::addSimpleTag('0 LONG', $fact); } } @@ -1432,7 +1433,7 @@ class FunctionsEdit { // handle MARRiage TYPE if (substr($fact, 0, 5) === 'MARR_') { $tags[0] = 'MARR'; - self::addSimpleTag('1 MARR'); + echo self::addSimpleTag('1 MARR'); self::insertMissingSubtags($fact); } else { $tags[0] = $fact; @@ -1444,18 +1445,18 @@ class FunctionsEdit { $fact .= ' @'; } if (in_array($fact, Config::emptyFacts())) { - self::addSimpleTag('1 ' . $fact . ' Y'); + echo self::addSimpleTag('1 ' . $fact . ' Y'); } else { - self::addSimpleTag('1 ' . $fact); + echo self::addSimpleTag('1 ' . $fact); } self::insertMissingSubtags($tags[0]); //-- handle the special SOURce case for level 1 sources [ 1759246 ] if ($fact === 'SOUR') { - self::addSimpleTag('2 PAGE'); - self::addSimpleTag('3 TEXT'); + echo self::addSimpleTag('2 PAGE'); + echo self::addSimpleTag('3 TEXT'); if ($WT_TREE->getPreference('FULL_SOURCES')) { - self::addSimpleTag('3 DATE', '', GedcomTag::getLabel('DATA:DATE')); - self::addSimpleTag('2 QUAY'); + echo self::addSimpleTag('3 DATE', '', GedcomTag::getLabel('DATA:DATE')); + echo self::addSimpleTag('2 QUAY'); } } } @@ -1544,17 +1545,17 @@ class FunctionsEdit { $tags[] = $type; $subrecord = $level . ' ' . $type . ' ' . $text; if ($inSource && $type === 'DATE') { - self::addSimpleTag($subrecord, '', GedcomTag::getLabel($label, $record)); + echo self::addSimpleTag($subrecord, '', GedcomTag::getLabel($label, $record)); } elseif (!$inSource && $type === 'DATE') { - self::addSimpleTag($subrecord, $level1type, GedcomTag::getLabel($label, $record)); + echo self::addSimpleTag($subrecord, $level1type, GedcomTag::getLabel($label, $record)); if ($level === '2') { // We already have a date - no need to add one. $add_date = false; } } elseif ($type === 'STAT') { - self::addSimpleTag($subrecord, $level1type, GedcomTag::getLabel($label, $record)); + echo self::addSimpleTag($subrecord, $level1type, GedcomTag::getLabel($label, $record)); } else { - self::addSimpleTag($subrecord, $level0type, GedcomTag::getLabel($label, $record)); + echo self::addSimpleTag($subrecord, $level0type, GedcomTag::getLabel($label, $record)); } } @@ -1570,10 +1571,10 @@ class FunctionsEdit { if (!empty($expected_subtags[$type])) { foreach ($expected_subtags[$type] as $subtag) { if (!in_array($subtag, $subtags)) { - self::addSimpleTag(($level + 1) . ' ' . $subtag, '', GedcomTag::getLabel($label . ':' . $subtag)); + echo self::addSimpleTag(($level + 1) . ' ' . $subtag, '', GedcomTag::getLabel($label . ':' . $subtag)); if (!empty($expected_subtags[$subtag])) { foreach ($expected_subtags[$subtag] as $subsubtag) { - self::addSimpleTag(($level + 2) . ' ' . $subsubtag, '', GedcomTag::getLabel($label . ':' . $subtag . ':' . $subsubtag)); + echo self::addSimpleTag(($level + 2) . ' ' . $subsubtag, '', GedcomTag::getLabel($label . ':' . $subtag . ':' . $subsubtag)); } } } @@ -1624,76 +1625,76 @@ class FunctionsEdit { } if (in_array($level1tag, $value) && !in_array($key, $tags)) { if ($key === 'TYPE') { - self::addSimpleTag('2 TYPE ' . $type_val, $level1tag); + echo self::addSimpleTag('2 TYPE ' . $type_val, $level1tag); } elseif ($level1tag === '_TODO' && $key === 'DATE') { - self::addSimpleTag('2 ' . $key . ' ' . strtoupper(date('d M Y')), $level1tag); + echo self::addSimpleTag('2 ' . $key . ' ' . strtoupper(date('d M Y')), $level1tag); } elseif ($level1tag === '_TODO' && $key === '_WT_USER') { - self::addSimpleTag('2 ' . $key . ' ' . Auth::user()->getUserName(), $level1tag); + echo self::addSimpleTag('2 ' . $key . ' ' . Auth::user()->getUserName(), $level1tag); } elseif ($level1tag === 'TITL' && strstr($WT_TREE->getPreference('ADVANCED_NAME_FACTS'), $key) !== false) { - self::addSimpleTag('2 ' . $key, $level1tag); + echo self::addSimpleTag('2 ' . $key, $level1tag); } elseif ($level1tag === 'NAME' && strstr($WT_TREE->getPreference('ADVANCED_NAME_FACTS'), $key) !== false) { - self::addSimpleTag('2 ' . $key, $level1tag); + echo self::addSimpleTag('2 ' . $key, $level1tag); } elseif ($level1tag !== 'TITL' && $level1tag !== 'NAME') { - self::addSimpleTag('2 ' . $key, $level1tag); + echo self::addSimpleTag('2 ' . $key, $level1tag); } // Add level 3/4 tags as appropriate switch ($key) { case 'PLAC': if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('ADVANCED_PLAC_FACTS'), $match)) { foreach ($match[1] as $tag) { - self::addSimpleTag('3 ' . $tag, '', GedcomTag::getLabel($level1tag . ':PLAC:' . $tag)); + echo self::addSimpleTag('3 ' . $tag, '', GedcomTag::getLabel($level1tag . ':PLAC:' . $tag)); } } - self::addSimpleTag('3 MAP'); - self::addSimpleTag('4 LATI'); - self::addSimpleTag('4 LONG'); + echo self::addSimpleTag('3 MAP'); + echo self::addSimpleTag('4 LATI'); + echo self::addSimpleTag('4 LONG'); break; case 'FILE': - self::addSimpleTag('3 FORM'); + echo self::addSimpleTag('3 FORM'); break; case 'EVEN': - self::addSimpleTag('3 DATE'); - self::addSimpleTag('3 PLAC'); + echo self::addSimpleTag('3 DATE'); + echo self::addSimpleTag('3 PLAC'); break; case 'STAT': if (GedcomCodeTemp::isTagLDS($level1tag)) { - self::addSimpleTag('3 DATE', '', GedcomTag::getLabel('STAT:DATE')); + echo self::addSimpleTag('3 DATE', '', GedcomTag::getLabel('STAT:DATE')); } break; case 'DATE': // TIME is NOT a valid 5.5.1 tag if (in_array($level1tag, Config::dateAndTime())) { - self::addSimpleTag('3 TIME'); + echo self::addSimpleTag('3 TIME'); } break; case 'HUSB': case 'WIFE': - self::addSimpleTag('3 AGE'); + echo self::addSimpleTag('3 AGE'); break; case 'FAMC': if ($level1tag === 'ADOP') { - self::addSimpleTag('3 ADOP BOTH'); + echo self::addSimpleTag('3 ADOP BOTH'); } break; } } elseif ($key === 'DATE' && $add_date) { - self::addSimpleTag('2 DATE', $level1tag, GedcomTag::getLabel($level1tag . ':DATE')); + echo self::addSimpleTag('2 DATE', $level1tag, GedcomTag::getLabel($level1tag . ':DATE')); } } // Do something (anything!) with unrecognized custom tags if (substr($level1tag, 0, 1) === '_' && $level1tag !== '_UID' && $level1tag !== '_PRIM' && $level1tag !== '_TODO') { foreach (['DATE', 'PLAC', 'ADDR', 'AGNC', 'TYPE', 'AGE'] as $tag) { if (!in_array($tag, $tags)) { - self::addSimpleTag('2 ' . $tag); + echo self::addSimpleTag('2 ' . $tag); if ($tag === 'PLAC') { if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $WT_TREE->getPreference('ADVANCED_PLAC_FACTS'), $match)) { foreach ($match[1] as $ptag) { - self::addSimpleTag('3 ' . $ptag, '', GedcomTag::getLabel($level1tag . ':PLAC:' . $ptag)); + echo self::addSimpleTag('3 ' . $ptag, '', GedcomTag::getLabel($level1tag . ':PLAC:' . $ptag)); } } - self::addSimpleTag('3 MAP'); - self::addSimpleTag('4 LATI'); - self::addSimpleTag('4 LONG'); + echo self::addSimpleTag('3 MAP'); + echo self::addSimpleTag('4 LATI'); + echo self::addSimpleTag('4 LONG'); } } } diff --git a/edit_interface.php b/edit_interface.php index f62b8d560a..3f3b9a2253 100755 --- a/edit_interface.php +++ b/edit_interface.php @@ -1439,9 +1439,9 @@ case 'linkspouse': </div> </div> - <?php FunctionsEdit::addSimpleTag('0 MARR Y') ?> - <?php FunctionsEdit::addSimpleTag('0 DATE', 'MARR') ?> - <?php FunctionsEdit::addSimpleTag('0 PLAC', 'MARR') ?> + <?= FunctionsEdit::addSimpleTag('0 MARR Y') ?> + <?= FunctionsEdit::addSimpleTag('0 DATE', 'MARR') ?> + <?= FunctionsEdit::addSimpleTag('0 PLAC', 'MARR') ?> <div class="row form-group"> <div class="col-sm-9 offset-sm-3"> @@ -1606,11 +1606,9 @@ case 'addnewsource': ?> </select></td> </tr> - <?php - FunctionsEdit::addSimpleTag('0 DATE', 'EVEN'); - FunctionsEdit::addSimpleTag('0 PLAC', 'EVEN'); - FunctionsEdit::addSimpleTag('0 AGNC'); - ?> + <?= FunctionsEdit::addSimpleTag('0 DATE', 'EVEN') ?> + <?= FunctionsEdit::addSimpleTag('0 PLAC', 'EVEN') ?> + <?= FunctionsEdit::addSimpleTag('0 AGNC') ?> </table> </div> @@ -2960,13 +2958,13 @@ function print_indi_form($nextaction, Individual $person = null, Family $family case 'add_child_to_family_action': case 'add_child_to_individual_action': // When adding a new child, specify the pedigree - FunctionsEdit::addSimpleTag('0 PEDI'); + echo FunctionsEdit::addSimpleTag('0 PEDI'); break; } // First - standard name fields foreach ($name_fields as $tag => $value) { if (substr_compare($tag, '_', 0, 1) !== 0) { - FunctionsEdit::addSimpleTag('0 ' . $tag . ' ' . $value, '', '', null, $person); + echo FunctionsEdit::addSimpleTag('0 ' . $tag . ' ' . $value, '', '', null, $person); } } @@ -2989,18 +2987,18 @@ function print_indi_form($nextaction, Individual $person = null, Family $family // 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)); + echo 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])); + echo 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)); + echo FunctionsEdit::addSimpleTag('0 ' . $tag, '', GedcomTag::getLabel('NAME:' . $tag, $person)); if ($tag === '_MARNM') { - FunctionsEdit::addSimpleTag('0 _MARNM_SURN'); + echo FunctionsEdit::addSimpleTag('0 _MARNM_SURN'); } } } @@ -3008,10 +3006,10 @@ function print_indi_form($nextaction, Individual $person = null, Family $family // Third - new/existing custom name fields foreach ($name_fields as $tag => $value) { if (substr_compare($tag, '_', 0, 1) === 0) { - FunctionsEdit::addSimpleTag('0 ' . $tag . ' ' . $value); + echo FunctionsEdit::addSimpleTag('0 ' . $tag . ' ' . $value); if ($tag === '_MARNM') { preg_match_all('/\/([^\/]*)\//', $value, $matches); - FunctionsEdit::addSimpleTag('2 _MARNM_SURN ' . implode(',', $matches[1])); + echo FunctionsEdit::addSimpleTag('2 _MARNM_SURN ' . implode(',', $matches[1])); } } } @@ -3038,7 +3036,7 @@ function print_indi_form($nextaction, Individual $person = null, Family $family $text .= "\n" . $cmatch[1]; $i++; } - FunctionsEdit::addSimpleTag($level . ' ' . $type . ' ' . $text); + echo FunctionsEdit::addSimpleTag($level . ' ' . $type . ' ' . $text); } $tags[] = $type; $i++; @@ -3057,17 +3055,17 @@ function print_indi_form($nextaction, Individual $person = null, Family $family echo '</table><br><table class="table wt-facts-table">'; // 1 SEX if ($famtag === 'HUSB' || $gender === 'M') { - FunctionsEdit::addSimpleTag('0 SEX M'); + echo FunctionsEdit::addSimpleTag('0 SEX M'); } elseif ($famtag === 'WIFE' || $gender === 'F') { - FunctionsEdit::addSimpleTag('0 SEX F'); + echo FunctionsEdit::addSimpleTag('0 SEX F'); } else { - FunctionsEdit::addSimpleTag('0 SEX U'); + echo FunctionsEdit::addSimpleTag('0 SEX U'); } $bdm = 'BD'; if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $controller->tree()->getPreference('QUICK_REQUIRED_FACTS'), $matches)) { foreach ($matches[1] as $match) { if (!in_array($match, explode('|', WT_EVENTS_DEAT))) { - FunctionsEdit::addSimpleTags($match); + echo FunctionsEdit::addSimpleTags($match); } } } @@ -3076,14 +3074,14 @@ function print_indi_form($nextaction, Individual $person = null, Family $family $bdm .= 'M'; if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $controller->tree()->getPreference('QUICK_REQUIRED_FAMFACTS'), $matches)) { foreach ($matches[1] as $match) { - FunctionsEdit::addSimpleTags($match); + echo FunctionsEdit::addSimpleTags($match); } } } if (preg_match_all('/(' . WT_REGEX_TAG . ')/', $controller->tree()->getPreference('QUICK_REQUIRED_FACTS'), $matches)) { foreach ($matches[1] as $match) { if (in_array($match, explode('|', WT_EVENTS_DEAT))) { - FunctionsEdit::addSimpleTags($match); + echo FunctionsEdit::addSimpleTags($match); } } } |
