Ip\Internal\PageAssets::generateJavascript PHP Method

generateJavascript() public method

public generateJavascript ( )
    public function generateJavascript()
    {
        $cacheVersion = $this->getCacheVersion();
        $javascriptFiles = $this->getJavascript();
        $javascriptFilesSorted = array();
        foreach ($javascriptFiles as $level) {
            foreach ($level as &$file) {
                if ($file['type'] == 'file' && $file['cacheFix']) {
                    $file['value'] .= (strpos($file['value'], '?') !== false ? '&' : '?') . $cacheVersion;
                }
            }
            $javascriptFilesSorted = array_merge($javascriptFilesSorted, $level);
        }
        $revision = $this->getCurrentRevision();
        $page = ipContent()->getCurrentPage();
        $javascriptFilesSorted = ipFilter('ipJs', $javascriptFilesSorted);
        $language = ipContent()->getCurrentLanguage();
        $data = array('ip' => array('baseUrl' => ipConfig()->baseUrl(), 'safeMode' => \Ip\Internal\Admin\Service::isSafeMode(), 'languageId' => $language->getId(), 'languageUrl' => $language->getLink(), 'languageCode' => $language->getCode(), 'languageTextDirection' => $language->getTextDirection(), 'theme' => ipConfig()->theme(), 'pageId' => $page ? $page->getId() : null, 'revisionId' => $revision['revisionId'], 'securityToken' => \Ip\ServiceLocator::application()->getSecurityToken(), 'developmentEnvironment' => ipConfig()->isDevelopmentEnvironment(), 'debugMode' => ipconfig()->isDebugMode(), 'isManagementState' => ipIsManagementState(), 'isAdminState' => ipAdminId() ? 1 : 0, 'isAdminNavbarDisabled' => ipRequest()->getQuery('disableAdminNavbar') ? 1 : 0, 'gmapsApiKey' => ipGetOption('Config.gmapsApiKey')), 'javascriptVariables' => $this->getJavascriptVariables(), 'javascript' => $javascriptFilesSorted);
        $javascript = ipView('Ip/Internal/Config/view/javascript.php', $data)->render();
        $javascript = ipFilter('ipJavaScript', $javascript);
        return $javascript;
    }