page.vars.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. <?php
  2. /**
  3. * @file
  4. * Stub file for "page" theme hook [pre]process functions.
  5. */
  6. /**
  7. * Pre-processes variables for the "page" theme hook.
  8. *
  9. * See template for list of available variables.
  10. *
  11. * @see page.tpl.php
  12. *
  13. * @ingroup theme_preprocess
  14. */
  15. function bootstrap_preprocess_page(&$variables) {
  16. // Add information about the number of sidebars.
  17. if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
  18. $variables['content_column_class'] = ' class="col-sm-6"';
  19. }
  20. elseif (!empty($variables['page']['sidebar_first']) || !empty($variables['page']['sidebar_second'])) {
  21. $variables['content_column_class'] = ' class="col-sm-9"';
  22. }
  23. else {
  24. $variables['content_column_class'] = ' class="col-sm-12"';
  25. }
  26. if (bootstrap_setting('fluid_container') == 1) {
  27. $variables['container_class'] = 'container-fluid';
  28. }
  29. else {
  30. $variables['container_class'] = 'container';
  31. }
  32. // Primary nav.
  33. $variables['primary_nav'] = FALSE;
  34. if ($variables['main_menu']) {
  35. // Build links.
  36. $variables['primary_nav'] = menu_tree(variable_get('menu_main_links_source', 'main-menu'));
  37. // Provide default theme wrapper function.
  38. $variables['primary_nav']['#theme_wrappers'] = array('menu_tree__primary');
  39. }
  40. // Secondary nav.
  41. $variables['secondary_nav'] = FALSE;
  42. if ($variables['secondary_menu']) {
  43. // Build links.
  44. $variables['secondary_nav'] = menu_tree(variable_get('menu_secondary_links_source', 'user-menu'));
  45. // Provide default theme wrapper function.
  46. $variables['secondary_nav']['#theme_wrappers'] = array('menu_tree__secondary');
  47. }
  48. $variables['navbar_classes_array'] = array('navbar');
  49. if (bootstrap_setting('navbar_position') !== '') {
  50. $variables['navbar_classes_array'][] = 'navbar-' . bootstrap_setting('navbar_position');
  51. }
  52. elseif (bootstrap_setting('fluid_container') == 1) {
  53. $variables['navbar_classes_array'][] = 'container-fluid';
  54. }
  55. else {
  56. $variables['navbar_classes_array'][] = 'container';
  57. }
  58. if (bootstrap_setting('navbar_inverse')) {
  59. $variables['navbar_classes_array'][] = 'navbar-inverse';
  60. }
  61. else {
  62. $variables['navbar_classes_array'][] = 'navbar-default';
  63. }
  64. }
  65. /**
  66. * Processes variables for the "page" theme hook.
  67. *
  68. * See template for list of available variables.
  69. *
  70. * @see page.tpl.php
  71. *
  72. * @ingroup theme_process
  73. */
  74. function bootstrap_process_page(&$variables) {
  75. $variables['navbar_classes'] = implode(' ', $variables['navbar_classes_array']);
  76. }