public static function getDocumentDisplayParams($doc_id) { if (!$doc_id) { return null; } $storeId = md5(__METHOD__ . "::$doc_id"); if (!isset(self::$cache[$storeId])) { $params = JUDownloadHelper::getParams(null, $doc_id); $global_display_params = $params->get('display_params'); $global_document_display_object = isset($global_display_params->doc) ? $global_display_params->doc : array(); $global_document_display_params = new JRegistry($global_document_display_object); $docObj = JUDownloadHelper::getDocumentById($doc_id); $document_params = $docObj->params; if ($document_params) { $document_params = json_decode($document_params); $document_display_params = $document_params->display_params; if ($document_display_params) { $global_document_display_params = JUDownloadFrontHelperField::mergeFieldOptions($global_document_display_params->toObject(), $document_display_params); unset($document_display_params->fields); foreach ($document_display_params AS $option => $value) { if ($value == '-2') { unset($document_display_params->$option); } } $global_document_display_params->loadObject($document_display_params); } } self::$cache[$storeId] = $global_document_display_params; } return self::$cache[$storeId]; }