/**
  * Adds the JS files necessary for search suggestions
  *
  * @access	protected
  *
  * @return	void
  */
 protected function addAutocompleteJS()
 {
     // Check if there are any metadata to suggest.
     $result = $GLOBALS['TYPO3_DB']->exec_SELECTquery('tx_dlf_metadata.*', 'tx_dlf_metadata', 'tx_dlf_metadata.autocomplete=1 AND tx_dlf_metadata.pid=' . intval($this->conf['pages']) . tx_dlf_helper::whereClause('tx_dlf_metadata'), '', '', '1');
     if ($GLOBALS['TYPO3_DB']->sql_num_rows($result)) {
         // Add javascript to page header.
         if (tx_dlf_helper::loadJQuery()) {
             $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId . '_search_suggest'] = '<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/search/tx_dlf_search_suggest.js"></script>';
         }
     } else {
         if (TYPO3_DLOG) {
             \TYPO3\CMS\Core\Utility\GeneralUtility::devLog('[tx_dlf_search->addAutocompleteJS()] No metadata fields configured for search suggestions', $this->extKey, SYSLOG_SEVERITY_WARNING);
         }
     }
 }
    /**
     * Adds Viewer javascript
     *
     * @access	protected
     *
     * @return	string		Viewer script tags ready for output
     */
    protected function addViewerJS()
    {
        $output = array();
        // Add jQuery library.
        tx_dlf_helper::loadJQuery();
        // Add OpenLayers library.
        $output[] = $this->addOpenLayersJS($fulltexts);
        // Add viewer library.
        $output[] = '
		<script type="text/javascript" src="' . t3lib_extMgm::siteRelPath($this->extKey) . 'plugins/pageview/tx_dlf_pageview.js"></script>';
        // Add viewer configuration.
        $output[] = '
		<script id="tx-dlf-pageview-initViewer" type="text/javascript">
			tx_dlf_viewer = new dlfViewer();
			tx_dlf_viewer.setDiv("' . $this->conf['elementId'] . '");
			tx_dlf_viewer.setLang("' . $this->lang . '");
			tx_dlf_viewer.addControls(["' . implode('", "', $this->controls) . '"]);
			tx_dlf_viewer.addImages(["' . implode('", "', $this->images) . '"]);
			tx_dlf_viewer.addFulltexts(["' . implode('", "', $this->fulltexts) . '"]);
		</script>';
        return implode("\n", $output);
    }
 /**
  * Adds the JS files necessary for search form
  *
  * @access	protected
  *
  * @return	void
  */
 protected function addSearchFormJS()
 {
     // Add javascript to page header.
     if (tx_dlf_helper::loadJQuery()) {
         $GLOBALS['TSFE']->additionalHeaderData[$this->prefixId . '_sru'] = '<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/sru/tx_dfgviewer_sru.js"></script>';
     }
 }
    /**
     * Adds Viewer javascript
     *
     * @access	protected
     *
     * @return	string		Viewer script tags ready for output
     */
    protected function addViewerJS()
    {
        $output = array();
        // Add jQuery library.
        tx_dlf_helper::loadJQuery();
        // Add OpenLayers library.
        $output[] = $this->addOpenLayersJS();
        // Add viewer library.
        $output[] = '
		<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/pageview/tx_dlf_utils.js"></script>
		<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/pageview/tx_dlf_ol3.js"></script>
		<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/pageview/tx_dlf_pageview_imagemanipulation_control.js"></script>
		<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/pageview/tx_dlf_pageview_fulltext_control.js"></script>
		<script type="text/javascript" src="' . \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::siteRelPath($this->extKey) . 'plugins/pageview/tx_dlf_pageview.js"></script>';
        // Add viewer configuration.
        $output[] = '
		<script id="tx-dlf-pageview-initViewer" type="text/javascript">
			window.onload = function() {
				if (dlfUtils.exists(dlfViewer)) {
					tx_dlf_viewer = new dlfViewer({
						controls: ["' . implode('", "', $this->controls) . '"],
						div: "' . $this->conf['elementId'] . '",
						fulltexts: ["' . implode('", "', $this->fulltexts) . '"],
						images: ["' . implode('", "', $this->images) . '"]
					})
				}
			}
		</script>';
        return implode("\n", $output);
    }