1/** 2 * @todo 3 */ 4 5Drupal.omega = Drupal.omega || {}; 6 7(function($) { 8 /** 9 * @todo 10 */ 11 var current; 12 var previous; 13 14 /** 15 * @todo 16 */ 17 var setCurrentLayout = function (index) { 18 index = parseInt(index); 19 previous = current; 20 current = Drupal.settings.omega.layouts.order.hasOwnProperty(index) ? Drupal.settings.omega.layouts.order[index] : 'mobile'; 21 22 if (previous != current) { 23 $('body').removeClass('responsive-layout-' + previous).addClass('responsive-layout-' + current); 24 $.event.trigger('responsivelayout', {from: previous, to: current}); 25 } 26 }; 27 28 /** 29 * @todo 30 */ 31 Drupal.omega.getCurrentLayout = function () { 32 return current; 33 }; 34 35 /** 36 * @todo 37 */ 38 Drupal.omega.getPreviousLayout = function () { 39 return previous; 40 }; 41 42 /** 43 * @todo 44 */ 45 Drupal.omega.crappyBrowser = function () { 46 return $.browser.msie && parseInt($.browser.version, 10) < 9; 47 }; 48 49 /** 50 * @todo 51 */ 52 Drupal.omega.checkLayout = function (layout) { 53 if (Drupal.settings.omega.layouts.queries.hasOwnProperty(layout) && Drupal.settings.omega.layouts.queries[layout]) { 54 var output = Drupal.omega.checkQuery(Drupal.settings.omega.layouts.queries[layout]); 55 56 if (!output && layout == Drupal.settings.omega.layouts.primary) { 57 var dummy = $('<div id="omega-check-query"></div>').prependTo('body'); 58 59 dummy.append('<style media="all">#omega-check-query { position: relative; z-index: -1; }</style>'); 60 dummy.append('<!--[if (lt IE 9)&(!IEMobile)]><style media="all">#omega-check-query { z-index: 100; }</style><![endif]-->'); 61 62 output = parseInt(dummy.css('z-index')) == 100; 63 64 dummy.remove(); 65 } 66 67 return output; 68 } 69 70 return false; 71 }; 72 73 /** 74 * @todo 75 */ 76 Drupal.omega.checkQuery = function (query) { 77 var dummy = $('<div id="omega-check-query"></div>').prependTo('body'); 78 79 dummy.append('<style media="all">#omega-check-query { position: relative; z-index: -1; }</style>'); 80 dummy.append('<style media="' + query + '">#omega-check-query { z-index: 100; }</style>'); 81 82 var output = parseInt(dummy.css('z-index')) == 100; 83 84 dummy.remove(); 85 86 return output; 87 }; 88 89 /** 90 * @todo 91 */ 92 Drupal.behaviors.omegaMediaQueries = { 93 attach: function (context) { 94 $('body', context).once('omega-mediaqueries', function () { 95 var primary = $.inArray(Drupal.settings.omega.layouts.primary, Drupal.settings.omega.layouts.order); 96 var dummy = $('<div id="omega-media-query-dummy"></div>').prependTo('body'); 97 98 dummy.append('<style media="all">#omega-media-query-dummy { position: relative; z-index: -1; }</style>'); 99 dummy.append('<!--[if (lt IE 9)&(!IEMobile)]><style media="all">#omega-media-query-dummy { z-index: ' + primary + '; }</style><![endif]-->'); 100 101 for (var i in Drupal.settings.omega.layouts.order) { 102 dummy.append('<style media="' + Drupal.settings.omega.layouts.queries[Drupal.settings.omega.layouts.order[i]] + '">#omega-media-query-dummy { z-index: ' + i + '; }</style>'); 103 } 104 105 $(window).bind('resize.omegamediaqueries', function () { 106 setCurrentLayout(dummy.css('z-index')); 107 }).load(function () { 108 $(this).trigger('resize.omegamediaqueries'); 109 }); 110 }); 111 } 112 }; 113})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.