restrictAccess(Auth::isEditor()) ->setPageTitle(WT_I18N::translate('Link to an existing media object')) ->addExternalJavascript(WT_STATIC_URL . 'js/autocomplete.js') ->addInlineJavascript('autocomplete();') ->pageHeader(); //-- page parameters and checking $linktoid = WT_Filter::get('linktoid', WT_REGEX_XREF); $mediaid = WT_Filter::get('mediaid', WT_REGEX_XREF); $linkto = WT_Filter::get('linkto', 'person|source|family|manage|repository|note'); $action = WT_Filter::get('action', 'choose|update', 'choose'); // If GedFAct_assistant/_MEDIA/ installed ====================== if ($linkto=='manage' && array_key_exists('GEDFact_assistant', WT_Module::getActiveModules())) { require WT_ROOT.WT_MODULES_DIR.'GEDFact_assistant/_MEDIA/media_0_inverselink.php'; } else { //-- check for admin $paramok = true; if (!empty($linktoid)) $paramok = WT_GedcomRecord::getInstance($linktoid)->canShow(); if ($action == "choose" && $paramok) { echo '
'; echo ''; if (!empty($mediaid)) { echo ''; } if (!empty($linktoid)) { echo ''; } echo ''; echo ''; echo ''; echo ''; echo '"; } if (!isset($linktoid)) $linktoid = ""; echo '"; echo ''; echo '"; echo '"; echo '"; echo ''; echo ''; echo '
'; echo WT_I18N::translate('Link to an existing media object'); echo '
', WT_I18N::translate('Media'), ''; if (!empty($mediaid)) { //-- Get the title of this existing Media item $title= WT_DB::prepare("SELECT m_titl FROM `##media` where m_id=? AND m_file=?") ->execute(array($mediaid, WT_GED_ID)) ->fetchOne(); if ($title) { echo '', WT_Filter::escapeHtml($title), ''; } else { echo '', $mediaid, ''; } } else { echo ''; echo ' ', print_findmedia_link('mediaid', '1media'); echo "
'; if ($linkto == "person") { echo WT_I18N::translate('Individual'), "'; if ($linktoid=="") { echo ' '; echo print_findindi_link('linktopid'); } else { $record=WT_Individual::getInstance($linktoid); echo $record->format_list('span', false, $record->getFullName()); } } if ($linkto == "family") { echo WT_I18N::translate('Family'), ''; if ($linktoid=="") { echo ' '; echo print_findfamily_link('linktofamid'); } else { $record=WT_Family::getInstance($linktoid); echo $record->format_list('span', false, $record->getFullName()); } } if ($linkto == "source") { echo WT_I18N::translate('Source'), "'; if ($linktoid=="") { echo ' '; echo print_findsource_link('linktosid'); } else { $record=WT_Source::getInstance($linktoid); echo $record->format_list('span', false, $record->getFullName()); } } if ($linkto == "repository") { echo WT_I18N::translate('Repository'), "'; if ($linktoid=="") { echo ''; } else { $record=WT_Repository::getInstance($linktoid); echo $record->format_list('span', false, $record->getFullName()); } } if ($linkto == "note") { echo WT_I18N::translate('Shared note'), "'; if ($linktoid=="") { echo ''; } else { $record=WT_Note::getInstance($linktoid); echo $record->format_list('span', false, $record->getFullName()); } } echo '
'; echo '
'; } elseif ($action == "update" && $paramok) { $record = WT_GedcomRecord::getInstance($linktoid); $record->createFact('1 OBJE @' . $mediaid . '@', true); $controller->addInlineJavascript('closePopupAndReloadParent();'); } echo ''; }