Открытие прикрепленного файла pdf в новом окне.

Аватар пользователя Olips Olips 22 августа 2016 в 20:54

Здравствуйте. Возникла проблема открытие прикрепленного файла pdf в новом окне. Нашел на форуме: http://www.drupal.ru/node/103474. Сделал как написано, поменяв название темы. Не хочет, сволочь, в новом окне открываться!!!
http://izoplast.biz/izolyatory-dlya-zheleznyh-dorog/izolyatory-peremenno...
Подскажите, что не так делаю? Спасибо

Комментарии

Аватар пользователя Olips Olips 23 августа 2016 в 15:31

function clean_corporate_theme_file_link($file) {
// Views may call this function with a NULL value, return an empty string.
if (empty($file['fid'])) {
return '';
}

$path = $file['filepath'];
$url = file_create_url($path);
$icon = theme('filefield_icon', $file);

// Set options as per anchor format described at
$options = array(
'attributes' => array(
'type' => $file['filemime'] . '; length=' . $file['filesize'],
),
);

// Use the description as the link text if available.
if (empty($file['data']['description'])) {
$link_text = $file['filename'];
}
else {
$link_text = $file['data']['description'];
$options['attributes']['title'] = $file['filename'];
}

//open files of particular mime types in new window
$new_window_mimetypes = array(
'application/pdf',
'text/plain'
);
if (in_array($file['filemime'], $new_window_mimetypes)) {
$options['attributes']['target'] = '_blank';
}

return ''. $icon . l($link_text, $url, $options) .'';
}

Аватар пользователя sergeybelya sergeybelya 23 августа 2016 в 15:41

В семерке переменная $file в данной функции является объектом, а у вас - массивом. Даже не пойму, откуда вы код-то взяли?

Аватар пользователя Olips Olips 23 августа 2016 в 16:09

sergeybelya wrote:

Ну так вы совсем не тот код вставили, такое впечатление что для шестерки. Сравните с https://api.drupal.org/api/drupal/modules!file!file.module/function/theme_file_link/7.x


а с этим не совсем понятно... куда этот код вставить нужно?

Аватар пользователя alex-litvinov alex-litvinov 4 августа в 18:04

Тоже столкнулся с такой делемой решение сделал через js:

(function ($) {
    $(document).ready(function() {
      // Open PDF In New Window
      $('a[href$=".pdf"]').attr('target', '_blank');
    });

}(jQuery));