Drupal load popap window or open link

Сообщение об ошибке

Deprecated function: The each() function is deprecated. This message will be suppressed on further calls в функции menu_set_active_trail() (строка 2405 в файле /var/www/notes7/includes/menu.inc).

Задача.

Открывать ссылку в всплывающем окне при высоте страницы более 800px или переходить по ссылке в противном случае. При переходе добавлять к странице действующую кнопку "назад".

В примере используются стили bootstrap.

  1. устанавливаем colorbox
  2. cоздаем custom модуль

В файле our_module.module

name = our_module_name 
core = 7.x 
description = "some description" 
scripts[] = our_module.js

В файле our_module.module

function our_module_node_view($node, $view_mode, $langcode) { 
  if (isset($_GET['destination'])) { 
    $destination = $_GET['destination']; 
    $path = drupal_get_normal_path('page_need_to_load'); 
    $nid= str_replace('node/', '', $path); 
    if ($nid == $node->nid){ 
      $node->content['some_key'] = array (
        '#markup' => l('Закрыть', $destination, array('attributes' => array('class' => 'rules_back btn btn-default'))), 
        '#weight' => 3, 
      );
    }
  }
}

В файле our_module.js

(function ($) { 
  $(function () { 
    if (typeof colorbox !== 'undefined') {
      var h = $('body').height(); 
      if (h > 800) { 
        //click once
        if (!$(".some_class").hasClass("processed")){
          $(".some_class").addClass("processed").colorbox({ top:"10px", width:"90%", close:"Закрыть"});
        }
      }
    }
 }); 
}) (jQuery);

Добавляем кнопку на страницу

$link .= '<div>';
$link .= l('Some title', 'page_need_to_load',
     array('query' => drupal_get_destination(),
           'attributes' => array('class' => 'btn btn-success some_class'),
           'absolute' => TRUE) );
$link .= '</div>';
print $link;

Стили для отображения текста кнопки

.some_class {
    float: right;  
}

#cboxClose {
    text-indent: 0;
    width: auto;
    height: auto;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-image: none;
    background-color: #fff;
    padding: 6px 12px;
}

#cboxClose:hover {
    background-color: #e6e6e6;
    border-color: #adadad;
}

Добавить комментарий

CAPTCHA