Speed Booster Pack - Version 1.8

Version Description

  • Added option to load CSS asynchronously to render your page more quickly and get a higher score on the major speed testing services
  • Added option to inline and minify all CSS styles and move them to the header or to the footer, to eliminate external render-blocking CSS and optimize CSS delivery.
  • Added option to change the default image compression level, to help your pages load faster and keep file sizes smaller.
  • Added memory usage information and active plugins number in the plugin options page.
  • Replaced PHP version info with memory usage information (more useful).
  • Added Romanian translation and POT file. Translators are welcome!
Download this release

Release Info

Developer tiguan
Plugin Icon 128x128 Speed Booster Pack
Version 1.8
Comparing to
See all releases

Code changes from version 1.7 to 1.8

css/jquery-ui.min.css ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ /*! jQuery UI - v1.11.0 - 2014-06-26
2
+ * http://jqueryui.com
3
+ * Includes: core.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, draggable.css, menu.css, progressbar.css, resizable.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
4
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px
5
+ * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
6
+
7
+ .ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-accordion .ui-accordion-header{display:block;cursor:pointer;position:relative;margin:2px 0 0 0;padding:.5em .5em .5em .7em;min-height:0;font-size:100%}.ui-accordion .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-icons .ui-accordion-icons{padding-left:2.2em}.ui-accordion .ui-accordion-header .ui-accordion-header-icon{position:absolute;left:.5em;top:50%;margin-top:-8px}.ui-accordion .ui-accordion-content{padding:1em 2.2em;border-top:0;overflow:auto}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-button{display:inline-block;position:relative;padding:0;line-height:normal;margin-right:.1em;cursor:pointer;vertical-align:middle;text-align:center;overflow:visible}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.ui-button .ui-button-text{display:block;line-height:normal}.ui-button-text-only .ui-button-text{padding:.4em 1em}.ui-button-icon-only .ui-button-text,.ui-button-icons-only .ui-button-text{padding:.4em;text-indent:-9999999px}.ui-button-text-icon-primary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 1em .4em 2.1em}.ui-button-text-icon-secondary .ui-button-text,.ui-button-text-icons .ui-button-text{padding:.4em 2.1em .4em 1em}.ui-button-text-icons .ui-button-text{padding-left:2.1em;padding-right:2.1em}input.ui-button{padding:.4em 1em}.ui-button-icon-only .ui-icon,.ui-button-text-icon-primary .ui-icon,.ui-button-text-icon-secondary .ui-icon,.ui-button-text-icons .ui-icon,.ui-button-icons-only .ui-icon{position:absolute;top:50%;margin-top:-8px}.ui-button-icon-only .ui-icon{left:50%;margin-left:-8px}.ui-button-text-icon-primary .ui-button-icon-primary,.ui-button-text-icons .ui-button-icon-primary,.ui-button-icons-only .ui-button-icon-primary{left:.5em}.ui-button-text-icon-secondary .ui-button-icon-secondary,.ui-button-text-icons .ui-button-icon-secondary,.ui-button-icons-only .ui-button-icon-secondary{right:.5em}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}input.ui-button::-moz-focus-inner,button.ui-button::-moz-focus-inner{border:0;padding:0}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-dialog{overflow:hidden;position:absolute;top:0;left:0;padding:.2em;outline:0}.ui-dialog .ui-dialog-titlebar{padding:.4em 1em;position:relative}.ui-dialog .ui-dialog-title{float:left;margin:.1em 0;white-space:nowrap;width:90%;overflow:hidden;text-overflow:ellipsis}.ui-dialog .ui-dialog-titlebar-close{position:absolute;right:.3em;top:50%;width:20px;margin:-10px 0 0 0;padding:1px;height:20px}.ui-dialog .ui-dialog-content{position:relative;border:0;padding:.5em 1em;background:none;overflow:auto}.ui-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin-top:.5em;padding:.3em 1em .5em .4em}.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right}.ui-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer}.ui-dialog .ui-resizable-se{width:12px;height:12px;right:-5px;bottom:-5px;background-position:16px 16px}.ui-draggable .ui-dialog-titlebar{cursor:move}.ui-draggable-handle{-ms-touch-action:none;touch-action:none}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:none}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{position:relative;margin:0;padding:3px 1em 3px .4em;cursor:pointer;min-height:0;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-progressbar{height:2em;text-align:left;overflow:hidden}.ui-progressbar .ui-progressbar-value{margin:-1px;height:100%}.ui-progressbar .ui-progressbar-overlay{background:url("images/animated-overlay.gif");height:100%;filter:alpha(opacity=25);opacity:0.25}.ui-progressbar-indeterminate .ui-progressbar-value{background-image:none}.ui-resizable{position:relative}.ui-resizable-handle{position:absolute;font-size:0.1px;display:block;-ms-touch-action:none;touch-action:none}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px}.ui-selectable{-ms-touch-action:none;touch-action:none}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black}.ui-selectmenu-menu{padding:0;margin:0;position:absolute;top:0;left:0;display:none}.ui-selectmenu-menu .ui-menu{overflow:auto;overflow-x:hidden;padding-bottom:1px}.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup{font-size:1em;font-weight:bold;line-height:1.5;padding:2px 0.4em;margin:0.5em 0 0 0;height:auto;border:0}.ui-selectmenu-open{display:block}.ui-selectmenu-button{display:inline-block;overflow:hidden;position:relative;text-decoration:none;cursor:pointer}.ui-selectmenu-button span.ui-icon{right:0.5em;left:auto;margin-top:-8px;position:absolute;top:50%}.ui-selectmenu-button span.ui-selectmenu-text{text-align:left;padding:0.4em 2.1em 0.4em 1em;display:block;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}.ui-sortable-handle{-ms-touch-action:none;touch-action:none}.ui-spinner{position:relative;display:inline-block;overflow:hidden;padding:0;vertical-align:middle}.ui-spinner-input{border:none;background:none;color:inherit;padding:0;margin:.2em 0;vertical-align:middle;margin-left:.4em;margin-right:22px}.ui-spinner-button{width:16px;height:50%;font-size:.5em;padding:0;margin:0;text-align:center;position:absolute;cursor:default;display:block;overflow:hidden;right:0}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;padding:.2em}.ui-tabs .ui-tabs-nav{margin:0;padding:.2em .2em 0}.ui-tabs .ui-tabs-nav li{list-style:none;float:left;position:relative;top:0;margin:1px .2em 0 0;border-bottom-width:0;padding:0;white-space:nowrap}.ui-tabs .ui-tabs-nav .ui-tabs-anchor{float:left;padding:.5em 1em;text-decoration:none}.ui-tabs .ui-tabs-nav li.ui-tabs-active{margin-bottom:-1px;padding-bottom:1px}.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor{cursor:text}.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor{cursor:pointer}.ui-tabs .ui-tabs-panel{display:block;border-width:0;padding:1em 1.4em;background:none}.ui-tooltip{padding:8px;position:absolute;z-index:9999;max-width:300px;-webkit-box-shadow:0 0 5px #aaa;box-shadow:0 0 5px #aaa}body .ui-tooltip{border-width:2px}.ui-widget{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#eee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #ccc;background:#f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#1c94c4;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #fbcb09;background:#fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#c77405}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited{color:#c77405;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #fbd850;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;color:#fff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#fff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#fff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_222222_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_228ef1_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffd27a_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;opacity:.5;filter:Alpha(Opacity=50)}.ui-widget-shadow{margin:-5px 0 0 -5px;padding:5px;background:#000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x;opacity:.2;filter:Alpha(Opacity=20);border-radius:5px}
css/sbp_style.min.css CHANGED
@@ -1 +1 @@
1
- .wrap .sb-pack{margin-bottom:50px}.wrap .sb-pack .welcome-panel h4{margin:1.33em 0 20px}.wrap .sb-pack .sbp-title-div{height:50px;clear:both}.wrap .sb-pack .php-version{margin-top:20px;border:1px solid #E5E5E5;padding:12px 10px;background-color:#F1F1F1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.wrap .sb-pack .sbp-box hr{margin-left:70px}.wrap .sb-pack .sbp-1{padding-top:10px}.wrap .sb-pack .sbp-2{padding-bottom:15px}.wrap .sb-pack .sbp-3{padding-top:5px}.wrap .sb-pack .sbp-title-div .sbp-title{font-size:23px;font-weight:300;line-height:26px;padding-top:16px;padding-right:15px;display:block;float:left}.wrap .sb-pack .sbp-box{background:#fff;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,0.04);padding:15px;margin-bottom:15px;position:relative;overflow:hidden}.wrap .sb-pack .sbp-box p{margin:5px 0 5px 70px;color:#777}.wrap .sb-pack .sbp-infos{display:block;margin:0 auto;padding-left:70px;font-weight:700;color:#777}.wrap .sb-pack .sbp-infos span{color:#777;font-weight:400}.wrap .sb-pack .sbp-infos-title{font-weight:700;color:#777}.wrap .sb-pack .sbp-box-legend,.wrap .sb-pack .sbp-box-version{position:absolute;left:0;top:0;height:100%}.wrap .sb-pack .sbp-box-version{background:none repeat scroll 0 0 #80828f;padding:20px 15px}.wrap .sb-pack .sbp-box-legend{background:none repeat scroll 0 0 #fcc500;padding:15px 15px}.wrap .sb-pack .sbp-box-legend:hover{background-color:#f39c12}.wrap .sb-pack .sbp-box-version:hover{background-color:#6c6e79}.wrap .sb-pack .sbp-icon-help,.wrap .sb-pack .sbp-icon-version{color:#FFF;font-size:25px}.wrap .sb-pack .sbp-icon:before{content:"\f185";display:inline-block;-webkit-font-smoothing:antialiased;font:normal 36px/0.7 'dashicons';vertical-align:top;color:#fa5148;padding-right:5px}.wrap .sb-pack label{display:inline-block;cursor:pointer;position:relative;padding-left:35px;font-size:16px}.wrap .sb-pack label:before{content:"\2717";font-size:16px;-webkit-font-smoothing:antialiased;text-align:center;color:#fff;display:inline-block;width:24px;height:24px;margin-right:10px;position:absolute;left:0;background:#c9d6e2;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.wrap .sb-pack input[type=checkbox]{display:none}.wrap .sb-pack input[type=checkbox]:checked+label:before{content:"\2714";background:#2dcb73;text-shadow:1px 1px 1px #148d44;font-size:16px;-webkit-font-smoothing:antialiased;color:#fff;text-align:center}.wrap .sb-pack .sbp-icon-version:before{content:"\f348";display:inline-block;-webkit-font-smoothing:antialiased;font:normal 30px/1 'dashicons';vertical-align:top}.wrap .sb-pack .sbp-icon-help:before{content:"\f123";display:inline-block;-webkit-font-smoothing:antialiased;font:normal 30px/1 'dashicons';vertical-align:top}.wrap .sb-pack .sbp-stats{font-size:16px}.wrap .sb-pack .sbp-progress.time,.wrap .sb-pack .sbp-progress.queries{height:30px;width:80%;display:inline-block;position:relative;background-color:#f1f2f7;overflow:hidden;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.wrap .sbp-progress.time>span,.wrap .sbp-progress.queries>span{background-color:#7edba5;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#7edba5),color-stop(1,#2dcb73));background-image:-webkit-linear-gradient(top,#7edba5,#2dcb73);background-image:-moz-linear-gradient(top,#7edba5,#2dcb73);background-image:-ms-linear-gradient(top,#7edba5,#2dcb73);background-image:-o-linear-gradient(top,#7edba5,#f36d0a);color:#fff;width:0;max-width:98%;float:left;display:block;height:100%;position:relative;overflow:hidden}.wrap .sb-pack .sbp-progress.time>span{-webkit-animation:progress-bar-time 2s 1 forwards;-moz-animation:progress-bar-time 2s 1 forwards;-ms-animation:progress-bar-time 2s 1 forwards;-o-animation:progress-bar-time 2s 1 forwards;animation:progress-bar-time 2s 1 forwards}.wrap .sb-pack .sbp-progress.queries>span{-webkit-animation:progress-bar-queries 2s 1 forwards;-moz-animation:progress-bar-queries 2s 1 forwards;-ms-animation:progress-bar-queries 2s 1 forwards;-o-animation:progress-bar-queries 2s 1 forwards;animation:progress-bar-queries 2s 1 forwards}.wrap .sb-pack .sbp-values{float:right;padding:0 5px;background-color:#3498db;color:#fff;width:14%;height:30px;line-height:30px;text-align:center;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.wrap .sb-pack .sbp-numbers{-webkit-animation:opacity 2s;-moz-animation:opacity 2s;-ms-animation:opacity 2s;-o-animation:opacity 2s;animation:opacity 2s;transition-delay:2s;-moz-transition-delay:2s;-webkit-transition-delay:2s;-o-transition-delay:2s;font-size: 16px}@keyframes opacity{from{opacity:0}to{opacity:1}}@-moz-keyframes opacity{from{opacity:0}to{opacity:1}}@-webkit-keyframes opacity{from{opacity:0}to{opacity:1}}@-ms-keyframes opacity{from{opacity:0}to{opacity:1}}@-o-keyframes opacity{from{opacity:0}to{opacity:1}}
1
+ .wrap .sb-pack .welcome-panel .welcome-panel-column:first-child{display:block!important}.wrap .sb-pack .welcome-panel h4{margin:1.33em 0 20px}.wrap .sb-pack .sbp-title-div{height:50px;clear:both}.wrap .sb-pack .sbp-amount{background-color:transparent;border:medium none;box-shadow:none;font-size:16px}.wrap .sb-pack .sbp-slider{width:40%}.wrap .sb-pack p{color:#464646;line-height:1.6}.wrap .sb-pack .debug-info{margin-top:19px;border:1px solid #1A9E51;padding:7px 10px;background-color:#2DCB73;color:#FFF;font-size:16px;text-shadow:1px 1px #1A9E51}.wrap .sb-pack .td-margin{margin:1.5em 0}.wrap .sb-pack .td-border{border-bottom:1px solid #E1E1E1;margin:4em 0 3em}.wrap .sb-pack .td-border-last{border-bottom:1px solid #E1E1E1;margin:1.5em 0}.wrap .sb-pack .sbp-radio-content{display:block}.wrap .sb-pack .sbp-radio-content label{display:block!important}.wrap .sb-pack .sbp-box hr{margin-left:70px}.wrap .sb-pack .sbp-1{padding-top:10px}.wrap .sb-pack .sbp-2{padding-bottom:15px}.wrap .sb-pack .sbp-3{padding-top:5px}.wrap .sb-pack .sbp-title-div .sbp-title{font-size:23px;font-weight:300;line-height:26px;padding-top:16px;padding-right:15px;display:block;float:left}.wrap .sb-pack .sbp-box{background:#fff;border:1px solid #E5E5E5;box-shadow:0 1px 1px rgba(0,0,0,.04);padding:15px;margin-bottom:15px;position:relative;overflow:hidden}.wrap .sb-pack .sbp-box p{margin:5px 0 5px 70px;color:#777}.wrap .sb-pack .sbp-infos{display:block;margin:0 auto;padding-left:70px;font-weight:700;color:#777}.wrap .sb-pack .sbp-infos span{color:#777;font-weight:400}.wrap .sb-pack .sbp-infos-title{font-weight:700;color:#777}.wrap .sb-pack .sbp-box-legend,.wrap .sb-pack .sbp-box-version{position:absolute;left:0;top:0;height:100%}.wrap .sb-pack .sbp-box-version{background:none repeat scroll 0 0 #80828F;padding:20px 15px}.wrap .sb-pack .sbp-box-legend{background:none repeat scroll 0 0 #FCC500;padding:15px}.wrap .sb-pack .sbp-box-legend:hover{background-color:#F39C12}.wrap .sb-pack .sbp-box-version:hover{background-color:#6C6E79}.wrap .sb-pack .sbp-icon-help,.wrap .sb-pack .sbp-icon-version{color:#FFF;font-size:25px}.wrap .sb-pack .sbp-icon:before{content:"\f185";display:inline-block;-webkit-font-smoothing:antialiased;font:400 36px/0.7 dashicons;vertical-align:top;color:#FA5148;padding-right:5px}.wrap .sb-pack label{display:inline-block;cursor:pointer;position:relative;padding-left:35px;font-size:16px}.wrap .sb-pack label:before{content:"\2717";font-size:16px;-webkit-font-smoothing:antialiased;text-align:center;color:#fff;display:inline-block;width:26px;height:26px;margin-right:10px;position:absolute;left:0;background:#C9D6E2;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);border:1px solid #B2BFCA}.wrap .sb-pack input[type=checkbox],.wrap .sb-pack input[type=radio]{display:none}.wrap .sb-pack input[type=checkbox]:checked+label:before{content:"\2714";background:#2DCB73;text-shadow:1px 1px 1px #148D44;border:1px solid #1A9E51;font-size:16px;-webkit-font-smoothing:antialiased;color:#fff;text-align:center}.wrap .sb-pack .sbp-icon-version:before{content:"\f348";display:inline-block;-webkit-font-smoothing:antialiased;font:400 30px/1 dashicons;vertical-align:top}.wrap .sb-pack .sbp-icon-help:before{content:"\f123";display:inline-block;-webkit-font-smoothing:antialiased;font:400 30px/1 dashicons;vertical-align:top}.wrap .sb-pack .sbp-stats{font-size:16px;line-height:1.5}.wrap .sb-pack .ui-widget-content .ui-state-default,.wrap .sb-pack .ui-widget-header .ui-state-default,.wrap .sb-pack.ui-state-default{border:1px solid #1A9E51;background-color:#2DCB73;font-weight:400;color:#555;outline:0 none;cursor:pointer}.wrap .sb-pack .ui-state-default:before,.wrap .sb-pack .ui-widget-content .ui-state-default:before,.wrap .sb-pack .ui-widget-header .ui-state-default:before{content:"\2630";display:inline-block;-webkit-font-smoothing:antialiased;color:#fff;font-weight:700;text-shadow:0 1px #1A9E51}.wrap .sb-pack .ui-state-default a,.wrap .sb-pack .ui-state-default a:link,.wrap .sb-pack .ui-state-default a:visited{color:#fff;text-decoration:none}.wrap .sb-pack .ui-state-focus,.wrap .sb-pack .ui-state-hover,.wrap .sb-pack .ui-widget-content .ui-state-focus,.wrap .sb-pack .ui-widget-content .ui-state-hover,.wrap .sb-pack .ui-widget-header .ui-state-focus,.wrap .sb-pack .ui-widget-header .ui-state-hover{background:#3CE281}.wrap .sb-pack .ui-corner-all,.wrap .sb-pack .ui-corner-left,.wrap .sb-pack .ui-corner-tl,.wrap .sb-pack .ui-corner-top{border-top-left-radius:0}.wrap .sb-pack .ui-corner-all,.wrap .sb-pack .ui-corner-right,.wrap .sb-pack .ui-corner-top,.wrap .sb-pack .ui-corner-tr{border-top-right-radius:0}.wrap .sb-pack .ui-corner-all,.wrap .sb-pack .ui-corner-bottom,.wrap .sb-pack .ui-corner-br,.wrap .sb-pack .ui-corner-right{border-bottom-right-radius:0}.wrap .sb-pack .ui-corner-all,.wrap .sb-pack .ui-corner-bl,.wrap .sb-pack .ui-corner-bottom,.wrap .sb-pack .ui-corner-left{border-bottom-left-radius:0}.wrap .sb-pack .ui-slider-horizontal{height:1.3em}.wrap .sb-pack .ui-slider .ui-slider-handle{width:1.8em;height:1.8em;cursor:pointer;text-align:center}.wrap .sb-pack .ui-widget-content{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);border:1px solid #B2BFCA;background:#F1F2F7;color:#222}.wrap .sb-pack .sbp-progress.queries,.wrap .sb-pack .sbp-progress.time{height:30px;width:77%;display:inline-block;position:relative;background-color:#F1F2F7;overflow:hidden;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.wrap .sbp-progress.queries>span,.wrap .sbp-progress.time>span{background-color:#7EDBA5;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#7EDBA5),color-stop(1,#2DCB73));background-image:-webkit-linear-gradient(top,#7EDBA5,#2DCB73);background-image:-moz-linear-gradient(top,#7EDBA5,#2DCB73);background-image:-ms-linear-gradient(top,#7EDBA5,#2DCB73);background-image:-o-linear-gradient(top,#7EDBA5,#f36d0a);color:#fff;width:0;max-width:98%;float:left;display:block;height:100%;position:relative;overflow:hidden}.wrap .sb-pack .sbp-progress.time>span{-webkit-animation:progress-bar-time 2s 1 forwards;-moz-animation:progress-bar-time 2s 1 forwards;-ms-animation:progress-bar-time 2s 1 forwards;-o-animation:progress-bar-time 2s 1 forwards;animation:progress-bar-time 2s 1 forwards}.wrap .sb-pack .sbp-progress.queries>span{-webkit-animation:progress-bar-queries 2s 1 forwards;-moz-animation:progress-bar-queries 2s 1 forwards;-ms-animation:progress-bar-queries 2s 1 forwards;-o-animation:progress-bar-queries 2s 1 forwards;animation:progress-bar-queries 2s 1 forwards}.wrap .sb-pack .sbp-values{float:right;padding:0 5px;background-color:#1AB4EF;color:#fff;width:18%;height:30px;line-height:30px;text-align:center;text-shadow:0 -2px #1AB4EF}.wrap .sb-pack .sbp-numbers{-webkit-animation:opacity 2s;-moz-animation:opacity 2s;-ms-animation:opacity 2s;-o-animation:opacity 2s;animation:opacity 2s;transition-delay:2s;-moz-transition-delay:2s;-webkit-transition-delay:2s;-o-transition-delay:2s;font-size:16px}@keyframes opacity{from{opacity:0}to{opacity:1}}@-moz-keyframes opacity{from{opacity:0}to{opacity:1}}@-webkit-keyframes opacity{from{opacity:0}to{opacity:1}}@-ms-keyframes opacity{from{opacity:0}to{opacity:1}}@-o-keyframes opacity{from{opacity:0}to{opacity:1}}
css/style.dev.css CHANGED
@@ -1,5 +1,5 @@
1
- .wrap .sb-pack {
2
- margin-bottom: 50px;
3
  }
4
 
5
  .wrap .sb-pack .welcome-panel h4 {
@@ -11,14 +11,53 @@
11
  clear: both;
12
  }
13
 
14
- .wrap .sb-pack .php-version {
15
- margin-top: 20px;
16
- border: 1px solid #E5E5E5;
17
- padding: 12px 10px 12px 10px;
18
- background-color: #F1F1F1;
19
- -webkit-border-radius: 4px;
20
- -moz-border-radius: 4px;
21
- border-radius: 4px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  }
23
 
24
  .wrap .sb-pack .sbp-box hr {
@@ -129,6 +168,10 @@
129
 
130
  }
131
 
 
 
 
 
132
  .wrap .sb-pack label:before {
133
  content: "\2717";
134
  font-size: 16px;
@@ -136,28 +179,55 @@
136
  text-align: center;
137
  color: #fff;
138
  display: inline-block;
139
- width: 24px;
140
- height: 24px;
141
  margin-right: 10px;
142
  position: absolute;
143
  left: 0;
144
  background: #C9D6E2;
145
- -webkit-border-radius: 4px;
146
- -moz-border-radius: 4px;
147
- border-radius: 4px;
148
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
149
  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
150
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
 
151
  }
152
 
153
- .wrap .sb-pack input[type=checkbox] {
 
154
  display: none;
155
  }
156
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
157
  .wrap .sb-pack input[type=checkbox]:checked + label:before {
158
  content: "\2714";
159
  background: #2DCB73;
160
  text-shadow: 1px 1px 1px #148D44;
 
161
  font-size: 16px;
162
  -webkit-font-smoothing: antialiased;
163
  color: #fff;
@@ -182,14 +252,105 @@
182
 
183
  .wrap .sb-pack .sbp-stats {
184
  font-size: 16px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
185
  }
186
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
187
  /* Progress Bars
188
  -------------------------------------------------------------- */
189
  .wrap .sb-pack .sbp-progress.time,
190
  .wrap .sb-pack .sbp-progress.queries {
191
  height: 30px;
192
- width: 80%;
193
  display: inline-block;
194
  position: relative;
195
  background-color: #F1F2F7;
@@ -197,16 +358,10 @@
197
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
198
  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
199
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
200
- -webkit-border-radius: 4px;
201
- -moz-border-radius: 4px;
202
- border-radius: 4px;
203
- -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
204
- -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
205
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
206
  }
207
  .wrap .sbp-progress.time > span,
208
  .wrap .sbp-progress.queries > span {
209
- background-color: #7EDBA5;
210
  background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0, #7EDBA5),color-stop(1, #2DCB73));
211
  background-image: -webkit-linear-gradient(top, #7EDBA5, #2DCB73);
212
  background-image: -moz-linear-gradient(top, #7EDBA5, #2DCB73);
@@ -243,15 +398,13 @@
243
  .wrap .sb-pack .sbp-values {
244
  float: right;
245
  padding: 0 5px;
246
- background-color: #3498DB;
247
  color: #fff;
248
- width: 14%;
249
  height: 30px;
250
  line-height: 30px;
251
  text-align: center;
252
- -webkit-border-radius: 4px;
253
- -moz-border-radius: 4px;
254
- border-radius: 4px;
255
  }
256
 
257
  .wrap .sb-pack .sbp-numbers {
@@ -290,8 +443,8 @@
290
  to { opacity: 1; }
291
  }​
292
 
293
- /* Opera */
294
- @-o-keyframes opacity {
295
- from { opacity:0; }
296
- to { opacity: 1; }
297
- }​
1
+ .wrap .sb-pack .welcome-panel .welcome-panel-column:first-child {
2
+ display: block !important;
3
  }
4
 
5
  .wrap .sb-pack .welcome-panel h4 {
11
  clear: both;
12
  }
13
 
14
+ .wrap .sb-pack .sbp-amount {
15
+ background-color: transparent;
16
+ border: medium none;
17
+ box-shadow: none;
18
+ font-size: 16px;
19
+ }
20
+
21
+ .wrap .sb-pack .sbp-slider {
22
+ width: 40%;
23
+ }
24
+
25
+ .wrap .sb-pack p {
26
+ color: #464646;
27
+ line-height: 1.6;
28
+ }
29
+
30
+ .wrap .sb-pack .debug-info {
31
+ margin-top: 19px;
32
+ border: 1px solid #1A9E51;
33
+ padding: 7px 10px;
34
+ background-color: #2DCB73;
35
+ color: #FFF;
36
+ font-size: 16px;
37
+ text-shadow: 1px 1px #1A9E51;
38
+ }
39
+
40
+ .wrap .sb-pack .td-margin {
41
+ margin: 1.5em 0 1.5em;
42
+ }
43
+
44
+
45
+ .wrap .sb-pack .td-border {
46
+ border-bottom: 1px solid #E1E1E1;
47
+ margin: 4em 0 3em;
48
+ }
49
+
50
+ .wrap .sb-pack .td-border-last {
51
+ border-bottom: 1px solid #E1E1E1;
52
+ margin: 1.5em 0;
53
+ }
54
+
55
+ .wrap .sb-pack .sbp-radio-content {
56
+ display: block;
57
+ }
58
+
59
+ .wrap .sb-pack .sbp-radio-content label {
60
+ display: block !important;
61
  }
62
 
63
  .wrap .sb-pack .sbp-box hr {
168
 
169
  }
170
 
171
+ /*.wrap .sb-pack #sbp-css-content {
172
+ display: none;
173
+ }*/
174
+
175
  .wrap .sb-pack label:before {
176
  content: "\2717";
177
  font-size: 16px;
179
  text-align: center;
180
  color: #fff;
181
  display: inline-block;
182
+ width: 26px;
183
+ height: 26px;
184
  margin-right: 10px;
185
  position: absolute;
186
  left: 0;
187
  background: #C9D6E2;
 
 
 
188
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
189
  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
190
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
191
+ border: 1px solid #B2BFCA;
192
  }
193
 
194
+ .wrap .sb-pack input[type=checkbox],
195
+ .wrap .sb-pack input[type=radio] {
196
  display: none;
197
  }
198
 
199
+ /*.wrap .sb-pack .sbp-radio-content label:before {
200
+ content: "\2630";
201
+ font-size: 16px;
202
+ -webkit-font-smoothing: antialiased;
203
+ text-align: center;
204
+ color: #fff;
205
+ font-weight: 700;
206
+ display: inline-block;
207
+ width: 24px;
208
+ height: 24px;
209
+ line-height: 1.4;
210
+ margin-right: 10px;
211
+ position: absolute;
212
+ left: 0;
213
+ background: #C9D6E2;
214
+ border: 1px solid #9CA8B3;
215
+ }
216
+
217
+ .wrap .sb-pack input[type=radio]:checked + label:before {
218
+ content: "\2630";
219
+ background: none repeat scroll 0% 0% #2DCB73;
220
+ text-align: center;
221
+ font-weight: 700;
222
+ color: #fff;
223
+ border: 1px solid #1A9E51;
224
+ } */
225
+
226
  .wrap .sb-pack input[type=checkbox]:checked + label:before {
227
  content: "\2714";
228
  background: #2DCB73;
229
  text-shadow: 1px 1px 1px #148D44;
230
+ border: 1px solid #1A9E51;
231
  font-size: 16px;
232
  -webkit-font-smoothing: antialiased;
233
  color: #fff;
252
 
253
  .wrap .sb-pack .sbp-stats {
254
  font-size: 16px;
255
+ line-height: 1.5;
256
+ }
257
+
258
+ /* Jquery UI slider
259
+ -------------------------------------------------------------- */
260
+
261
+ .wrap .sb-pack.ui-state-default,
262
+ .wrap .sb-pack .ui-widget-content .ui-state-default,
263
+ .wrap .sb-pack .ui-widget-header .ui-state-default {
264
+ border:1px solid #1A9E51;
265
+ background-color:#2DCB73;
266
+ font-weight:400;
267
+ color:#555;
268
+ outline:0 none;
269
+ cursor:pointer;
270
+ }
271
+ .wrap .sb-pack .ui-state-default:before,
272
+ .wrap .sb-pack .ui-widget-content .ui-state-default:before,
273
+ .wrap .sb-pack .ui-widget-header .ui-state-default:before {
274
+ content:"\2630";
275
+ display:inline-block;
276
+ -webkit-font-smoothing:antialiased;
277
+ color:#fff;
278
+ font-weight:700;
279
+ text-shadow:0 1px #1A9E51;
280
+ }
281
+
282
+ .wrap .sb-pack .ui-state-default a,
283
+ .wrap .sb-pack .ui-state-default a:link,
284
+ .wrap .sb-pack .ui-state-default a:visited {
285
+ color:#fff;
286
+ text-decoration:none;
287
+ }
288
+
289
+ .wrap .sb-pack .ui-state-focus,
290
+ .wrap .sb-pack .ui-state-hover,
291
+ .wrap .sb-pack .ui-widget-content .ui-state-focus,
292
+ .wrap .sb-pack .ui-widget-content .ui-state-hover,
293
+ .wrap .sb-pack .ui-widget-header .ui-state-focus,
294
+ .wrap .sb-pack .ui-widget-header .ui-state-hover {
295
+ background:#3CE281;
296
  }
297
 
298
+ .wrap .sb-pack .ui-corner-all,
299
+ .wrap .sb-pack .ui-corner-top,
300
+ .wrap .sb-pack .ui-corner-left,
301
+ .wrap .sb-pack .ui-corner-tl {
302
+ border-top-left-radius: 0;
303
+ }
304
+ .wrap .sb-pack .ui-corner-all,
305
+ .wrap .sb-pack .ui-corner-top,
306
+ .wrap .sb-pack .ui-corner-right,
307
+ .wrap .sb-pack .ui-corner-tr {
308
+ border-top-right-radius: 0;
309
+ }
310
+ .wrap .sb-pack .ui-corner-bottom,
311
+ .wrap .sb-pack .ui-corner-left,
312
+ .wrap .sb-pack .ui-corner-bl {
313
+ border-bottom-left-radius: 0;
314
+ }
315
+ .wrap .sb-pack .ui-corner-all,
316
+ .wrap .sb-pack .ui-corner-bottom,
317
+ .wrap .sb-pack .ui-corner-right,
318
+ .wrap .sb-pack .ui-corner-br {
319
+ border-bottom-right-radius: 0;
320
+ }
321
+
322
+ .wrap .sb-pack .ui-corner-all,
323
+ .wrap .sb-pack .ui-corner-bottom,
324
+ .wrap .sb-pack .ui-corner-left,
325
+ .wrap .sb-pack .ui-corner-bl {
326
+ border-bottom-left-radius: 0;
327
+ }
328
+
329
+ .wrap .sb-pack .ui-slider-horizontal {
330
+ height:1.3em;
331
+ }
332
+
333
+ .wrap .sb-pack .ui-slider .ui-slider-handle {
334
+ width:1.8em;
335
+ height:1.8em;
336
+ cursor:pointer;
337
+ text-align:center;
338
+ }
339
+
340
+ .wrap .sb-pack .ui-widget-content {
341
+ -webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);
342
+ -moz-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);
343
+ box-shadow:inset 0 1px 2px rgba(0,0,0,.1);
344
+ border:1px solid #B2BFCA;
345
+ background:#F1F2F7;
346
+ color:#222
347
+ }
348
  /* Progress Bars
349
  -------------------------------------------------------------- */
350
  .wrap .sb-pack .sbp-progress.time,
351
  .wrap .sb-pack .sbp-progress.queries {
352
  height: 30px;
353
+ width: 77%;
354
  display: inline-block;
355
  position: relative;
356
  background-color: #F1F2F7;
358
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
359
  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
360
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
 
 
 
 
 
 
361
  }
362
  .wrap .sbp-progress.time > span,
363
  .wrap .sbp-progress.queries > span {
364
+ background-color: #7EDBA5;
365
  background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0, #7EDBA5),color-stop(1, #2DCB73));
366
  background-image: -webkit-linear-gradient(top, #7EDBA5, #2DCB73);
367
  background-image: -moz-linear-gradient(top, #7EDBA5, #2DCB73);
398
  .wrap .sb-pack .sbp-values {
399
  float: right;
400
  padding: 0 5px;
401
+ background-color: #1AB4EF;
402
  color: #fff;
403
+ width: 18%;
404
  height: 30px;
405
  line-height: 30px;
406
  text-align: center;
407
+ text-shadow: 0px -2px #1AB4EF;
 
 
408
  }
409
 
410
  .wrap .sb-pack .sbp-numbers {
443
  to { opacity: 1; }
444
  }​
445
 
446
+ /* Opera */
447
+ @-o-keyframes opacity {
448
+ from { opacity:0; }
449
+ to { opacity: 1; }
450
+ }​
images/1x1.trans.gif DELETED
Binary file
inc/core.php CHANGED
@@ -1,10 +1,13 @@
1
  <?php
2
 
 
 
 
 
3
  if( !class_exists( 'Speed_Booster_Pack_Core' ) ) {
4
 
5
  class Speed_Booster_Pack_Core {
6
 
7
-
8
  public function __construct() {
9
 
10
  global $sbp_options;
@@ -12,7 +15,10 @@ if( !class_exists( 'Speed_Booster_Pack_Core' ) ) {
12
  add_action( 'wp_enqueue_scripts', array( $this, 'sbp_no_more_fontawesome'), 9999 );
13
  add_action( 'wp_enqueue_scripts', array( $this, 'sbp_move_scripts_to_footer' ) );
14
  add_action( 'wp_footer', array( $this, 'sbp_show_page_load_stats' ), 999 );
15
- add_action('after_setup_theme', array( $this, 'sbp_junk_header_tags' ) );
 
 
 
16
 
17
  // Use Google Libraries
18
  if ( !is_admin() and isset( $sbp_options['use_google_libs'] ) ) {
@@ -54,9 +60,124 @@ if( !class_exists( 'Speed_Booster_Pack_Core' ) ) {
54
  add_filter( 'style_loader_src', array( $this, 'sbp_remove_query_strings_3' ), 15, 1 );
55
  }
56
 
 
 
 
 
57
  } // END public public function __construct
58
 
59
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  /*--------------------------------------------------------------------------------------------------------
61
  Moves scripts to the footer to decrease page load times, while keeping stylesheets in the header
62
  ---------------------------------------------------------------------------------------------------------*/
@@ -76,9 +197,9 @@ function sbp_move_scripts_to_footer() {
76
  } // END function sbp_move_scripts_to_footer
77
 
78
 
79
- /*----------------------------------------------
80
  Show Number of Queries and Page Load Time
81
- -----------------------------------------------*/
82
 
83
  function sbp_show_page_load_stats() {
84
  $timer_stop = timer_stop( 0, 2 ); // to display milliseconds instead of seconds usethe following: $timer_stop = 1000 * ( float ) timer_stop( 0, 4 );
@@ -88,25 +209,25 @@ function sbp_show_page_load_stats() {
88
  }
89
 
90
 
91
- /*----------------------------------------------
92
  Use Google Libraries
93
- -----------------------------------------------*/
94
 
95
  function sbp_use_google_libraries() {
96
 
97
  require_once( SPEED_BOOSTER_PACK_PATH . 'inc/use-google-libraries.php' );
98
 
99
- if ( class_exists( 'JCP_UseGoogleLibraries' ) ) {
100
- JCP_UseGoogleLibraries::configure_plugin();
101
 
102
  }
103
 
104
  } // End function sbp_use_google_libraries()
105
 
106
 
107
- /*----------------------------------------------
108
  Lazy Load for images
109
- -----------------------------------------------*/
110
 
111
  function sbp_lazy_load_for_images() {
112
 
@@ -115,9 +236,20 @@ function sbp_lazy_load_for_images() {
115
  } // End function sbp_lazy_load_for_images()
116
 
117
 
118
- /*----------------------------------------------
 
 
 
 
 
 
 
 
 
 
 
119
  Defer parsing of JavaScript
120
- -----------------------------------------------*/
121
 
122
  function sbp_defer_parsing_of_js ( $url ) {
123
 
@@ -134,9 +266,9 @@ function sbp_defer_parsing_of_js ( $url ) {
134
  } // END function sbp_defer_parsing_of_js
135
 
136
 
137
- /*----------------------------------------------
138
  Remove query strings from static resources
139
- -----------------------------------------------*/
140
 
141
  function sbp_remove_query_strings_1( $src ) { // remove "?ver" string
142
  $rqsfsr = explode( '?ver', $src );
@@ -154,9 +286,9 @@ return $rqsfsr[0];
154
  }
155
 
156
 
157
- /*----------------------------------------------
158
  Dequeue extra Font Awesome stylesheet
159
- -----------------------------------------------*/
160
 
161
  function sbp_no_more_fontawesome() {
162
  global $wp_styles;
@@ -179,9 +311,9 @@ function sbp_no_more_fontawesome() {
179
  } // End function dfa_no_more_fontawesome
180
 
181
 
182
- /*----------------------------------------------
183
  Remove junk header tags
184
- -----------------------------------------------*/
185
 
186
  public function sbp_junk_header_tags() {
187
 
@@ -220,7 +352,6 @@ public function sbp_junk_header_tags() {
220
 
221
  } // END public function sbp_junk_header_tags
222
 
223
-
224
  } // END class Speed_Booster_Pack_Core
225
 
226
  } // END if(!class_exists('Speed_Booster_Pack_Core'))
1
  <?php
2
 
3
+ /*--------------------------------------------------------------------------------------------------------
4
+ Plugin Core Functions
5
+ ---------------------------------------------------------------------------------------------------------*/
6
+
7
  if( !class_exists( 'Speed_Booster_Pack_Core' ) ) {
8
 
9
  class Speed_Booster_Pack_Core {
10
 
 
11
  public function __construct() {
12
 
13
  global $sbp_options;
15
  add_action( 'wp_enqueue_scripts', array( $this, 'sbp_no_more_fontawesome'), 9999 );
16
  add_action( 'wp_enqueue_scripts', array( $this, 'sbp_move_scripts_to_footer' ) );
17
  add_action( 'wp_footer', array( $this, 'sbp_show_page_load_stats' ), 999 );
18
+ add_action( 'after_setup_theme', array( $this, 'sbp_junk_header_tags' ) );
19
+ add_action( 'init', array( $this, 'sbp_init') );
20
+
21
+ $this->sbp_css_optimizer(); // CSS Optimizer functions
22
 
23
  // Use Google Libraries
24
  if ( !is_admin() and isset( $sbp_options['use_google_libs'] ) ) {
60
  add_filter( 'style_loader_src', array( $this, 'sbp_remove_query_strings_3' ), 15, 1 );
61
  }
62
 
63
+ // JPEG Compression filter
64
+ add_filter( 'jpeg_quality', array( $this, 'filter_image_quality' ) );
65
+ add_filter( 'wp_editor_set_quality', array( $this, 'filter_image_quality' ) );
66
+
67
  } // END public public function __construct
68
 
69
 
70
+ /*--------------------------------------------------------------------------------------------------------
71
+ Init the CSS Optimizer actions
72
+ ---------------------------------------------------------------------------------------------------------*/
73
+
74
+ function sbp_init() {
75
+
76
+ global $sbp_options;
77
+
78
+ if ( isset( $sbp_options['sbp_css_async'] ) ) {
79
+ add_action( 'wp_print_styles', array( $this, 'sbp_print_styles' ), SBP_FOOTER );
80
+ add_action( 'wp_footer', array( $this, 'sbp_print_delayed_styles' ), SBP_FOOTER+1 );
81
+ }
82
+
83
+ }
84
+
85
+
86
+ /*--------------------------------------------------------------------------------------------------------
87
+ Get image quality value if it's set. Otherwise it's set to 90
88
+ ---------------------------------------------------------------------------------------------------------*/
89
+
90
+ function filter_image_quality() {
91
+
92
+ if ( get_option( 'sbp_integer' ) ) {
93
+ $sbp_compression = get_option( 'sbp_integer' );
94
+ } else {
95
+ $sbp_compression = 90;
96
+ }
97
+
98
+ return $sbp_compression;
99
+ }
100
+
101
+
102
+ /*--------------------------------------------------------------------------------------------------------
103
+ ACTION wp_print_styles
104
+ ---------------------------------------------------------------------------------------------------------*/
105
+
106
+ function sbp_print_styles() {
107
+ global $sbp_styles_are_async;
108
+ global $sbp_styles;
109
+ global $sbp_options;
110
+
111
+ if ( is_admin() || !empty( $sbp_styles_are_async ) ) {
112
+ return;
113
+ }
114
+
115
+ if ( isset( $sbp_options['sbp_css_minify'] ) ) {
116
+ $minify = true;
117
+ }else{
118
+ $minify = false;
119
+ }
120
+
121
+ $sbp_styles_are_async = true;
122
+
123
+ $sbp_styles = sbp_generate_styles_list();
124
+
125
+ if ( !isset( $sbp_options['sbp_footer_css'] ) ) {
126
+
127
+ $not_inlined = array();
128
+
129
+ foreach ( $sbp_styles as $style ) {
130
+ echo "<style type=\"text/css\" ".($style['media'] ? "media=\"{$style['media']}\"" : '' ).">";
131
+ if (!sbp_inline_css($style['src'],$minify)){
132
+ $not_inlined[] = $style;
133
+ }
134
+ echo "</style>";
135
+ }
136
+ if ( !empty( $not_inlined) ) {
137
+ foreach ( $not_inlined as $style ){
138
+ ?><link rel="stylesheet" href="<?php echo $style['src']?>" type="text/css" <?php echo $style['media'] ? "media=\"{$style['media']}\"" : ''?> /><?php
139
+ }
140
+ }
141
+ }
142
+
143
+ sbp_unregister_styles();
144
+ }
145
+
146
+
147
+ /*--------------------------------------------------------------------------------------------------------
148
+ ACTION wp_footer
149
+ ---------------------------------------------------------------------------------------------------------*/
150
+
151
+ function sbp_print_delayed_styles() {
152
+
153
+ global $sbp_styles;
154
+ global $sbp_options;
155
+
156
+ if ( isset( $sbp_options['sbp_css_minify'] ) ) {
157
+ $minify = true;
158
+ }else{
159
+ $minify = false;
160
+ }
161
+
162
+ if ( isset( $sbp_options['sbp_footer_css'] ) ) {
163
+
164
+ $not_inlined = array();
165
+ foreach ( $sbp_styles as $style ) {
166
+ echo "<style type=\"text/css\" ".($style['media'] ? "media=\"{$style['media']}\"" : '' ).">";
167
+ if ( !sbp_inline_css($style['src'],$minify) ) {
168
+ $not_inlined[] = $style;
169
+ }
170
+ echo "</style>";
171
+ }
172
+ if ( !empty( $not_inlined ) ) {
173
+ foreach ( $not_inlined as $style ) {
174
+ ?><link rel="stylesheet" href="<?php echo $style['src']?>" type="text/css" <?php echo $style['media'] ? "media=\"{$style['media']}\"" : ''?> /><?php
175
+ }
176
+ }
177
+ }
178
+ }
179
+
180
+
181
  /*--------------------------------------------------------------------------------------------------------
182
  Moves scripts to the footer to decrease page load times, while keeping stylesheets in the header
183
  ---------------------------------------------------------------------------------------------------------*/
197
  } // END function sbp_move_scripts_to_footer
198
 
199
 
200
+ /*--------------------------------------------------------------------------------------------------------
201
  Show Number of Queries and Page Load Time
202
+ ---------------------------------------------------------------------------------------------------------*/
203
 
204
  function sbp_show_page_load_stats() {
205
  $timer_stop = timer_stop( 0, 2 ); // to display milliseconds instead of seconds usethe following: $timer_stop = 1000 * ( float ) timer_stop( 0, 4 );
209
  }
210
 
211
 
212
+ /*--------------------------------------------------------------------------------------------------------
213
  Use Google Libraries
214
+ ---------------------------------------------------------------------------------------------------------*/
215
 
216
  function sbp_use_google_libraries() {
217
 
218
  require_once( SPEED_BOOSTER_PACK_PATH . 'inc/use-google-libraries.php' );
219
 
220
+ if ( class_exists( 'SBP_GoogleLibraries' ) ) {
221
+ SBP_GoogleLibraries::configure_plugin();
222
 
223
  }
224
 
225
  } // End function sbp_use_google_libraries()
226
 
227
 
228
+ /*--------------------------------------------------------------------------------------------------------
229
  Lazy Load for images
230
+ ---------------------------------------------------------------------------------------------------------*/
231
 
232
  function sbp_lazy_load_for_images() {
233
 
236
  } // End function sbp_lazy_load_for_images()
237
 
238
 
239
+ /*--------------------------------------------------------------------------------------------------------
240
+ CSS Optimizer
241
+ ---------------------------------------------------------------------------------------------------------*/
242
+
243
+ function sbp_css_optimizer() {
244
+
245
+ require_once( SPEED_BOOSTER_PACK_PATH . 'inc/css-optimizer.php' );
246
+
247
+ } // End function sbp_css_optimizer()
248
+
249
+
250
+ /*--------------------------------------------------------------------------------------------------------
251
  Defer parsing of JavaScript
252
+ ---------------------------------------------------------------------------------------------------------*/
253
 
254
  function sbp_defer_parsing_of_js ( $url ) {
255
 
266
  } // END function sbp_defer_parsing_of_js
267
 
268
 
269
+ /*--------------------------------------------------------------------------------------------------------
270
  Remove query strings from static resources
271
+ ---------------------------------------------------------------------------------------------------------*/
272
 
273
  function sbp_remove_query_strings_1( $src ) { // remove "?ver" string
274
  $rqsfsr = explode( '?ver', $src );
286
  }
287
 
288
 
289
+ /*--------------------------------------------------------------------------------------------------------
290
  Dequeue extra Font Awesome stylesheet
291
+ ---------------------------------------------------------------------------------------------------------*/
292
 
293
  function sbp_no_more_fontawesome() {
294
  global $wp_styles;
311
  } // End function dfa_no_more_fontawesome
312
 
313
 
314
+ /*--------------------------------------------------------------------------------------------------------
315
  Remove junk header tags
316
+ ---------------------------------------------------------------------------------------------------------*/
317
 
318
  public function sbp_junk_header_tags() {
319
 
352
 
353
  } // END public function sbp_junk_header_tags
354
 
 
355
  } // END class Speed_Booster_Pack_Core
356
 
357
  } // END if(!class_exists('Speed_Booster_Pack_Core'))
inc/css-optimizer.php ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*--------------------------------------------------------------------------------------------------------
4
+ CSS OPTIMIZER - Generate Styles List
5
+ ---------------------------------------------------------------------------------------------------------*/
6
+
7
+ function sbp_generate_styles_list() {
8
+
9
+ global $wp_styles;
10
+
11
+ $list = array();
12
+ if ( isset( $wp_styles->queue ) && is_array( $wp_styles->queue ) ) {
13
+ foreach ( $wp_styles->queue as $style ) {
14
+
15
+ $list[] = array(
16
+ 'src' => $wp_styles->registered[$style]->src,
17
+ 'media' => $wp_styles->registered[$style]->args
18
+ );
19
+ }
20
+ }
21
+
22
+ return $list;
23
+
24
+ } // END function sbp_generate_styles_list
25
+
26
+
27
+ /*--------------------------------------------------------------------------------------------------------
28
+ CSS OPTIMIZER - Deregister all styles
29
+ ---------------------------------------------------------------------------------------------------------*/
30
+
31
+ function sbp_unregister_styles() {
32
+
33
+ global $wp_styles;
34
+
35
+ if ( isset( $wp_styles->queue ) && is_array( $wp_styles->queue ) ) {
36
+
37
+ foreach ( $wp_styles->queue as $style ){
38
+ wp_dequeue_style( $style );
39
+ wp_deregister_style( $style );
40
+ }
41
+ }
42
+
43
+ } // END function sbp_unregister_styles
44
+
45
+
46
+ /*--------------------------------------------------------------------------------------------------------
47
+ CSS OPTIMIZER - Generate inline styles
48
+ ---------------------------------------------------------------------------------------------------------*/
49
+
50
+ function sbp_inline_css( $url, $minify = true ) {
51
+
52
+ $base_url = get_bloginfo( 'wpurl' );
53
+ $path = false;
54
+
55
+ if ( strpos( $url, $base_url ) !== FALSE ) {
56
+
57
+ $path = str_replace( $base_url,rtrim(ABSPATH,'/'),$url );
58
+
59
+ } elseif ( $url[0]=='/' && $url[1]!='/' ) {
60
+
61
+ $path = rtrim( ABSPATH,'/' ).$url;
62
+ $url = $base_url.$url;
63
+ }
64
+
65
+ if ( $path && file_exists( $path ) ){
66
+
67
+ $css = file_get_contents( $path );
68
+
69
+ if ( $minify ){
70
+ $css = sbp_minify_css( $css );
71
+ }
72
+
73
+ $css = sbp_rebuilding_css_urls( $css, $url );
74
+
75
+ echo $css;
76
+ return true;
77
+
78
+ } else {
79
+
80
+ return false;
81
+ }
82
+
83
+ } // END function sbp_inline_css
84
+
85
+
86
+ /*--------------------------------------------------------------------------------------------------------
87
+ CSS OPTIMIZER - Rebuilding CSS URLs
88
+ ---------------------------------------------------------------------------------------------------------*/
89
+
90
+ function sbp_rebuilding_css_urls($css,$url){
91
+ $css_dir = substr($url,0,strrpos($url,'/'));
92
+ $css = preg_replace("/url\((?!data:)['\"]?([^\/][^'\"\)]*)['\"]?\)/i","url({$css_dir}/$1)",$css);
93
+
94
+ return $css;
95
+ }
96
+
97
+
98
+ /*--------------------------------------------------------------------------------------------------------
99
+ CSS OPTIMIZER - Minify All CSS
100
+ ---------------------------------------------------------------------------------------------------------*/
101
+
102
+
103
+ function sbp_minify_css( $css ) {
104
+
105
+ $css = sbp_remove_multiline_comments( $css );
106
+ $css = str_replace(array("\t","\n","\r"),' ',$css);
107
+ $cnt = 1;
108
+
109
+ while ($cnt>0) {
110
+ $css = str_replace(' ',' ',$css,$cnt);
111
+ }
112
+
113
+ $css = str_replace(array(' {','{ '),'{',$css);
114
+ $css = str_replace(array(' }','} ',';}'),'}',$css);
115
+ $css = str_replace(': ',':',$css);
116
+ $css = str_replace('; ',';',$css);
117
+ $css = str_replace(', ',',',$css);
118
+
119
+ return $css;
120
+ }
121
+
122
+
123
+ /*--------------------------------------------------------------------------------------------------------
124
+ CSS OPTIMIZER - Remove multi-line comments from CSS
125
+ ---------------------------------------------------------------------------------------------------------*/
126
+
127
+ function sbp_remove_multiline_comments( $code,$method=0 ) {
128
+
129
+ switch ( $method ) {
130
+ case 1:{
131
+
132
+ $code = preg_replace( '/\s*(?!<\")\/\*[^\*]+\*\/(?!\")\s*/' , '' , $code );
133
+ break;
134
+ }
135
+
136
+ case 0:
137
+
138
+ default :{
139
+
140
+ $open_pos = strpos($code,'/*');
141
+ while ( $open_pos !== FALSE ){
142
+ $close_pos = strpos($code,'*/',$open_pos)+2;
143
+ if ($close_pos){
144
+ $code = substr($code,0,$open_pos) . substr($code,$close_pos);
145
+ } else {
146
+ $code = substr($code,0,$open_pos);
147
+ }
148
+
149
+ $open_pos = strpos($code,'/*',$open_pos);
150
+ }
151
+
152
+ break;
153
+ }
154
+ }
155
+
156
+ return $code;
157
+ }
inc/js/jquery.sonar.js DELETED
@@ -1,421 +0,0 @@
1
- /*
2
- An elem for determining if an elem is within a certain
3
- distance from the edge above or below the screen, and attaching
4
- a function to execute once the elem is in view.
5
-
6
- General Usage:
7
-
8
- * Place the library anywhere in your JavaScript code before you
9
- intend to call the function.
10
-
11
- * To initialize Sonar with a different default distance, modify
12
- the sonar = Sonar() line immediately following the Sonar
13
- library definition. Example:
14
-
15
- sonar=Sonar(100); // Initializes Sonar with a 100px default distance.
16
-
17
- Note:
18
-
19
- * The default distance is 0 pixels.
20
-
21
-
22
- sonar.detect() Usage
23
-
24
- * Use sonar.detect(elem, distance) to check if the
25
- elem is within screen boundaries.
26
-
27
- @elem - The elem you want to detect visibility.
28
- @distance - The distance from the screen edge that should
29
- count in the check. Uses default distance if not specified.
30
-
31
- * Note: sonar.detect() adds a property to
32
- ojbects called sonarElemTop. Test to ensure there
33
- aren't any conflicts with your code. If there
34
- are, rename sonarElemTop to something else in the code.
35
-
36
- * sonar.detect() returns:
37
- true if the elem is within the screen boundaries
38
- false if th elem is out of the screen boundaries
39
-
40
- Example:
41
-
42
- Here's how to check if an advertisment is visible on a
43
- page that has the id, "ad".
44
-
45
- if (sonar.detect(document.getElementById("ad")))
46
- {
47
- alert('The ad is visible on screen!');
48
- }
49
- else
50
- {
51
- alert ('The ad is not on screen!);
52
- }
53
-
54
- sonar.add() Usage
55
-
56
- * This method stores elems that are then polled
57
- on user scroll by the Sonar.detect() method.
58
-
59
- * Polling initializes once the sonar.add() method is passed
60
- an elem with the following properties:
61
-
62
- obj : A reference to the elem to observe until it is within
63
- the specified distance (px).
64
-
65
- id : An alternative to the obj parameter, an "id" can be used
66
- to grab the elem to observe.
67
-
68
- call: The function to call when the elem is within the
69
- specified distance (px). The @elem argument will
70
- include the elem that triggered the callback.
71
-
72
- px : The specified distance to include as being visible on
73
- screen. This property is optional (default is 0).
74
-
75
- Example:
76
-
77
- sonar.add(
78
- {
79
- obj: document.getElementById("0026-get-out-the-way"),
80
- call: function(elem) // elem will include the elem that triggered the function.
81
- {
82
- swfelem.embedSWF("../player.swf", "0026-get-out-the-way", "640", "500", "9.0.0",
83
- {}, {file: "0026-get-out-the-way.flv", fullscreen: true},
84
- {allowfullscreen: true, allowscriptaccess: "always"});
85
- },
86
- px: 400
87
- });
88
-
89
- You can also specify an id tag to be grabbed instead of the elem:
90
-
91
- sonar.add(
92
- {
93
- id: "0026-get-out-the-way",
94
- call: function(elem) // elem will include the elem that triggered the function.
95
- {
96
- swfelem.embedSWF("../player.swf", "0026-get-out-the-way", "640", "500", "9.0.0",
97
- {}, {file: "0026-get-out-the-way.flv", fullscreen: true},
98
- {allowfullscreen: true, allowscriptaccess: "always"});
99
- },
100
- px: 400
101
- });
102
-
103
- Notes:
104
-
105
- * Setting the body or html of your page to 100% will cause sonar to have
106
- an invalid height calculation in Firefox. It is recommended that you
107
- do not set this CSS property.
108
-
109
- Example:
110
-
111
- html, body {
112
- height:100%; // Do not do this.
113
- }
114
-
115
- * If you want to set the default distance to something other
116
- than 0, either update the property directly in the code or
117
- you can do this:
118
-
119
- sonar.blip.d = 100; // Where 100 = 100 pixels above and below the screen edge.
120
-
121
- * Sleep well at night knowing Sonar automatically cleans up the
122
- event listeners on the scroll event once all calls have executed.
123
-
124
- Code History:
125
-
126
- v3 :: 8/14/2009 - David Artz (david.artz@corp.aol.com)
127
- * Fixed a bug in the polling code where splicing caused our
128
- for loop to skip over the next iteration in the loop. This
129
- caused some images in the poll to be detected when they
130
- should have been.
131
- * Re-factored Sonar to use the "Module" JavaScript library
132
- pattern, making our private variables and functions more
133
- private and inaccessible from the public interface.
134
- * Updated the sonar.add() function to return true or false,
135
- useful for determining if Sonar added the elem to the
136
- poll or executed its callback immediately.
137
-
138
- v2 :: 3/24/2009 - David Artz (david.artz@corp.aol.com)
139
- * Added support for IE 8.
140
- * Updated the way scroll top and screen height are detected, now
141
- works in IE/FF/Safari quirks mode.
142
- * Added null check for IE, it was polling for an elem that had recently
143
- been spliced out of the array. Nasty.
144
- * Modified for loop to use standard syntax. for (i in x) is known to be
145
- buggy with JS frameworks that override arrays.
146
- * Added sonar.b property to cache the body element (improving lookup time).
147
-
148
- v1 :: 11/18/2008 - David Artz (david.artz@corp.aol.com)
149
- * Officially released code for general use.
150
-
151
- */
152
-
153
- (function( $, win, doc, undefined ){
154
-
155
- $.fn.sonar = function( distance, full ){
156
- // No callbacks, return the results from Sonar for
157
- // the first element in the stack.
158
- if ( typeof distance === "boolean" ) {
159
- full = distance;
160
- distance = undefined;
161
- }
162
-
163
- return $.sonar( this[0], distance, full );
164
- };
165
-
166
- var body = doc.body,
167
- $win = $(win),
168
-
169
- onScreenEvent = "scrollin",
170
- offScreenEvent = "scrollout",
171
-
172
- detect = function( elem, distance, full ){
173
-
174
- if ( elem ) {
175
-
176
- // Cache the body elem in our private global.
177
- body || ( body = doc.body );
178
-
179
- var parentElem = elem, // Clone the elem for use in our loop.
180
-
181
- elemTop = 0, // The resets the calculated elem top to 0.
182
-
183
- // Used to recalculate elem.sonarElemTop if body height changes.
184
- bodyHeight = body.offsetHeight,
185
-
186
- // NCZ: I don't think you need innerHeight, I believe all major browsers support clientHeight.
187
- screenHeight = win.innerHeight || doc.documentElement.clientHeight || body.clientHeight || 0, // Height of the screen.
188
-
189
- // NCZ: I don't think you need pageYOffset, I believe all major browsers support scrollTop.
190
- scrollTop = doc.documentElement.scrollTop || win.pageYOffset || body.scrollTop || 0, // How far the user scrolled down.
191
- elemHeight = elem.offsetHeight || 0; // Height of the element.
192
-
193
- // If our custom "sonarTop" variable is undefined, or the document body
194
- // height has changed since the last time we ran sonar.detect()...
195
- if ( !elem.sonarElemTop || elem.sonarBodyHeight !== bodyHeight ) {
196
-
197
- // Loop through the offsetParents to calculate it.
198
- if ( parentElem.offsetParent ) {
199
- do {
200
- elemTop += parentElem.offsetTop;
201
- }
202
- while ( parentElem = parentElem.offsetParent );
203
- }
204
-
205
- // Set the custom property (sonarTop) to avoid future attempts to calculate
206
- // the distance on this elem from the top of the page.
207
- elem.sonarElemTop = elemTop;
208
-
209
- // Along the same lines, store the body height when we calculated
210
- // the elem's top.
211
- elem.sonarBodyHeight = bodyHeight;
212
- }
213
-
214
- // If no distance was given, assume 0.
215
- distance = distance === undefined ? 0 : distance;
216
-
217
- // Dump all calculated variables.
218
- /*
219
- console.dir({
220
- elem: elem,
221
- sonarElemTop: elem.sonarElemTop,
222
- elemHeight: elemHeight,
223
- scrollTop: scrollTop,
224
- screenHeight: screenHeight,
225
- distance: distance,
226
- full: full
227
- });
228
- */
229
-
230
- // If elem bottom is above the screen top and
231
- // the elem top is below the screen bottom, it's false.
232
- // If full is specified, it si subtracted or added
233
- // as needed from the element's height.
234
- return (!(elem.sonarElemTop + (full ? 0 : elemHeight) < scrollTop - distance) &&
235
- !(elem.sonarElemTop + (full ? elemHeight : 0) > scrollTop + screenHeight + distance));
236
- }
237
- },
238
-
239
- // Container for elems needing to be polled.
240
- pollQueue = {},
241
-
242
- // Indicates if scroll events are bound to the poll.
243
- pollActive = 0,
244
-
245
- // Used for debouncing.
246
- pollId,
247
-
248
- // Function that handles polling when the user scrolls.
249
- poll = function(){
250
-
251
- // Debouncing speed optimization. Essentially prevents
252
- // poll requests from queue'ing up and overloading
253
- // the scroll event listener.
254
- pollId && clearTimeout( pollId );
255
- pollId = setTimeout(function(){
256
-
257
- var elem,
258
- elems,
259
- screenEvent,
260
- options,
261
- detected,
262
- i, l;
263
-
264
- for ( screenEvent in pollQueue ) {
265
-
266
- elems = pollQueue[ screenEvent ];
267
-
268
- for (i = 0, l = elems.length; i < l; i++) {
269
-
270
- options = elems[i];
271
- elem = options.elem;
272
-
273
- // console.log("Polling " + elem.id);
274
-
275
- detected = detect( elem, options.px, options.full );
276
-
277
- // If the elem is not detected (offscreen) or detected (onscreen)
278
- // remove the elem from the queue and fire the callback.
279
- if ( screenEvent === offScreenEvent ? !detected : detected ) {
280
- // // console.log(screenEvent);
281
- if (!options.tr) {
282
-
283
- if ( elem[ screenEvent ] ) {
284
- // console.log("triggered:" + elem.id);
285
- // Trigger the onscreen or offscreen event depending
286
- // on the desired event.
287
- $(elem).trigger( screenEvent );
288
-
289
- options.tr = 1;
290
-
291
- // removeSonar was called on this element, clean it up
292
- // instead of triggering the event.
293
- } else {
294
- // console.log("Deleting " + elem.id);
295
-
296
- // Remove this object from the elem poll container.
297
- elems.splice(i, 1);
298
-
299
- // Decrement the counter and length because we just removed
300
- // one from it.
301
- i--;
302
- l--;
303
- }
304
- }
305
- } else {
306
- options.tr = 0;
307
- }
308
- }
309
- }
310
-
311
- }, 0 ); // End setTimeout performance tweak.
312
- },
313
-
314
- removeSonar = function( elem, screenEvent ){
315
- // console.log("Removing " + elem.id);
316
- elem[ screenEvent ] = 0;
317
- },
318
-
319
- addSonar = function( elem, options ) {
320
- // console.log("Really adding " + elem.id);
321
- // Prepare arguments.
322
- var distance = options.px,
323
- full = options.full,
324
- screenEvent = options.evt,
325
- parent = win, // Getting ready to accept parents: options.parent || win,
326
- detected = detect( elem, distance, full /*, parent */ ),
327
- triggered = 0;
328
-
329
- elem[ screenEvent ] = 1;
330
-
331
- // If the elem is not detected (offscreen) or detected (onscreen)
332
- // trigger the event and fire the callback immediately.
333
- if ( screenEvent === offScreenEvent ? !detected : detected ) {
334
- // console.log("Triggering " + elem.id + " " + screenEvent );
335
- // Trigger the onscreen event at the next possible cycle.
336
- // Artz: Ask the jQuery team why I needed to do this.
337
- setTimeout(function(){
338
- $(elem).trigger( screenEvent === offScreenEvent ? offScreenEvent : onScreenEvent );
339
- }, 0);
340
- triggered = 1;
341
- // Otherwise, add it to the polling queue.
342
- }
343
-
344
- // console.log("Adding " + elem.id + " to queue.");
345
- // Push the element and its callback into the poll queue.
346
- pollQueue[ screenEvent ].push({
347
- elem: elem,
348
- px: distance,
349
- full: full,
350
- tr: triggered/* ,
351
- parent: parent */
352
- });
353
-
354
- // Activate the poll if not currently activated.
355
- if ( !pollActive ) {
356
- $win.bind( "scroll", poll );
357
- pollActive = 1;
358
- }
359
-
360
-
361
- // Call the prepare function if there, used to
362
- // prepare the element if we detected it.
363
- // Artz: Not implemented yet...used to preprocess elements in same loop.
364
- /*
365
- if ( prepCallback ) {
366
- prepCallback.call( elem, elem, detected );
367
- }
368
- */
369
- };
370
-
371
- // Open sonar function up to the public.
372
- $.sonar = detect;
373
-
374
- pollQueue[ onScreenEvent ] = [];
375
- $.event.special[ onScreenEvent ] = {
376
-
377
- add: function( handleObj ) {
378
- var data = handleObj.data || {},
379
- elem = this;
380
-
381
- if (!elem[onScreenEvent]){
382
- addSonar(this, {
383
- px: data.distance,
384
- full: data.full,
385
- evt: onScreenEvent /*,
386
- parent: data.parent */
387
- });
388
- }
389
- },
390
-
391
- remove: function( handleObj ) {
392
- removeSonar( this, onScreenEvent );
393
- }
394
-
395
- };
396
-
397
- pollQueue[ offScreenEvent ] = [];
398
- $.event.special[ offScreenEvent ] = {
399
-
400
- add: function( handleObj ) {
401
-
402
- var data = handleObj.data || {},
403
- elem = this;
404
-
405
- if (!elem[offScreenEvent]){
406
- addSonar(elem, {
407
- px: data.distance,
408
- full: data.full,
409
- evt: offScreenEvent /*,
410
- parent: data.parent */
411
- });
412
- }
413
- },
414
-
415
- remove: function( handleObj ) {
416
- removeSonar( this, offScreenEvent );
417
- }
418
- };
419
-
420
- // console.log(pollQueue);
421
- })( jQuery, window, document );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/js/jquery.sonar.min.js DELETED
@@ -1 +0,0 @@
1
- (function(e,h,l,c){e.fn.sonar=function(o,n){if(typeof o==="boolean"){n=o;o=c}return e.sonar(this[0],o,n)};var f=l.body,a="scrollin",m="scrollout",b=function(r,n,t){if(r){f||(f=l.body);var s=r,u=0,v=f.offsetHeight,o=h.innerHeight||l.documentElement.clientHeight||f.clientHeight||0,q=l.documentElement.scrollTop||h.pageYOffset||f.scrollTop||0,p=r.offsetHeight||0;if(!r.sonarElemTop||r.sonarBodyHeight!==v){if(s.offsetParent){do{u+=s.offsetTop}while(s=s.offsetParent)}r.sonarElemTop=u;r.sonarBodyHeight=v}n=n===c?0:n;return(!(r.sonarElemTop+(t?0:p)<q-n)&&!(r.sonarElemTop+(t?p:0)>q+o+n))}},d={},j=0,i=function(){setTimeout(function(){var s,o,t,q,p,r,n;for(t in d){o=d[t];for(r=0,n=o.length;r<n;r++){q=o[r];s=q.elem;p=b(s,q.px,q.full);if(t===m?!p:p){if(!q.tr){if(s[t]){e(s).trigger(t);q.tr=1}else{o.splice(r,1);r--;n--}}}else{q.tr=0}}}},25)},k=function(n,o){n[o]=0},g=function(r,p){var t=p.px,q=p.full,s=p.evt,o=b(r,t,q),n=0;r[s]=1;if(s===m?!o:o){setTimeout(function(){e(r).trigger(s===m?m:a)},0);n=1}d[s].push({elem:r,px:t,full:q,tr:n});if(!j){e(h).bind("scroll",i);j=1}};e.sonar=b;d[a]=[];e.event.special[a]={add:function(n){var p=n.data||{},o=this;if(!o[a]){g(this,{px:p.distance,full:p.full,evt:a})}},remove:function(n){k(this,a)}};d[m]=[];e.event.special[m]={add:function(n){var p=n.data||{},o=this;if(!o[m]){g(o,{px:p.distance,full:p.full,evt:m})}},remove:function(n){k(this,m)}}})(jQuery,window,document);
 
inc/js/sbp-lazy-load.js DELETED
@@ -1,30 +0,0 @@
1
- (function($) {
2
- lazy_load_init();
3
- $( 'body' ).bind( 'post-load', lazy_load_init ); // Work with WP.com infinite scroll
4
-
5
- function lazy_load_init() {
6
- $( 'img[data-lazy-src]' ).bind( 'scrollin', { distance: 200 }, function() {
7
- sbp_lazy_load_init( this );
8
- });
9
-
10
- // We need to force load gallery images in Jetpack Carousel and give up lazy-loading otherwise images don't show up correctly
11
- $( '[data-carousel-extra]' ).each( function() {
12
- $( this ).find( 'img[data-lazy-src]' ).each( function() {
13
- sbp_lazy_load_init( this );
14
- } );
15
- } );
16
- }
17
-
18
- function sbp_lazy_load_init( img ) {
19
- var $img = jQuery( img ),
20
- src = $img.attr( 'data-lazy-src' );
21
-
22
- $img.unbind( 'scrollin' ) // remove event binding
23
- .hide()
24
- .removeAttr( 'data-lazy-src' )
25
- .attr( 'data-lazy-loaded', 'true' );
26
-
27
- img.src = src;
28
- $img.fadeIn();
29
- }
30
- })(jQuery);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/lazy-load.php CHANGED
@@ -1,52 +1,52 @@
1
- <?php
2
- /* Lazy Load v. 0.5 => Lazy load images to improve page load times. Uses jQuery.sonar to only load an image when it's visible in the viewport.
3
- * http://wordpress.org/plugins/lazy-load/
4
- * Author & copyright WordPress.com VIP team, TechCrunch 2011 Redesign team, and Jake Goldman (10up LLC).
5
- * Uses jQuery.sonar by Dave Artz (AOL): http://www.artzstudio.com/files/jquery-boston-2010/jquery.sonar/
6
- * License: GPL2 */
7
-
8
- if ( ! class_exists( 'Speed_Booster_Pack_Lazy_Load' ) ) :
9
-
10
- class Speed_Booster_Pack_Lazy_Load {
11
-
12
- static function init() {
13
- if ( is_admin() )
14
- return;
15
-
16
- add_filter( 'the_content', array( __CLASS__, 'add_sbp_image_placeholders' ), 99 ); // run this later, so other content filters have run, including image_add_wh on WP.com
17
- add_filter( 'post_thumbnail_html', array( __CLASS__, 'add_sbp_image_placeholders' ), 11 );
18
- add_filter( 'get_avatar', array( __CLASS__, 'add_sbp_image_placeholders' ), 11 );
19
- }
20
-
21
-
22
-
23
- static function add_sbp_image_placeholders( $content ) {
24
- // Don't lazyload for feeds, previews, mobile
25
- if( is_feed() || is_preview() || ( function_exists( 'is_mobile' ) && is_mobile() ) )
26
- return $content;
27
-
28
- // Don't lazy-load if the content has already been run through previously
29
- if ( false !== strpos( $content, 'data-lazy-src' ) )
30
- return $content;
31
-
32
- // In case you want to change the placeholder image
33
- $sbp_placeholder_image = apply_filters( 'lazyload_images_placeholder_image', self::get_url( 'images/1x1.trans.gif' ) );
34
-
35
- // This is a pretty simple regex, but it works
36
- $content = preg_replace( '#<img([^>]+?)src=[\'"]?([^\'"\s>]+)[\'"]?([^>]*)>#', sprintf( '<img${1}src="%s" data-lazy-src="${2}"${3}><noscript><img${1}src="${2}"${3}></noscript>', $sbp_placeholder_image ), $content );
37
-
38
- return $content;
39
- }
40
-
41
- static function get_url( $path = '' ) {
42
- return plugins_url( ltrim( $path, '/' ), __FILE__ );
43
- }
44
- }
45
-
46
- function sbp_lazyload_images_add_placeholders( $content ) {
47
- return Speed_Booster_Pack_Lazy_Load::add_sbp_image_placeholders( $content );
48
- }
49
-
50
- Speed_Booster_Pack_Lazy_Load::init();
51
-
52
- endif;
1
+ <?php
2
+ /* Lazy Load v. 0.5 => Lazy load images to improve page load times. Uses jQuery.sonar to only load an image when it's visible in the viewport.
3
+ * http://wordpress.org/plugins/lazy-load/
4
+ * Author & copyright WordPress.com VIP team, TechCrunch 2011 Redesign team, and Jake Goldman (10up LLC).
5
+ * Uses jQuery.sonar by Dave Artz (AOL): http://www.artzstudio.com/files/jquery-boston-2010/jquery.sonar/
6
+ * License: GPL2 */
7
+
8
+ if ( ! class_exists( 'Speed_Booster_Pack_Lazy_Load' ) ) :
9
+
10
+ class Speed_Booster_Pack_Lazy_Load {
11
+
12
+ static function init() {
13
+ if ( is_admin() )
14
+ return;
15
+
16
+ add_filter( 'the_content', array( __CLASS__, 'add_sbp_image_placeholders' ), 99 ); // run this later, so other content filters have run, including image_add_wh on WP.com
17
+ add_filter( 'post_thumbnail_html', array( __CLASS__, 'add_sbp_image_placeholders' ), 11 );
18
+ add_filter( 'get_avatar', array( __CLASS__, 'add_sbp_image_placeholders' ), 11 );
19
+ }
20
+
21
+
22
+
23
+ static function add_sbp_image_placeholders( $content ) {
24
+ // Don't lazyload for feeds, previews, mobile
25
+ if( is_feed() || is_preview() || ( function_exists( 'is_mobile' ) && is_mobile() ) )
26
+ return $content;
27
+
28
+ // Don't lazy-load if the content has already been run through previously
29
+ if ( false !== strpos( $content, 'data-lazy-src' ) )
30
+ return $content;
31
+
32
+ // In case you want to change the placeholder image
33
+ $sbp_placeholder_image = apply_filters( 'lazyload_images_placeholder_image', self::get_url( 'images/1x1.trans.gif' ) );
34
+
35
+ // This is a pretty simple regex, but it works
36
+ $content = preg_replace( '#<img([^>]+?)src=[\'"]?([^\'"\s>]+)[\'"]?([^>]*)>#', sprintf( '<img${1}src="%s" data-lazy-src="${2}"${3}><noscript><img${1}src="${2}"${3}></noscript>', $sbp_placeholder_image ), $content );
37
+
38
+ return $content;
39
+ }
40
+
41
+ static function get_url( $path = '' ) {
42
+ return plugins_url( ltrim( $path, '/' ), __FILE__ );
43
+ }
44
+ }
45
+
46
+ function sbp_lazyload_images_add_placeholders( $content ) {
47
+ return Speed_Booster_Pack_Lazy_Load::add_sbp_image_placeholders( $content );
48
+ }
49
+
50
+ Speed_Booster_Pack_Lazy_Load::init();
51
+
52
+ endif;
inc/settings.php CHANGED
@@ -21,6 +21,7 @@ if( !class_exists( 'Speed_Booster_Pack_Options' ) ) {
21
  public function sbp_admin_init() {
22
 
23
  register_setting( 'speed_booster_settings_group', 'sbp_settings' );
 
24
 
25
  } // END public function admin_init
26
 
@@ -46,12 +47,18 @@ if( !class_exists( 'Speed_Booster_Pack_Options' ) ) {
46
 
47
  global $sbp_options;
48
 
49
- // Global variables used to show the front end page speed and processed queries, in plugin options page
50
  $url = get_site_url();
51
  $page_time = get_option( 'sbp_page_time' );
52
  $page_queries = get_option( 'sbp_page_queries' );
53
  $response = wp_remote_get( $url, array() );
54
 
 
 
 
 
 
 
55
  // Render the plugin options page HTML
56
  include( SPEED_BOOSTER_PACK_PATH . 'css/dynamic-css.php' );
57
 
@@ -61,6 +68,7 @@ if( !class_exists( 'Speed_Booster_Pack_Options' ) ) {
61
  } // END public function sbp_plugin_settings_page()
62
 
63
 
 
64
  } // END class Speed_Booster_Pack_Options
65
 
66
  } // END if(!class_exists('Speed_Booster_Pack_Options'))
21
  public function sbp_admin_init() {
22
 
23
  register_setting( 'speed_booster_settings_group', 'sbp_settings' );
24
+ register_setting( 'speed_booster_settings_group', 'sbp_integer' );
25
 
26
  } // END public function admin_init
27
 
47
 
48
  global $sbp_options;
49
 
50
+ // Global variables used in plugin options page
51
  $url = get_site_url();
52
  $page_time = get_option( 'sbp_page_time' );
53
  $page_queries = get_option( 'sbp_page_queries' );
54
  $response = wp_remote_get( $url, array() );
55
 
56
+ if ( get_option( 'sbp_integer' ) ) {
57
+ $this->image_compression = get_option( 'sbp_integer' );
58
+ } else {
59
+ $this->image_compression = 90;
60
+ }
61
+
62
  // Render the plugin options page HTML
63
  include( SPEED_BOOSTER_PACK_PATH . 'css/dynamic-css.php' );
64
 
68
  } // END public function sbp_plugin_settings_page()
69
 
70
 
71
+
72
  } // END class Speed_Booster_Pack_Options
73
 
74
  } // END if(!class_exists('Speed_Booster_Pack_Options'))
inc/template/options.php CHANGED
@@ -1,188 +1,267 @@
1
  <div class="wrap">
2
 
3
- <div class="sb-pack">
4
 
5
- <h2 class="sbp-icon"><?php echo esc_html( get_admin_page_title() ); ?></h2>
6
 
7
- <div class="welcome-panel">
8
 
9
- <div class="welcome-panel-content">
10
 
11
- <form method="post" action="options.php">
12
 
13
- <?php settings_fields( 'speed_booster_settings_group' ); ?>
14
 
15
- <h3><?php _e( 'Speed Up Your Website!', 'sb-pack' ); ?></h3>
16
 
17
- <div class="welcome-panel-column-container">
18
 
19
- <div class="welcome-panel-column">
20
 
21
- <h4><?php _e( 'Javascripts options', 'sb-pack' ); ?></h4>
22
 
23
- <p>
24
- <input id="sbp_settings[jquery_to_footer]" name="sbp_settings[jquery_to_footer]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['jquery_to_footer'] ) ); ?> />
25
- <label for="sbp_settings[jquery_to_footer]"><?php _e( 'Move scripts to the footer', 'sb-pack' ); ?></label>
26
- </p>
27
 
28
- <p>
29
- <input id="sbp_settings[use_google_libs]" name="sbp_settings[use_google_libs]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['use_google_libs'] ) ); ?> />
30
- <label for="sbp_settings[use_google_libs]"><?php _e( 'Load JS from Google Libraries', 'sb-pack' ); ?></label>
31
- </p>
32
 
33
- <p>
34
- <input id="sbp_settings[defer_parsing]" name="sbp_settings[defer_parsing]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['defer_parsing'] ) ); ?> />
35
- <label for="sbp_settings[defer_parsing]"><?php _e( 'Defer parsing of javascript files', 'sb-pack' ); ?></label>
36
- </p>
37
 
38
- <p>
39
- <input id="sbp_settings[query_strings]" name="sbp_settings[query_strings]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['query_strings'] ) ); ?> />
40
- <label for="sbp_settings[query_strings]"><?php _e( 'Remove query strings from static resources', 'sb-pack' ); ?></label>
41
- </p>
42
 
43
- <p>
44
- <input id="sbp_settings[lazy_load]" name="sbp_settings[lazy_load]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['lazy_load'] ) ); ?> />
45
- <label for="sbp_settings[lazy_load]"><?php _e( 'Lazy load images to improve page load times', 'sb-pack' ); ?></label>
46
- </p>
47
 
48
- <p>
49
- <input id="sbp_settings[font_awesome]" name="sbp_settings[font_awesome]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['font_awesome'] ) ); ?> />
50
- <label for="sbp_settings[font_awesome]"><?php _e( 'Removes additional Font Awesome stylesheets', 'sb-pack' ); ?></label>
51
- </p>
52
 
 
 
 
 
53
 
 
54
 
55
- </div> <!-- END welcome-panel-column -->
56
 
 
 
57
 
58
- <div class="welcome-panel-column">
59
- <h4> <?php _e( 'Remove junk header tags', 'sb-pack' ); ?></h4>
 
 
60
 
61
- <p>
62
- <input id="sbp_settings[remove_rsd_link]" name="sbp_settings[remove_rsd_link]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_rsd_link'] ) ); ?> />
63
- <label for="sbp_settings[remove_rsd_link]"><?php _e( 'Remove RSD Link', 'sb-pack' ); ?></label>
64
- </p>
65
 
66
- <p>
67
- <input id="sbp_settings[remove_wsl]" name="sbp_settings[remove_wsl]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_wsl'] ) ); ?> />
68
- <label for="sbp_settings[remove_wsl]"><?php _e( 'Remove WordPress Shortlink', 'sb-pack' ); ?></label>
69
- </p>
70
 
71
- <p>
72
- <input id="sbp_settings[remove_adjacent]" name="sbp_settings[remove_adjacent]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_adjacent'] ) ); ?> />
73
- <label for="sbp_settings[remove_adjacent]"><?php _e( 'Remove Adjacent Posts Links', 'sb-pack' ); ?></label>
74
- </p>
75
 
76
- <p>
77
- <input id="sbp_settings[wml_link]" name="sbp_settings[wml_link]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['wml_link'] ) ); ?> />
78
- <label for="sbp_settings[wml_link]"><?php _e( 'Remove Windows Live Writer Manifest', 'sb-pack' ); ?></label>
79
- </p>
80
 
81
- <p>
82
- <input id="sbp_settings[wp_generator]" name="sbp_settings[wp_generator]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['wp_generator'] ) ); ?> />
83
- <label for="sbp_settings[wp_generator]"><?php _e( 'Remove the WordPress Version Number', 'sb-pack' ); ?></label>
84
- </p>
85
 
86
- <p>
87
- <input id="sbp_settings[remove_all_feeds]" name="sbp_settings[remove_all_feeds]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_all_feeds'] ) ); ?> />
88
- <label for="sbp_settings[remove_all_feeds]"><?php _e( 'Remove all rss feed links from WP Head', 'sb-pack' ); ?></label>
89
- </p>
90
 
91
- </div> <!-- END welcome-panel-column -->
92
 
 
93
 
94
- <div class="welcome-panel-column welcome-panel-last">
95
 
96
- <h4> <?php _e( 'Page Load Stats', 'sb-pack' ); ?></h4>
97
 
98
- <span class="sbp-stats"><?php _e( 'Page loading time in seconds:', 'sb-pack' ); ?></span>
 
 
99
 
100
- <div class="sbp-progress time">
101
- <span></span>
102
- </div>
 
 
103
 
104
- <div class="sbp-values">
105
- <div class="sbp-numbers">
106
- <?php echo $page_time; ?> <?php _e( 's', 'sb-pack' ); ?>
107
- </div>
108
- </div>
109
 
110
- <span class="sbp-stats"><?php _e( 'Number of executed queries:', 'sb-pack' ); ?></span>
 
 
111
 
112
- <div class="sbp-progress queries">
113
- <span></span>
114
- </div>
 
 
115
 
116
- <div class="sbp-values">
117
- <div class="sbp-numbers">
118
- <?php echo $page_queries; ?> <?php _e( 'q', 'sb-pack' ); ?>
119
- </div>
120
- </div>
121
 
122
- <div class="php-version">
123
- <strong><?php _e( 'PHP Version:', 'sb-pack' ); ?></strong> <span><?php echo PHP_VERSION; ?>&nbsp;/&nbsp;<?php echo (PHP_INT_SIZE * 8) . __('Bit OS'); ?></span>
124
- </div>
125
 
126
- </div> <!-- END welcome-panel-column welcome-panel-last -->
127
 
128
- </div> <!-- END welcome-panel-column-container -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
129
 
130
- <?php submit_button() ?>
131
 
132
- </form>
133
 
134
- </div> <!-- END welcome-panel-content -->
135
 
136
- </div> <!-- END welcome-panel -->
137
 
138
- <!-- START docs and version areas -->
139
 
140
- <div class="sbp-title-div">
141
- <div class="sbp-title">
142
- <?php _e( 'What do these settings mean?', 'sb-pack' ); ?>
143
- </div>
144
- </div>
145
 
146
- <div class="sbp-box"><!-- start sbp-box div 1 -->
147
 
148
- <div class="sbp-box-legend">
149
- <i class="sbp-icon-help"></i>
150
- </div>
151
 
152
- <p><a href="http://tiguandesign.com/docs/speed-booster/" target="_blank" title="Documentation"><?php _e( 'Read online plugin documentation', 'sb-pack' ); ?></a><?php _e( ' with guidelines to modify/enhance your website.', 'sb-pack' ); ?></p>
153
 
154
- </div> <!-- end sbp-box div 1-->
155
 
156
- <div class="sbp-title-div">
157
- <div class="sbp-title">
158
- <?php _e( 'Version Information', 'sb-pack' ); ?>
159
- </div>
160
- </div>
161
 
162
- <div class="sbp-box"><!-- start sbp-box div 2 -->
163
 
164
- <div class="sbp-box-version">
165
- <i class="sbp-icon-version"></i>
166
- </div>
167
 
168
- <div class="sbp-infos">
169
- <?php _e( 'Installed Version:', 'sb-pack' ); ?>
170
- <span>
171
- <?php echo SPEED_BOOSTER_PACK_VERSION; ?>
172
- </span>
173
- </div>
174
 
175
- <div class="sbp-infos">
176
- <?php _e( 'Released date:', 'sb-pack' ); ?>
177
- <span>
178
- <?php echo SPEED_BOOSTER_PACK_RELEASE_DATE; ?>
179
- </span>
180
- </div>
181
 
182
- </div> <!-- end sbp-box div 2 -->
183
 
184
- <!-- END docs and version areas -->
185
 
186
  </div> <!-- END sb-pack-->
187
 
188
- </div> <!-- end wrap div -->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <div class="wrap">
2
 
3
+ <div class="sb-pack">
4
 
5
+ <h2 class="sbp-icon"><?php echo esc_html( get_admin_page_title() ); ?></h2>
6
 
7
+ <div class="welcome-panel">
8
 
9
+ <div class="welcome-panel-content">
10
 
11
+ <form method="post" action="options.php">
12
 
13
+ <?php settings_fields( 'speed_booster_settings_group' ); ?>
14
 
15
+ <h3><?php _e( 'Boost Your Website Speed!', 'sb-pack' ); ?></h3>
16
 
17
+ <div class="welcome-panel-column-container">
18
 
19
+ <div class="welcome-panel-column">
20
 
21
+ <h4><?php _e( 'Main plugin options', 'sb-pack' ); ?></h4>
22
 
 
 
 
 
23
 
24
+ <p>
25
+ <input id="sbp_settings[jquery_to_footer]" name="sbp_settings[jquery_to_footer]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['jquery_to_footer'] ) ); ?> />
26
+ <label for="sbp_settings[jquery_to_footer]"><?php _e( 'Move scripts to the footer', 'sb-pack' ); ?></label>
27
+ </p>
28
 
29
+ <p>
30
+ <input id="sbp_settings[use_google_libs]" name="sbp_settings[use_google_libs]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['use_google_libs'] ) ); ?> />
31
+ <label for="sbp_settings[use_google_libs]"><?php _e( 'Load JS from Google Libraries', 'sb-pack' ); ?></label>
32
+ </p>
33
 
34
+ <p>
35
+ <input id="sbp_settings[defer_parsing]" name="sbp_settings[defer_parsing]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['defer_parsing'] ) ); ?> />
36
+ <label for="sbp_settings[defer_parsing]"><?php _e( 'Defer parsing of javascript files', 'sb-pack' ); ?></label>
37
+ </p>
38
 
39
+ <p>
40
+ <input id="sbp_settings[query_strings]" name="sbp_settings[query_strings]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['query_strings'] ) ); ?> />
41
+ <label for="sbp_settings[query_strings]"><?php _e( 'Remove query strings from static resources', 'sb-pack' ); ?></label>
42
+ </p>
43
 
44
+ <p>
45
+ <input id="sbp_settings[lazy_load]" name="sbp_settings[lazy_load]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['lazy_load'] ) ); ?> />
46
+ <label for="sbp_settings[lazy_load]"><?php _e( 'Lazy load images to improve page load times', 'sb-pack' ); ?></label>
47
+ </p>
48
 
49
+ <p>
50
+ <input id="sbp_settings[font_awesome]" name="sbp_settings[font_awesome]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['font_awesome'] ) ); ?> />
51
+ <label for="sbp_settings[font_awesome]"><?php _e( 'Removes extra Font Awesome stylesheets', 'sb-pack' ); ?></label>
52
+ </p>
53
 
54
+ </div> <!-- END welcome-panel-column -->
55
 
 
56
 
57
+ <div class="welcome-panel-column">
58
+ <h4> <?php _e( 'Remove junk header tags', 'sb-pack' ); ?></h4>
59
 
60
+ <p>
61
+ <input id="sbp_settings[remove_rsd_link]" name="sbp_settings[remove_rsd_link]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_rsd_link'] ) ); ?> />
62
+ <label for="sbp_settings[remove_rsd_link]"><?php _e( 'Remove RSD Link', 'sb-pack' ); ?></label>
63
+ </p>
64
 
65
+ <p>
66
+ <input id="sbp_settings[remove_wsl]" name="sbp_settings[remove_wsl]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_wsl'] ) ); ?> />
67
+ <label for="sbp_settings[remove_wsl]"><?php _e( 'Remove WordPress Shortlink', 'sb-pack' ); ?></label>
68
+ </p>
69
 
70
+ <p>
71
+ <input id="sbp_settings[remove_adjacent]" name="sbp_settings[remove_adjacent]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_adjacent'] ) ); ?> />
72
+ <label for="sbp_settings[remove_adjacent]"><?php _e( 'Remove Adjacent Posts Links', 'sb-pack' ); ?></label>
73
+ </p>
74
 
75
+ <p>
76
+ <input id="sbp_settings[wml_link]" name="sbp_settings[wml_link]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['wml_link'] ) ); ?> />
77
+ <label for="sbp_settings[wml_link]"><?php _e( 'Remove Windows Live Writer Manifest', 'sb-pack' ); ?></label>
78
+ </p>
79
 
80
+ <p>
81
+ <input id="sbp_settings[wp_generator]" name="sbp_settings[wp_generator]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['wp_generator'] ) ); ?> />
82
+ <label for="sbp_settings[wp_generator]"><?php _e( 'Remove the WordPress Version Number', 'sb-pack' ); ?></label>
83
+ </p>
84
 
85
+ <p>
86
+ <input id="sbp_settings[remove_all_feeds]" name="sbp_settings[remove_all_feeds]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['remove_all_feeds'] ) ); ?> />
87
+ <label for="sbp_settings[remove_all_feeds]"><?php _e( 'Remove all rss feed links from WP Head', 'sb-pack' ); ?></label>
88
+ </p>
89
 
90
+ </div> <!-- END welcome-panel-column -->
 
 
 
91
 
 
92
 
93
+ <div class="welcome-panel-column welcome-panel-last">
94
 
95
+ <h4> <?php _e( 'Home Page Load Stats', 'sb-pack' ); ?></h4>
96
 
97
+ <span class="sbp-stats"><?php _e( 'Page loading time in seconds:', 'sb-pack' ); ?></span>
98
 
99
+ <div class="sbp-progress time">
100
+ <span></span>
101
+ </div>
102
 
103
+ <div class="sbp-values">
104
+ <div class="sbp-numbers">
105
+ <?php echo $page_time; ?> <?php _e( 's', 'sb-pack' ); ?>
106
+ </div>
107
+ </div>
108
 
109
+ <span class="sbp-stats"><?php _e( 'Number of executed queries:', 'sb-pack' ); ?></span>
 
 
 
 
110
 
111
+ <div class="sbp-progress queries">
112
+ <span></span>
113
+ </div>
114
 
115
+ <div class="sbp-values">
116
+ <div class="sbp-numbers">
117
+ <?php echo $page_queries; ?> <?php _e( 'q', 'sb-pack' ); ?>
118
+ </div>
119
+ </div>
120
 
121
+ <div class="debug-info">
122
+ <strong><?php _e( 'Peak Memory Used:', 'sb-pack' ); ?></strong> <span><?php echo number_format( ( memory_get_peak_usage()/1024/1024 ), 2, ',', '' ) . ' / ' . ini_get( 'memory_limit' ), '<br />'; ?></span>
123
+ <strong><?php _e( 'Active Plugins:', 'sb-pack' ); ?></strong> <span><?php echo count( get_option( 'active_plugins' ) ) ; ?></span>
124
+ </div>
 
125
 
126
+ </div> <!-- END welcome-panel-column welcome-panel-last -->
 
 
127
 
128
+ </div> <!-- END welcome-panel-column-container -->
129
 
130
+ <div class="td-border"></div>
131
+ <div class="wrap">
132
+ <div class="sb-pack">
133
+
134
+ <h3><?php _e( 'Change the default image compression level', 'sb-pack' ); ?></h3>
135
+
136
+ <script type='text/javascript'>
137
+ var jpegCompression = '<?php echo $this->image_compression; ?>';
138
+ </script>
139
+
140
+ <div>
141
+
142
+ <p class="sbp-amount">
143
+ <?php _e( 'Compression level:', 'sb-pack' ); ?><input type="text" class="sbp-amount" id="sbp-amount" />
144
+ </p>
145
+
146
+ <p>
147
+ <div class="sbp-slider" id="sbp-slider"></div>
148
+ <input type="hidden" name="sbp_integer" id="sbp_integer" value="<?php echo $this->image_compression; ?>" />
149
+ </p>
150
+
151
+ <p class="description">
152
+ <?php _e( 'The default image compression setting in WordPress is 90%. Compressing your images further than the default will make your file sizes even smaller and will boost your site performance.', 'sb-pack' ); ?><br />
153
+ <?php _e( 'Note that any changes you make will only affect new images uploaded to your site. If you want to update all of your images with the new sizes, install and run the Regenerate Thumbnails plugin. As a reference, a lower level of compression means more performance. We recommend you choose a compression level between 50 and 75.', 'sb-pack' ); ?>
154
+ </p>
155
+
156
+ </div>
157
+
158
+ <div class="td-border-last"></div>
159
+
160
+ <h3 class="td-margin"><?php _e( 'Still need more speed?', 'sb-pack' ); ?></h3>
161
+
162
+ <p>
163
+ <input id="sbp_css_async" name="sbp_settings[sbp_css_async]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['sbp_css_async'] ) ); ?> />
164
+ <label for="sbp_css_async"><?php _e( 'Load CSS asynchronously', 'sb-pack' ); ?></label>
165
+ </p>
166
+
167
+
168
+ <div id="sbp-css-content">
169
+
170
+ <p>
171
+ <input id="sbp_settings[sbp_css_minify]" name="sbp_settings[sbp_css_minify]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['sbp_css_minify'] ) ); ?> />
172
+ <label for="sbp_settings[sbp_css_minify]"><?php _e( 'Minify all CSS styles', 'sb-pack' ); ?></label>
173
+ </p>
174
+
175
+ <div class="sbp-radio-content">
176
+
177
+ <p>
178
+ <input id="sbp_settings[sbp_footer_css]" name="sbp_settings[sbp_footer_css]" type="checkbox" value="1" <?php checked( 1, isset( $sbp_options['sbp_footer_css'] ) ); ?> />
179
+ <label for="sbp_settings[sbp_footer_css]"><?php _e( 'Insert all CSS styles inline to the footer', 'sb-pack' ); ?></label>
180
+ </p>
181
+
182
+ <p class ="description"><?php _e( '*Inserting all CSS styles inline to the footer will eliminate render-blocking CSS warning in Google Page Speed test. If there is something broken after activation, you need to disable this option. Please note that before enabling this sensitive option, it is strongly recommended that you also enable the "Move scripts to the footer" option.', 'sb-pack' ); ?>
183
+ </p>
184
+
185
+ </div><!-- END sbp-radio-content -->
186
+ </div><!-- END sbp-css-content -->
187
+
188
+ </div><!-- END sb-pack -->
189
+ </div><!-- END wrap -->
190
 
191
+ <?php submit_button() ?>
192
 
193
+ </form>
194
 
195
+ </div> <!-- END welcome-panel-content -->
196
 
197
+ </div> <!-- END welcome-panel -->
198
 
199
+ <!-- START docs and version areas -->
200
 
201
+ <div class="sbp-title-div">
202
+ <div class="sbp-title">
203
+ <?php _e( 'What do these settings mean?', 'sb-pack' ); ?>
204
+ </div>
205
+ </div>
206
 
207
+ <div class="sbp-box"><!-- start sbp-box div 1 -->
208
 
209
+ <div class="sbp-box-legend">
210
+ <i class="sbp-icon-help"></i>
211
+ </div>
212
 
213
+ <p><a href="http://tiguandesign.com/docs/speed-booster/" target="_blank" title="Documentation"><?php _e( 'Read online plugin documentation', 'sb-pack' ); ?></a><?php _e( ' with guidelines to enhance your website performance.', 'sb-pack' ); ?></p>
214
 
215
+ </div> <!-- end sbp-box div 1-->
216
 
217
+ <div class="sbp-title-div">
218
+ <div class="sbp-title">
219
+ <?php _e( 'Version Information', 'sb-pack' ); ?>
220
+ </div>
221
+ </div>
222
 
223
+ <div class="sbp-box"><!-- start sbp-box div 2 -->
224
 
225
+ <div class="sbp-box-version">
226
+ <i class="sbp-icon-version"></i>
227
+ </div>
228
 
229
+ <div class="sbp-infos">
230
+ <?php _e( 'Installed Version:', 'sb-pack' ); ?>
231
+ <span>
232
+ <?php echo SPEED_BOOSTER_PACK_VERSION; ?>
233
+ </span>
234
+ </div>
235
 
236
+ <div class="sbp-infos">
237
+ <?php _e( 'Released date:', 'sb-pack' ); ?>
238
+ <span>
239
+ <?php echo SPEED_BOOSTER_PACK_RELEASE_DATE; ?>
240
+ </span>
241
+ </div>
242
 
243
+ </div> <!-- end sbp-box div 2 -->
244
 
245
+ <!-- END docs and version areas -->
246
 
247
  </div> <!-- END sb-pack-->
248
 
249
+ </div> <!-- end wrap div -->
250
+
251
+ <script>
252
+ if (typeof(jQuery)!='undefined'){
253
+ jQuery(document).ready(function (){
254
+ validate();
255
+ jQuery('input').change(function (){
256
+ validate();
257
+ })
258
+ });
259
+ function validate(){
260
+ if (jQuery('input[id=sbp_css_async]').is(':checked')){
261
+ jQuery('#sbp-css-content').show();
262
+ }else{
263
+ jQuery('#sbp-css-content').hide();
264
+ }
265
+ }
266
+ }
267
+ </script>
inc/use-google-libraries.php CHANGED
@@ -4,9 +4,9 @@
4
  /* Author & copyright (c) 2008-2013 : Jason Penney (email : jpenney@jczorkmid.net ). General Public License v.2.0 */
5
 
6
 
7
- if ( ! class_exists( 'JCP_UseGoogleLibraries' ) ) {
8
 
9
- class JCP_UseGoogleLibraries {
10
 
11
  protected static $instance;
12
  protected static $plugin_file = __FILE__;
@@ -15,7 +15,7 @@ if ( ! class_exists( 'JCP_UseGoogleLibraries' ) ) {
15
 
16
  public static function get_instance() {
17
  if ( ! isset( self::$instance ) ) {
18
- self::$instance = new JCP_UseGoogleLibraries();
19
  }
20
  return self::$instance;
21
  }
@@ -77,7 +77,7 @@ if ( ! class_exists( 'JCP_UseGoogleLibraries' ) ) {
77
  *
78
  * @var string
79
  */
80
- protected static $cache_id = 'JCP_UseGoogleLibraries_cache';
81
 
82
  /**
83
  * transient expiration
@@ -200,19 +200,19 @@ if ( ! class_exists( 'JCP_UseGoogleLibraries' ) ) {
200
  add_action(
201
  'wp_default_scripts',
202
  array(
203
- 'JCP_UseGoogleLibraries',
204
  'replace_default_scripts_action',
205
  ),
206
  1000
207
  );
208
  add_filter(
209
  'script_loader_src',
210
- array( 'JCP_UseGoogleLibraries', 'remove_ver_query_filter' ),
211
  1000
212
  );
213
  add_filter(
214
  'init',
215
- array( 'JCP_UseGoogleLibraries', 'setup_filter' )
216
  );
217
 
218
  // There's a chance some plugin has called wp_enqueue_script
4
  /* Author & copyright (c) 2008-2013 : Jason Penney (email : jpenney@jczorkmid.net ). General Public License v.2.0 */
5
 
6
 
7
+ if ( ! class_exists( 'SBP_GoogleLibraries' ) ) {
8
 
9
+ class SBP_GoogleLibraries {
10
 
11
  protected static $instance;
12
  protected static $plugin_file = __FILE__;
15
 
16
  public static function get_instance() {
17
  if ( ! isset( self::$instance ) ) {
18
+ self::$instance = new SBP_GoogleLibraries();
19
  }
20
  return self::$instance;
21
  }
77
  *
78
  * @var string
79
  */
80
+ protected static $cache_id = 'SBP_GoogleLibraries_cache';
81
 
82
  /**
83
  * transient expiration
200
  add_action(
201
  'wp_default_scripts',
202
  array(
203
+ 'SBP_GoogleLibraries',
204
  'replace_default_scripts_action',
205
  ),
206
  1000
207
  );
208
  add_filter(
209
  'script_loader_src',
210
+ array( 'SBP_GoogleLibraries', 'remove_ver_query_filter' ),
211
  1000
212
  );
213
  add_filter(
214
  'init',
215
+ array( 'SBP_GoogleLibraries', 'setup_filter' )
216
  );
217
 
218
  // There's a chance some plugin has called wp_enqueue_script
js/sbp-slider.js ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery( document ).ready( function () {
2
+ jQuery( ".sbp-slider" ).slider({
3
+ value: jpegCompression,
4
+ min: 0,
5
+ max: 100,
6
+ step: 1,
7
+ slide: function( event, ui ) {
8
+ jQuery( ".sbp-amount" ).val( ui.value );
9
+ jQuery( "#sbp_integer" ).val( ui.value );
10
+ }
11
+ });
12
+ jQuery( ".sbp-amount" ).val( jQuery( ".sbp-slider" ).slider( "value" ) );
13
+ });
lang/ro_RO.mo ADDED
Binary file
lang/ro_RO.po ADDED
@@ -0,0 +1,230 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Content-Type: text/plain; charset=UTF-8\n"
4
+ "Content-Transfer-Encoding: 8bit\n"
5
+ "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
6
+ "2:1));\n"
7
+ "Project-Id-Version: Speed Booster Pack\n"
8
+ "POT-Creation-Date: \n"
9
+ "PO-Revision-Date: \n"
10
+ "Last-Translator: Liviu Costache <tiguan@tiguandesign.com>\n"
11
+ "Language-Team: Tiguandesign.com <tiguan@tiguandesign.com>\n"
12
+ "MIME-Version: 1.0\n"
13
+ "X-Generator: Poedit 1.6.6\n"
14
+ "X-Poedit-KeywordsList: _e;__\n"
15
+ "X-Poedit-Basepath: .\n"
16
+ "Language: ro\n"
17
+ "X-Poedit-SearchPath-0: ..\n"
18
+
19
+ #. Text in echo
20
+ #: speed-booster-pack/inc/template/options.php:213
21
+ msgid " with guidelines to enhance your website performance."
22
+ msgstr "care conţine îndrumari pentru a îmbunătăți performanța site-ul tău."
23
+
24
+ #. Text in echo
25
+ #: speed-booster-pack/inc/template/options.php:182
26
+ msgid ""
27
+ "*Inserting all CSS styles inline to the footer will eliminate render-"
28
+ "blocking CSS warning in Google Page Speed test. If there is something broken "
29
+ "after activation, you need to disable this option. Please note that before "
30
+ "enabling this sensitive option, it is strongly recommended that you also "
31
+ "enable the \"Move scripts to the footer\" option."
32
+ msgstr ""
33
+ "*Încărcând toate stilurile CSS inline în partea de jos a site-ului va "
34
+ "elimina avertizarea din testul Google Page Speed despre JavaScript şi CSS "
35
+ "care blochează redarea conţinutului. Dacă designul site-ului este afectat "
36
+ "sau ceva nu funcţionează după activare, va trebui să dezactivezi această "
37
+ "opţiune. Te rugăm să reţii că înainte de a activă această opţiune sensibilă, "
38
+ "este obligatoriu să ai activată si opţiunea \"Mutaţi script-uri în footer\"."
39
+
40
+ #. Text in echo
41
+ #: speed-booster-pack/inc/template/options.php:123
42
+ msgid "Active Plugins:"
43
+ msgstr "Pluginuri Active:"
44
+
45
+ #. Text in echo
46
+ #: speed-booster-pack/inc/template/options.php:15
47
+ msgid "Boost Your Website Speed!"
48
+ msgstr "Sporeşte-ţi viteza site-ului!"
49
+
50
+ #. Text in echo
51
+ #: speed-booster-pack/inc/template/options.php:134
52
+ msgid "Change the default image compression level"
53
+ msgstr "Schimbă nivelul de compresie al imaginilor"
54
+
55
+ #. Text in echo
56
+ #: speed-booster-pack/inc/template/options.php:143
57
+ msgid "Compression level:"
58
+ msgstr "Nivelul de compresie:"
59
+
60
+ #. Text in echo
61
+ #: speed-booster-pack/inc/template/options.php:36
62
+ msgid "Defer parsing of javascript files"
63
+ msgstr "Amână analizarea fişierelor javascript"
64
+
65
+ #. Text in echo
66
+ #: speed-booster-pack/inc/template/options.php:95
67
+ msgid "Home Page Load Stats"
68
+ msgstr "Încărcarea paginii de bază"
69
+
70
+ #. Text in echo
71
+ #: speed-booster-pack/inc/template/options.php:179
72
+ msgid "Insert all CSS styles inline to the footer"
73
+ msgstr "Încarcă toate stilurile CSS inline în footer"
74
+
75
+ #. Text in echo
76
+ #: speed-booster-pack/inc/template/options.php:230
77
+ msgid "Installed Version:"
78
+ msgstr "Versiunea instalată:"
79
+
80
+ #. Text in echo
81
+ #: speed-booster-pack/inc/template/options.php:46
82
+ msgid "Lazy load images to improve page load times"
83
+ msgstr "Întârzie încărcarea imaginilor"
84
+
85
+ #. Text in echo
86
+ #: speed-booster-pack/inc/template/options.php:164
87
+ msgid "Load CSS asynchronously"
88
+ msgstr "Încărcare CSS în mod asincron"
89
+
90
+ #. Text in echo
91
+ #: speed-booster-pack/inc/template/options.php:31
92
+ msgid "Load JS from Google Libraries"
93
+ msgstr "Încarcă JS din Google Libraries"
94
+
95
+ #. Text in echo
96
+ #: speed-booster-pack/inc/template/options.php:21
97
+ msgid "Main plugin options"
98
+ msgstr "Opţiunile principale"
99
+
100
+ #. Text in echo
101
+ #: speed-booster-pack/inc/template/options.php:172
102
+ msgid "Minify all CSS styles"
103
+ msgstr "Comprimă toate fişierele CSS"
104
+
105
+ #. Text in echo
106
+ #: speed-booster-pack/inc/template/options.php:26
107
+ msgid "Move scripts to the footer"
108
+ msgstr "Muta script-uri in footer"
109
+
110
+ #. Text in echo
111
+ #: speed-booster-pack/inc/template/options.php:153
112
+ msgid ""
113
+ "Note that any changes you make will only affect new images uploaded to your "
114
+ "site. If you want to update all of your images with the new sizes, install "
115
+ "and run the Regenerate Thumbnails plugin. As a reference, a lower level of "
116
+ "compression means more performance. We recommend you choose a compression "
117
+ "level between 50 and 75."
118
+ msgstr ""
119
+ "Reţine că după alegerea nivelului de compresie, modificările vor afecta "
120
+ "numai imaginile noi încărcate pe site. Dacă doreşti să actualizezi toate "
121
+ "imaginile la noul nivel de compresie, instalează şi rulează plugin-ul "
122
+ "Regenerate Thumbnails. Că referinţă, un nivel mai scăzut de comprimare "
123
+ "înseamnă mai multă performanţă a site-ului. Îţi recomandăm să alegi un nivel "
124
+ "de compresie cu valorea cuprinsă între 50 şi 75."
125
+
126
+ #. Text in echo
127
+ #: speed-booster-pack/inc/template/options.php:109
128
+ msgid "Number of executed queries:"
129
+ msgstr "Numărul de interogări(queries) executate:"
130
+
131
+ #. Text in echo
132
+ #: speed-booster-pack/inc/template/options.php:97
133
+ msgid "Page loading time in seconds:"
134
+ msgstr "Timpul de încărcare a paginii în secunde:"
135
+
136
+ #. Text in echo
137
+ #: speed-booster-pack/inc/template/options.php:122
138
+ msgid "Peak Memory Used:"
139
+ msgstr "Memoria folosită"
140
+
141
+ #. Text in echo
142
+ #: speed-booster-pack/inc/template/options.php:213
143
+ msgid "Read online plugin documentation"
144
+ msgstr "Citeşte online documentaţia pluginului"
145
+
146
+ #. Text in echo
147
+ #: speed-booster-pack/inc/template/options.php:237
148
+ msgid "Released date:"
149
+ msgstr "Data lansării:"
150
+
151
+ #. Text in echo
152
+ #: speed-booster-pack/inc/template/options.php:72
153
+ msgid "Remove Adjacent Posts Links"
154
+ msgstr "Elimină Adjacent Posts Links"
155
+
156
+ #. Text in echo
157
+ #: speed-booster-pack/inc/template/options.php:62
158
+ msgid "Remove RSD Link"
159
+ msgstr "Elimină linkul RSD"
160
+
161
+ #. Text in echo
162
+ #: speed-booster-pack/inc/template/options.php:77
163
+ msgid "Remove Windows Live Writer Manifest"
164
+ msgstr "Elimină Windows Live Writer Manifest"
165
+
166
+ #. Text in echo
167
+ #: speed-booster-pack/inc/template/options.php:67
168
+ msgid "Remove WordPress Shortlink"
169
+ msgstr "Elimină WordPress Shortlink"
170
+
171
+ #. Text in echo
172
+ #: speed-booster-pack/inc/template/options.php:87
173
+ msgid "Remove all rss feed links from WP Head"
174
+ msgstr "Elimină toate link-urile RSS feed"
175
+
176
+ #. Text in echo
177
+ #: speed-booster-pack/inc/template/options.php:58
178
+ msgid "Remove junk header tags"
179
+ msgstr "Elimină tag-urile inutile din header"
180
+
181
+ #. Text in echo
182
+ #: speed-booster-pack/inc/template/options.php:41
183
+ msgid "Remove query strings from static resources"
184
+ msgstr "Elimină versiunea din resursele statice"
185
+
186
+ #. Text in echo
187
+ #: speed-booster-pack/inc/template/options.php:82
188
+ msgid "Remove the WordPress Version Number"
189
+ msgstr "Elimină numărul versiunii WordPress"
190
+
191
+ #. Text in echo
192
+ #: speed-booster-pack/inc/template/options.php:51
193
+ msgid "Removes extra Font Awesome stylesheets"
194
+ msgstr "Elimină extra Font Awesome CSS"
195
+
196
+ #. Text in echo
197
+ #: speed-booster-pack/inc/template/options.php:160
198
+ msgid "Still need more speed?"
199
+ msgstr "Încă ai nevoie de mai multă viteză?"
200
+
201
+ #. Text in echo
202
+ #: speed-booster-pack/inc/template/options.php:152
203
+ msgid ""
204
+ "The default image compression setting in WordPress is 90%. Compressing your "
205
+ "images further than the default will make your file sizes even smaller and "
206
+ "will boost your site performance."
207
+ msgstr ""
208
+ "Nivelul implicit de comprimare a imaginilor în WordPress este de 90%. "
209
+ "Comprimarea imaginilor la un nivel mai mare decât nivelul implicit va "
210
+ "micşora dimensiunile fişierelor şi va stimula performanta site-ului tău."
211
+
212
+ #. Text in echo
213
+ #: speed-booster-pack/inc/template/options.php:219
214
+ msgid "Version Information"
215
+ msgstr "Informaţii despre versiune"
216
+
217
+ #. Text in echo
218
+ #: speed-booster-pack/inc/template/options.php:203
219
+ msgid "What do these settings mean?"
220
+ msgstr "Ce reprezintă toate aceste opţiuni?"
221
+
222
+ #. Text in echo
223
+ #: speed-booster-pack/inc/template/options.php:117
224
+ msgid "q"
225
+ msgstr "q"
226
+
227
+ #. Text in echo
228
+ #: speed-booster-pack/inc/template/options.php:105
229
+ msgid "s"
230
+ msgstr "s"
lang/sb-pack.mo CHANGED
Binary file
lang/sb-pack.po CHANGED
@@ -2,134 +2,213 @@ msgid ""
2
  msgstr ""
3
  "Content-Type: text/plain; charset=UTF-8\n"
4
  "Content-Transfer-Encoding: 8bit\n"
5
- "Project-Id-Version: Speed Booster Pack 1.4\n"
 
6
  "POT-Creation-Date: \n"
7
  "PO-Revision-Date: \n"
8
  "Last-Translator: Liviu Costache <tiguan@tiguandesign.com>\n"
9
- "Language-Team: <tiguan@tiguandesign.com>\n"
10
  "MIME-Version: 1.0\n"
11
- "Language: en\n"
12
- "X-Generator: Poedit 1.6.5\n"
13
- "X-Poedit-KeywordsList: __;_e\n"
14
  "X-Poedit-Basepath: .\n"
 
15
  "X-Poedit-SearchPath-0: ..\n"
16
 
17
  #. Text in echo
18
- #: speed-booster-pack/inc/template/options.php:136
19
- msgid " with guidelines to modify/enhance your website."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  msgstr ""
21
 
22
  #. Text in echo
23
- #: speed-booster-pack/inc/template/options.php:35
 
 
 
 
 
24
  msgid "Defer parsing of javascript files"
25
  msgstr ""
26
 
27
  #. Text in echo
28
- #: speed-booster-pack/inc/template/options.php:153
 
 
 
 
 
 
 
 
 
 
29
  msgid "Installed Version:"
30
  msgstr ""
31
 
32
  #. Text in echo
33
- #: speed-booster-pack/inc/template/options.php:21
34
- msgid "Javascripts options"
 
 
 
 
 
35
  msgstr ""
36
 
37
  #. Text in echo
38
- #: speed-booster-pack/inc/template/options.php:30
39
  msgid "Load JS from Google Libraries"
40
  msgstr ""
41
 
42
  #. Text in echo
43
- #: speed-booster-pack/inc/template/options.php:25
 
 
 
 
 
 
 
 
 
 
44
  msgid "Move scripts to the footer"
45
  msgstr ""
46
 
47
  #. Text in echo
48
- #: speed-booster-pack/inc/template/options.php:98
 
 
 
 
 
 
 
 
 
 
49
  msgid "Number of executed queries:"
50
  msgstr ""
51
 
52
  #. Text in echo
53
- #: speed-booster-pack/inc/template/options.php:84
54
- msgid "Page Load Stats"
55
  msgstr ""
56
 
57
  #. Text in echo
58
- #: speed-booster-pack/inc/template/options.php:86
59
- msgid "Page loading time:"
60
  msgstr ""
61
 
62
  #. Text in echo
63
- #: speed-booster-pack/inc/template/options.php:136
64
  msgid "Read online plugin documentation"
65
  msgstr ""
66
 
67
  #. Text in echo
68
- #: speed-booster-pack/inc/template/options.php:160
69
  msgid "Released date:"
70
  msgstr ""
71
 
72
  #. Text in echo
73
- #: speed-booster-pack/inc/template/options.php:66
74
  msgid "Remove Adjacent Posts Links"
75
  msgstr ""
76
 
77
  #. Text in echo
78
- #: speed-booster-pack/inc/template/options.php:56
79
  msgid "Remove RSD Link"
80
  msgstr ""
81
 
82
  #. Text in echo
83
- #: speed-booster-pack/inc/template/options.php:71
84
  msgid "Remove Windows Live Writer Manifest"
85
  msgstr ""
86
 
87
  #. Text in echo
88
- #: speed-booster-pack/inc/template/options.php:61
89
  msgid "Remove WordPress Shortlink"
90
  msgstr ""
91
 
92
  #. Text in echo
93
- #: speed-booster-pack/inc/template/options.php:52
 
 
 
 
 
94
  msgid "Remove junk header tags"
95
  msgstr ""
96
 
97
  #. Text in echo
98
- #: speed-booster-pack/inc/template/options.php:40
99
  msgid "Remove query strings from static resources"
100
  msgstr ""
101
 
102
  #. Text in echo
103
- #: speed-booster-pack/inc/template/options.php:76
104
  msgid "Remove the WordPress Version Number"
105
  msgstr ""
106
 
107
  #. Text in echo
108
- #: speed-booster-pack/inc/template/options.php:45
109
- msgid "Removes additional Font Awesome stylesheets"
110
  msgstr ""
111
 
112
  #. Text in echo
113
- #: speed-booster-pack/inc/template/options.php:15
114
- msgid "Speed Up Your Website!"
 
 
 
 
 
 
 
 
115
  msgstr ""
116
 
117
  #. Text in echo
118
- #: speed-booster-pack/inc/template/options.php:142
119
  msgid "Version Information"
120
  msgstr ""
121
 
122
  #. Text in echo
123
- #: speed-booster-pack/inc/template/options.php:126
124
  msgid "What do these settings mean?"
125
  msgstr ""
126
 
127
  #. Text in echo
128
- #: speed-booster-pack/inc/template/options.php:106
129
  msgid "q"
130
  msgstr ""
131
 
132
  #. Text in echo
133
- #: speed-booster-pack/inc/template/options.php:94
134
  msgid "s"
135
  msgstr ""
2
  msgstr ""
3
  "Content-Type: text/plain; charset=UTF-8\n"
4
  "Content-Transfer-Encoding: 8bit\n"
5
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
6
+ "Project-Id-Version: Speed Booster Pack\n"
7
  "POT-Creation-Date: \n"
8
  "PO-Revision-Date: \n"
9
  "Last-Translator: Liviu Costache <tiguan@tiguandesign.com>\n"
10
+ "Language-Team: Tiguandesign.com <tiguan@tiguandesign.com>\n"
11
  "MIME-Version: 1.0\n"
12
+ "X-Generator: Poedit 1.6.6\n"
13
+ "X-Poedit-KeywordsList: _e;__\n"
 
14
  "X-Poedit-Basepath: .\n"
15
+ "Language: en\n"
16
  "X-Poedit-SearchPath-0: ..\n"
17
 
18
  #. Text in echo
19
+ #: speed-booster-pack/inc/template/options.php:213
20
+ msgid " with guidelines to enhance your website performance."
21
+ msgstr ""
22
+
23
+ #. Text in echo
24
+ #: speed-booster-pack/inc/template/options.php:182
25
+ msgid ""
26
+ "*Inserting all CSS styles inline to the footer will eliminate render-"
27
+ "blocking CSS warning in Google Page Speed test. If there is something broken "
28
+ "after activation, you need to disable this option. Please note that before "
29
+ "enabling this sensitive option, it is strongly recommended that you also "
30
+ "enable the \"Move scripts to the footer\" option."
31
+ msgstr ""
32
+
33
+ #. Text in echo
34
+ #: speed-booster-pack/inc/template/options.php:123
35
+ msgid "Active Plugins:"
36
+ msgstr ""
37
+
38
+ #. Text in echo
39
+ #: speed-booster-pack/inc/template/options.php:15
40
+ msgid "Boost Your Website Speed!"
41
+ msgstr ""
42
+
43
+ #. Text in echo
44
+ #: speed-booster-pack/inc/template/options.php:134
45
+ msgid "Change the default image compression level"
46
  msgstr ""
47
 
48
  #. Text in echo
49
+ #: speed-booster-pack/inc/template/options.php:143
50
+ msgid "Compression level:"
51
+ msgstr ""
52
+
53
+ #. Text in echo
54
+ #: speed-booster-pack/inc/template/options.php:36
55
  msgid "Defer parsing of javascript files"
56
  msgstr ""
57
 
58
  #. Text in echo
59
+ #: speed-booster-pack/inc/template/options.php:95
60
+ msgid "Home Page Load Stats"
61
+ msgstr ""
62
+
63
+ #. Text in echo
64
+ #: speed-booster-pack/inc/template/options.php:179
65
+ msgid "Insert all CSS styles inline to the footer"
66
+ msgstr ""
67
+
68
+ #. Text in echo
69
+ #: speed-booster-pack/inc/template/options.php:230
70
  msgid "Installed Version:"
71
  msgstr ""
72
 
73
  #. Text in echo
74
+ #: speed-booster-pack/inc/template/options.php:46
75
+ msgid "Lazy load images to improve page load times"
76
+ msgstr ""
77
+
78
+ #. Text in echo
79
+ #: speed-booster-pack/inc/template/options.php:164
80
+ msgid "Load CSS asynchronously"
81
  msgstr ""
82
 
83
  #. Text in echo
84
+ #: speed-booster-pack/inc/template/options.php:31
85
  msgid "Load JS from Google Libraries"
86
  msgstr ""
87
 
88
  #. Text in echo
89
+ #: speed-booster-pack/inc/template/options.php:21
90
+ msgid "Main plugin options"
91
+ msgstr ""
92
+
93
+ #. Text in echo
94
+ #: speed-booster-pack/inc/template/options.php:172
95
+ msgid "Minify all CSS styles"
96
+ msgstr ""
97
+
98
+ #. Text in echo
99
+ #: speed-booster-pack/inc/template/options.php:26
100
  msgid "Move scripts to the footer"
101
  msgstr ""
102
 
103
  #. Text in echo
104
+ #: speed-booster-pack/inc/template/options.php:153
105
+ msgid ""
106
+ "Note that any changes you make will only affect new images uploaded to your "
107
+ "site. If you want to update all of your images with the new sizes, install "
108
+ "and run the Regenerate Thumbnails plugin. As a reference, a lower level of "
109
+ "compression means more performance. We recommend you choose a compression "
110
+ "level between 50 and 75."
111
+ msgstr ""
112
+
113
+ #. Text in echo
114
+ #: speed-booster-pack/inc/template/options.php:109
115
  msgid "Number of executed queries:"
116
  msgstr ""
117
 
118
  #. Text in echo
119
+ #: speed-booster-pack/inc/template/options.php:97
120
+ msgid "Page loading time in seconds:"
121
  msgstr ""
122
 
123
  #. Text in echo
124
+ #: speed-booster-pack/inc/template/options.php:122
125
+ msgid "Peak Memory Used:"
126
  msgstr ""
127
 
128
  #. Text in echo
129
+ #: speed-booster-pack/inc/template/options.php:213
130
  msgid "Read online plugin documentation"
131
  msgstr ""
132
 
133
  #. Text in echo
134
+ #: speed-booster-pack/inc/template/options.php:237
135
  msgid "Released date:"
136
  msgstr ""
137
 
138
  #. Text in echo
139
+ #: speed-booster-pack/inc/template/options.php:72
140
  msgid "Remove Adjacent Posts Links"
141
  msgstr ""
142
 
143
  #. Text in echo
144
+ #: speed-booster-pack/inc/template/options.php:62
145
  msgid "Remove RSD Link"
146
  msgstr ""
147
 
148
  #. Text in echo
149
+ #: speed-booster-pack/inc/template/options.php:77
150
  msgid "Remove Windows Live Writer Manifest"
151
  msgstr ""
152
 
153
  #. Text in echo
154
+ #: speed-booster-pack/inc/template/options.php:67
155
  msgid "Remove WordPress Shortlink"
156
  msgstr ""
157
 
158
  #. Text in echo
159
+ #: speed-booster-pack/inc/template/options.php:87
160
+ msgid "Remove all rss feed links from WP Head"
161
+ msgstr ""
162
+
163
+ #. Text in echo
164
+ #: speed-booster-pack/inc/template/options.php:58
165
  msgid "Remove junk header tags"
166
  msgstr ""
167
 
168
  #. Text in echo
169
+ #: speed-booster-pack/inc/template/options.php:41
170
  msgid "Remove query strings from static resources"
171
  msgstr ""
172
 
173
  #. Text in echo
174
+ #: speed-booster-pack/inc/template/options.php:82
175
  msgid "Remove the WordPress Version Number"
176
  msgstr ""
177
 
178
  #. Text in echo
179
+ #: speed-booster-pack/inc/template/options.php:51
180
+ msgid "Removes extra Font Awesome stylesheets"
181
  msgstr ""
182
 
183
  #. Text in echo
184
+ #: speed-booster-pack/inc/template/options.php:160
185
+ msgid "Still need more speed?"
186
+ msgstr ""
187
+
188
+ #. Text in echo
189
+ #: speed-booster-pack/inc/template/options.php:152
190
+ msgid ""
191
+ "The default image compression setting in WordPress is 90%. Compressing your "
192
+ "images further than the default will make your file sizes even smaller and "
193
+ "will boost your site performance."
194
  msgstr ""
195
 
196
  #. Text in echo
197
+ #: speed-booster-pack/inc/template/options.php:219
198
  msgid "Version Information"
199
  msgstr ""
200
 
201
  #. Text in echo
202
+ #: speed-booster-pack/inc/template/options.php:203
203
  msgid "What do these settings mean?"
204
  msgstr ""
205
 
206
  #. Text in echo
207
+ #: speed-booster-pack/inc/template/options.php:117
208
  msgid "q"
209
  msgstr ""
210
 
211
  #. Text in echo
212
+ #: speed-booster-pack/inc/template/options.php:105
213
  msgid "s"
214
  msgstr ""
lang/sb-pack.pot ADDED
@@ -0,0 +1,214 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Content-Type: text/plain; charset=UTF-8\n"
4
+ "Content-Transfer-Encoding: 8bit\n"
5
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
6
+ "Project-Id-Version: Speed Booster Pack\n"
7
+ "POT-Creation-Date: \n"
8
+ "PO-Revision-Date: \n"
9
+ "Last-Translator: Liviu Costache <tiguan@tiguandesign.com>\n"
10
+ "Language-Team: Tiguandesign.com <tiguan@tiguandesign.com>\n"
11
+ "MIME-Version: 1.0\n"
12
+ "X-Generator: Poedit 1.6.6\n"
13
+ "X-Poedit-KeywordsList: _e;__\n"
14
+ "X-Poedit-Basepath: .\n"
15
+ "Language: en\n"
16
+ "X-Poedit-SearchPath-0: ..\n"
17
+
18
+ #. Text in echo
19
+ #: speed-booster-pack/inc/template/options.php:213
20
+ msgid " with guidelines to enhance your website performance."
21
+ msgstr ""
22
+
23
+ #. Text in echo
24
+ #: speed-booster-pack/inc/template/options.php:182
25
+ msgid ""
26
+ "*Inserting all CSS styles inline to the footer will eliminate render-"
27
+ "blocking CSS warning in Google Page Speed test. If there is something broken "
28
+ "after activation, you need to disable this option. Please note that before "
29
+ "enabling this sensitive option, it is strongly recommended that you also "
30
+ "enable the \"Move scripts to the footer\" option."
31
+ msgstr ""
32
+
33
+ #. Text in echo
34
+ #: speed-booster-pack/inc/template/options.php:123
35
+ msgid "Active Plugins:"
36
+ msgstr ""
37
+
38
+ #. Text in echo
39
+ #: speed-booster-pack/inc/template/options.php:15
40
+ msgid "Boost Your Website Speed!"
41
+ msgstr ""
42
+
43
+ #. Text in echo
44
+ #: speed-booster-pack/inc/template/options.php:134
45
+ msgid "Change the default image compression level"
46
+ msgstr ""
47
+
48
+ #. Text in echo
49
+ #: speed-booster-pack/inc/template/options.php:143
50
+ msgid "Compression level:"
51
+ msgstr ""
52
+
53
+ #. Text in echo
54
+ #: speed-booster-pack/inc/template/options.php:36
55
+ msgid "Defer parsing of javascript files"
56
+ msgstr ""
57
+
58
+ #. Text in echo
59
+ #: speed-booster-pack/inc/template/options.php:95
60
+ msgid "Home Page Load Stats"
61
+ msgstr ""
62
+
63
+ #. Text in echo
64
+ #: speed-booster-pack/inc/template/options.php:179
65
+ msgid "Insert all CSS styles inline to the footer"
66
+ msgstr ""
67
+
68
+ #. Text in echo
69
+ #: speed-booster-pack/inc/template/options.php:230
70
+ msgid "Installed Version:"
71
+ msgstr ""
72
+
73
+ #. Text in echo
74
+ #: speed-booster-pack/inc/template/options.php:46
75
+ msgid "Lazy load images to improve page load times"
76
+ msgstr ""
77
+
78
+ #. Text in echo
79
+ #: speed-booster-pack/inc/template/options.php:164
80
+ msgid "Load CSS asynchronously"
81
+ msgstr ""
82
+
83
+ #. Text in echo
84
+ #: speed-booster-pack/inc/template/options.php:31
85
+ msgid "Load JS from Google Libraries"
86
+ msgstr ""
87
+
88
+ #. Text in echo
89
+ #: speed-booster-pack/inc/template/options.php:21
90
+ msgid "Main plugin options"
91
+ msgstr ""
92
+
93
+ #. Text in echo
94
+ #: speed-booster-pack/inc/template/options.php:172
95
+ msgid "Minify all CSS styles"
96
+ msgstr ""
97
+
98
+ #. Text in echo
99
+ #: speed-booster-pack/inc/template/options.php:26
100
+ msgid "Move scripts to the footer"
101
+ msgstr ""
102
+
103
+ #. Text in echo
104
+ #: speed-booster-pack/inc/template/options.php:153
105
+ msgid ""
106
+ "Note that any changes you make will only affect new images uploaded to your "
107
+ "site. If you want to update all of your images with the new sizes, install "
108
+ "and run the Regenerate Thumbnails plugin. As a reference, a lower level of "
109
+ "compression means more performance. We recommend you choose a compression "
110
+ "level between 50 and 75."
111
+ msgstr ""
112
+
113
+ #. Text in echo
114
+ #: speed-booster-pack/inc/template/options.php:109
115
+ msgid "Number of executed queries:"
116
+ msgstr ""
117
+
118
+ #. Text in echo
119
+ #: speed-booster-pack/inc/template/options.php:97
120
+ msgid "Page loading time in seconds:"
121
+ msgstr ""
122
+
123
+ #. Text in echo
124
+ #: speed-booster-pack/inc/template/options.php:122
125
+ msgid "Peak Memory Used:"
126
+ msgstr ""
127
+
128
+ #. Text in echo
129
+ #: speed-booster-pack/inc/template/options.php:213
130
+ msgid "Read online plugin documentation"
131
+ msgstr ""
132
+
133
+ #. Text in echo
134
+ #: speed-booster-pack/inc/template/options.php:237
135
+ msgid "Released date:"
136
+ msgstr ""
137
+
138
+ #. Text in echo
139
+ #: speed-booster-pack/inc/template/options.php:72
140
+ msgid "Remove Adjacent Posts Links"
141
+ msgstr ""
142
+
143
+ #. Text in echo
144
+ #: speed-booster-pack/inc/template/options.php:62
145
+ msgid "Remove RSD Link"
146
+ msgstr ""
147
+
148
+ #. Text in echo
149
+ #: speed-booster-pack/inc/template/options.php:77
150
+ msgid "Remove Windows Live Writer Manifest"
151
+ msgstr ""
152
+
153
+ #. Text in echo
154
+ #: speed-booster-pack/inc/template/options.php:67
155
+ msgid "Remove WordPress Shortlink"
156
+ msgstr ""
157
+
158
+ #. Text in echo
159
+ #: speed-booster-pack/inc/template/options.php:87
160
+ msgid "Remove all rss feed links from WP Head"
161
+ msgstr ""
162
+
163
+ #. Text in echo
164
+ #: speed-booster-pack/inc/template/options.php:58
165
+ msgid "Remove junk header tags"
166
+ msgstr ""
167
+
168
+ #. Text in echo
169
+ #: speed-booster-pack/inc/template/options.php:41
170
+ msgid "Remove query strings from static resources"
171
+ msgstr ""
172
+
173
+ #. Text in echo
174
+ #: speed-booster-pack/inc/template/options.php:82
175
+ msgid "Remove the WordPress Version Number"
176
+ msgstr ""
177
+
178
+ #. Text in echo
179
+ #: speed-booster-pack/inc/template/options.php:51
180
+ msgid "Removes extra Font Awesome stylesheets"
181
+ msgstr ""
182
+
183
+ #. Text in echo
184
+ #: speed-booster-pack/inc/template/options.php:160
185
+ msgid "Still need more speed?"
186
+ msgstr ""
187
+
188
+ #. Text in echo
189
+ #: speed-booster-pack/inc/template/options.php:152
190
+ msgid ""
191
+ "The default image compression setting in WordPress is 90%. Compressing your "
192
+ "images further than the default will make your file sizes even smaller and "
193
+ "will boost your site performance."
194
+ msgstr ""
195
+
196
+ #. Text in echo
197
+ #: speed-booster-pack/inc/template/options.php:219
198
+ msgid "Version Information"
199
+ msgstr ""
200
+
201
+ #. Text in echo
202
+ #: speed-booster-pack/inc/template/options.php:203
203
+ msgid "What do these settings mean?"
204
+ msgstr ""
205
+
206
+ #. Text in echo
207
+ #: speed-booster-pack/inc/template/options.php:117
208
+ msgid "q"
209
+ msgstr ""
210
+
211
+ #. Text in echo
212
+ #: speed-booster-pack/inc/template/options.php:105
213
+ msgid "s"
214
+ msgstr ""
readme.txt CHANGED
@@ -1,10 +1,10 @@
1
  === Speed Booster Pack ===
2
  Contributors: tiguan
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=EH65WAWPEYPXU
4
- Tags: speed, optimization, performance, speed booster, scripts to the footer, Google Libraries, CDN, defer parsing of javascript, remove query strings, lazy load, lazy load images, GTmetrix, Google PageSpeed, YSlow
5
  Requires at least: 3.6
6
  Tested up to: 3.9.1
7
- Stable tag: 1.7
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -25,13 +25,20 @@ When visitors lands on your site for the first time, you only have 3 seconds to
25
 
26
  = Main Plugin Features =
27
 
 
28
  * **Moves scripts to the footer** to improve page loading speed.
 
 
 
 
29
  * **Loads javascript files from Google Libraries** rather than serving them from your WordPress install directly, to reduce latency, increase parallelism and improve caching.
30
  * **Defers parsing of javascript files** to reduce the initial load time of your page.
31
  * **Removes query strings from static resources** to improve your speed scores.
32
- * **Lazy load images** to improve page load times and save bandwidth.
33
  * **Removes extra Font Awesome stylesheets** added to your theme by certain plugins, if *Font Awesome* is already used in your theme.
34
  * **Removes junk header tags** to clean up your WordPress Header.
 
 
 
35
 
36
  = Page Load Stats =
37
 
@@ -52,9 +59,8 @@ Page Load Stats is a brief statistic displayed in the plugin options page. It di
52
  = Other Notes =
53
 
54
  * For complete usage instructions visit [Plugin Documentation](http://tiguandesign.com/docs/speed-booster/)
55
- * Thanks to [Jason Penney](http://jasonpenney.net/) for Google Libraries feature.
56
- * Credits for Lazy Load feature belongs to: WordPress.com VIP team at Automattic, the TechCrunch 2011 Redesign team, and Jake Goldman (10up LLC).
57
- * Uses [jQuery.sonar](http://www.artzstudio.com/files/jquery-boston-2010/jquery.sonar/) by Dave Artz (AOL).
58
 
59
  == Installation ==
60
 
@@ -65,20 +71,28 @@ Page Load Stats is a brief statistic displayed in the plugin options page. It di
65
  5. A new sub menu item `Speed Booster Pack` will appear in your main Settings menu.
66
 
67
  == Screenshots ==
68
- 1. Plugin options page, simple view (v1.7)
69
 
70
  == Changelog ==
71
 
 
 
 
 
 
 
 
 
72
  = 1.7 =
73
  * Fixed Lazy Load missed js.
74
 
75
  = 1.6 =
76
- * Fixed some errors and missed codes from plugin fuctions.
77
 
78
  = 1.5 =
79
  * Added Lazy Load feature to improve the web page loading times of your images.
80
  * Added an option to remove all rss feed links from WP Head.
81
- * Added plugin options informations to the footer, visible in page source, useful for debugging.
82
 
83
  = 1.4 =
84
  * Added a new option to remove extra Font Awesome stylesheets added to your theme by certain plugins, if Font Awesome is already used in your theme.
@@ -94,4 +108,11 @@ Page Load Stats is a brief statistic displayed in the plugin options page. It di
94
  * Modified Readme file
95
 
96
  = 1.0 =
97
- * Initial release
 
 
 
 
 
 
 
1
  === Speed Booster Pack ===
2
  Contributors: tiguan
3
  Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=EH65WAWPEYPXU
4
+ Tags: speed, optimization, performance, scripts to the footer, google libraries, font awesome cdn, defer parsing of javascript, remove query strings, lazy load images, gtmetrix, google pageSpeed, yslow, eliminate external render-blocking javascript and css, compression, async, render-blocking css
5
  Requires at least: 3.6
6
  Tested up to: 3.9.1
7
+ Stable tag: 1.8
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
25
 
26
  = Main Plugin Features =
27
 
28
+ * **Eliminates external render-blocking javascript and css** in above-the-fold content.
29
  * **Moves scripts to the footer** to improve page loading speed.
30
+ * **Loads CSS asynchronously** to render your page more quickly and get a higher score on the major speed testing services.
31
+ * **Minify and inline all CSS styles and move them to the footer** to eliminate external render-blocking CSS and optimize CSS delivery.
32
+ * **Lazy loads images** to improve page load times and save bandwidth.
33
+ * **Changes image compression level** to keep file sizes smaller.
34
  * **Loads javascript files from Google Libraries** rather than serving them from your WordPress install directly, to reduce latency, increase parallelism and improve caching.
35
  * **Defers parsing of javascript files** to reduce the initial load time of your page.
36
  * **Removes query strings from static resources** to improve your speed scores.
 
37
  * **Removes extra Font Awesome stylesheets** added to your theme by certain plugins, if *Font Awesome* is already used in your theme.
38
  * **Removes junk header tags** to clean up your WordPress Header.
39
+ * **Displays page loading time** in the plugin options page.
40
+ * **Displays the number of executed queries** in the plugin options page.
41
+ * **Displays the Peak Memory Used** in the plugin options page.
42
 
43
  = Page Load Stats =
44
 
59
  = Other Notes =
60
 
61
  * For complete usage instructions visit [Plugin Documentation](http://tiguandesign.com/docs/speed-booster/)
62
+ * Translators are welcome! Translations included:
63
+ * *Romanian ro_RO*
 
64
 
65
  == Installation ==
66
 
71
  5. A new sub menu item `Speed Booster Pack` will appear in your main Settings menu.
72
 
73
  == Screenshots ==
74
+ 1. Plugin options page, simple view (v1.8)
75
 
76
  == Changelog ==
77
 
78
+ = 1.8 =
79
+ * Added option to load CSS asynchronously to render your page more quickly and get a higher score on the major speed testing services
80
+ * Added option to inline and minify all CSS styles and move them to the header or to the footer, to eliminate external render-blocking CSS and optimize CSS delivery.
81
+ * Added option to change the default image compression level, to help your pages load faster and keep file sizes smaller.
82
+ * Added memory usage information and active plugins number in the plugin options page.
83
+ * Replaced PHP version info with memory usage information (more useful).
84
+ * Added Romanian translation and POT file. Translators are welcome!
85
+
86
  = 1.7 =
87
  * Fixed Lazy Load missed js.
88
 
89
  = 1.6 =
90
+ * Fixed some errors and missed codes from plugin functions.
91
 
92
  = 1.5 =
93
  * Added Lazy Load feature to improve the web page loading times of your images.
94
  * Added an option to remove all rss feed links from WP Head.
95
+ * Added plugin options informations to the footer, visible in page source(hidden in front end), useful for debugging.
96
 
97
  = 1.4 =
98
  * Added a new option to remove extra Font Awesome stylesheets added to your theme by certain plugins, if Font Awesome is already used in your theme.
108
  * Modified Readme file
109
 
110
  = 1.0 =
111
+ * Initial release
112
+
113
+ == Credits ==
114
+
115
+ * Thanks to [Jason Penney](http://jasonpenney.net/) for Google Libraries feature.
116
+ * Credits for Lazy Load feature belongs to: WordPress.com VIP team at Automattic, the TechCrunch 2011 Redesign team, and Jake Goldman (10up LLC).
117
+ * CSS option was implemented from Async JS and CSS plugin and updated to our plugin.
118
+ * The plugin uses [jQuery.sonar](http://www.artzstudio.com/files/jquery-boston-2010/jquery.sonar/) by Dave Artz (AOL).
speed-booster-pack.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Speed Booster Pack
4
  * Plugin URI: http://wordpress.org/plugins/speed-booster-pack/
5
  * Description: Speed Booster Pack allows you to improve your page loading speed and get a higher score on the major speed testing services such as <a href="http://gtmetrix.com/">GTmetrix</a>, <a href="http://developers.google.com/speed/pagespeed/insights/">Google PageSpeed</a> or other speed testing tools.
6
- * Version: 1.7
7
  * Author: Tiguan
8
  * Author URI: http://tiguandesign.com
9
  * License: GPLv2
@@ -38,9 +38,9 @@ $sbp_options = get_option( 'sbp_settings', 'checked' ); // retrieve the plugin s
38
 
39
  define( 'SPEED_BOOSTER_PACK_RELEASE_DATE', date_i18n( 'F j, Y', '1400569200' ) ); // Defining plugin release date
40
  define( 'SPEED_BOOSTER_PACK_PATH', plugin_dir_path( __FILE__ ) ); // Defining plugin dir path
41
- define( 'SPEED_BOOSTER_PACK_VERSION', 'v1.7'); // Defining plugin version
42
  define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining plugin name
43
-
44
 
45
  /*----------------------------------------------------------------------------------------------------------
46
  Main Plugin Class
@@ -50,13 +50,19 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
50
 
51
  class Speed_Booster_Pack {
52
 
53
-
54
  /*----------------------------------------------------------------------------------------------------------
55
  Function Construct
56
  -----------------------------------------------------------------------------------------------------------*/
57
 
58
  public function __construct() {
59
 
 
 
 
 
 
 
 
60
  // Load plugin settings page
61
  require_once( SPEED_BOOSTER_PACK_PATH . 'inc/settings.php' );
62
  $Speed_Booster_Pack_Options = new Speed_Booster_Pack_Options();
@@ -65,9 +71,6 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
65
  require_once( SPEED_BOOSTER_PACK_PATH . 'inc/core.php' );
66
  $Speed_Booster_Pack_Core = new Speed_Booster_Pack_Core();
67
 
68
- // load plugin textdomain
69
- load_plugin_textdomain( 'sb-pack', false, dirname( plugin_basename( __FILE__ ) ) . '/lang' );
70
-
71
  // Enqueue admin style
72
  add_action( 'admin_enqueue_scripts', array( $this, 'sbp_enqueue_styles' ) );
73
 
@@ -75,7 +78,7 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
75
  add_action( 'wp_enqueue_scripts', array( $this, 'sbp_enqueue_scripts' ) );
76
 
77
  // Render debugging information
78
- add_action( 'wp_footer', array( $this, 'sbp_debugg' ), 999 );
79
 
80
  // Filters
81
  $this->path = plugin_basename( __FILE__ );
@@ -84,33 +87,49 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
84
  } // END public function __construct
85
 
86
 
 
 
 
 
 
 
 
 
 
87
  /*----------------------------------------------------------------------------------------------------------
88
  Activate the plugin
89
  -----------------------------------------------------------------------------------------------------------*/
90
 
91
- public static function activate() {
92
 
 
93
  $timer_stop = timer_stop( 0, 2 );
94
  $get_num_queries = get_num_queries();
95
 
96
- if (get_option('sbp_page_time') == '') {
97
  update_option( 'sbp_page_time', $timer_stop );
98
  }
99
 
100
- if (get_option('sbp_page_queries') == '') {
101
  update_option( 'sbp_page_queries', $get_num_queries );
102
  }
103
 
104
- } // END public static function activate
 
 
 
 
 
 
105
 
106
 
107
  /*----------------------------------------------------------------------------------------------------------
108
  Deactivate the plugin
109
  -----------------------------------------------------------------------------------------------------------*/
110
 
111
- public static function deactivate() {
112
- // Nothing to do yet
113
- } // END public static function deactivate
114
 
115
 
116
  /*----------------------------------------------------------------------------------------------------------
@@ -123,29 +142,43 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
123
  global $sbp_settings_page;
124
  if ( $hook != $sbp_settings_page )
125
  return;
126
- wp_enqueue_style( 'sbp-styles', plugin_dir_url( __FILE__ ) . 'css/sbp_style.min.css' ); // change to style.dev.css to debug your plugin style
 
127
 
128
  } // End function sbp_enqueue_styles
129
 
130
 
131
  /*----------------------------------------------------------------------------------------------------------
132
- Enqueue Lazy Load scripts
 
 
 
 
 
 
 
 
 
 
 
 
133
  -----------------------------------------------------------------------------------------------------------*/
134
 
135
- static function sbp_enqueue_scripts() {
136
 
137
- global $sbp_options;
138
 
139
- if ( !is_admin() and isset( $sbp_options['lazy_load'] ) ) {
140
 
141
  // We combined 'jquery.sonar.js' and 'lazy-load.js' (commented out below) in a single minified file to reduce the number of js files.
142
- wp_enqueue_script( 'sbp-lazy-load-images', plugin_dir_url( __FILE__ ) . 'js/sbp-lazy-load.min.js', array( 'jquery' ), SPEED_BOOSTER_PACK_VERSION, true );
143
 
144
  // wp_enqueue_script( 'sbp-lazy-load-images', plugin_dir_url( __FILE__ ) . 'js/lazy-load.js', array( 'jquery', 'sbp-jquery-sonar' ), SPEED_BOOSTER_PACK_VERSION, true );
145
  // wp_enqueue_script( 'sbp-jquery-sonar', plugin_dir_url( __FILE__ ) . 'js/jquery.sonar.js', array( 'jquery' ), SPEED_BOOSTER_PACK_VERSION, true );
146
- }
147
  }
148
 
 
 
149
  /*----------------------------------------------------------------------------------------------------------
150
  Add settings link on plugins page
151
  -----------------------------------------------------------------------------------------------------------*/
@@ -170,28 +203,21 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
170
  echo '<!-- We need this for debugging themes using ' . SPEED_BOOSTER_PACK_NAME . ' ' . SPEED_BOOSTER_PACK_VERSION . ' -->' . "\n";
171
 
172
  if ( isset( $sbp_options['jquery_to_footer'] ) ) {
173
- echo '<!-- Move scripts to the footer: active -->' . "\n";
174
- } // End if
175
 
176
- if ( isset( $sbp_options['use_google_libs'] ) ) {
177
- echo '<!-- Load JS from Google Libraries: active -->' . "\n";
178
- } // End if
179
 
180
  if ( isset( $sbp_options['defer_parsing'] ) ) {
181
- echo '<!-- Defer parsing of javascript files: active -->' . "\n";
182
- } // End if
183
-
184
- if ( isset( $sbp_options['query_strings'] ) ) {
185
- echo '<!-- Remove query strings from static resources: active -->' . "\n";
186
- } // End if
187
 
188
- if ( isset( $sbp_options['lazy_load'] ) ) {
189
- echo '<!-- Lazy load images to improve page load times: active -->' . "\n";
190
- } // End if
191
 
192
- if ( isset( $sbp_options['font_awesome'] ) ) {
193
- echo '<!-- Removes additional Font Awesome stylesheets: active -->' . "\n";
194
- } // End if
195
 
196
  } // End function sbp_debugg
197
 
@@ -202,8 +228,8 @@ define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining
202
  if( class_exists( 'Speed_Booster_Pack' ) ) {
203
 
204
  // Installation and uninstallation hooks
205
- register_activation_hook( __FILE__, array( 'Speed_Booster_Pack', 'activate' ) );
206
- register_deactivation_hook( __FILE__, array( 'Speed_Booster_Pack', 'deactivate' ) );
207
 
208
  // instantiate the plugin class
209
  $speed_booster_pack = new Speed_Booster_Pack();
3
  * Plugin Name: Speed Booster Pack
4
  * Plugin URI: http://wordpress.org/plugins/speed-booster-pack/
5
  * Description: Speed Booster Pack allows you to improve your page loading speed and get a higher score on the major speed testing services such as <a href="http://gtmetrix.com/">GTmetrix</a>, <a href="http://developers.google.com/speed/pagespeed/insights/">Google PageSpeed</a> or other speed testing tools.
6
+ * Version: 1.8
7
  * Author: Tiguan
8
  * Author URI: http://tiguandesign.com
9
  * License: GPLv2
38
 
39
  define( 'SPEED_BOOSTER_PACK_RELEASE_DATE', date_i18n( 'F j, Y', '1400569200' ) ); // Defining plugin release date
40
  define( 'SPEED_BOOSTER_PACK_PATH', plugin_dir_path( __FILE__ ) ); // Defining plugin dir path
41
+ define( 'SPEED_BOOSTER_PACK_VERSION', 'v1.8'); // Defining plugin version
42
  define( 'SPEED_BOOSTER_PACK_NAME', 'Speed Booster Pack Plugin'); // Defining plugin name
43
+ define( 'SBP_FOOTER', 9999999 ); // Defining css position
44
 
45
  /*----------------------------------------------------------------------------------------------------------
46
  Main Plugin Class
50
 
51
  class Speed_Booster_Pack {
52
 
 
53
  /*----------------------------------------------------------------------------------------------------------
54
  Function Construct
55
  -----------------------------------------------------------------------------------------------------------*/
56
 
57
  public function __construct() {
58
 
59
+
60
+ // Enqueue admin scripts
61
+ add_action( 'admin_enqueue_scripts', array( $this, 'sbp_admin_enqueue_scripts' ) );
62
+
63
+ // load plugin textdomain
64
+ add_action('init', array( $this, 'sbp_action_init' ) );
65
+
66
  // Load plugin settings page
67
  require_once( SPEED_BOOSTER_PACK_PATH . 'inc/settings.php' );
68
  $Speed_Booster_Pack_Options = new Speed_Booster_Pack_Options();
71
  require_once( SPEED_BOOSTER_PACK_PATH . 'inc/core.php' );
72
  $Speed_Booster_Pack_Core = new Speed_Booster_Pack_Core();
73
 
 
 
 
74
  // Enqueue admin style
75
  add_action( 'admin_enqueue_scripts', array( $this, 'sbp_enqueue_styles' ) );
76
 
78
  add_action( 'wp_enqueue_scripts', array( $this, 'sbp_enqueue_scripts' ) );
79
 
80
  // Render debugging information
81
+ add_action( 'wp_footer', array( $this, 'sbp_debugg' ), SBP_FOOTER+3 );
82
 
83
  // Filters
84
  $this->path = plugin_basename( __FILE__ );
87
  } // END public function __construct
88
 
89
 
90
+ /*----------------------------------------------------------------------------------------------------------
91
+ Load plugin textdomain
92
+ -----------------------------------------------------------------------------------------------------------*/
93
+
94
+ function sbp_action_init() {
95
+ load_plugin_textdomain( 'sb-pack', false, SPEED_BOOSTER_PACK_PATH . 'lang' );
96
+ }
97
+
98
+
99
  /*----------------------------------------------------------------------------------------------------------
100
  Activate the plugin
101
  -----------------------------------------------------------------------------------------------------------*/
102
 
103
+ public static function sbp_activate() {
104
 
105
+ $sbp_options = get_option( 'sbp_settings', '' );
106
  $timer_stop = timer_stop( 0, 2 );
107
  $get_num_queries = get_num_queries();
108
 
109
+ if ( get_option('sbp_page_time') == '' ) {
110
  update_option( 'sbp_page_time', $timer_stop );
111
  }
112
 
113
+ if ( get_option( 'sbp_page_queries') == '' ) {
114
  update_option( 'sbp_page_queries', $get_num_queries );
115
  }
116
 
117
+ if ( get_option('sbp_css_async' ) === FALSE ) {
118
+ update_option( 'sbp_css_async', 1 );
119
+ update_option( 'sbp_css_minify', 1 );
120
+ update_option( 'sbp_footer_css', 0 );
121
+ }
122
+
123
+ } // END public static function sb_activate
124
 
125
 
126
  /*----------------------------------------------------------------------------------------------------------
127
  Deactivate the plugin
128
  -----------------------------------------------------------------------------------------------------------*/
129
 
130
+ public static function sbp_deactivate() {
131
+ delete_option( 'sbp_integer' );
132
+ }
133
 
134
 
135
  /*----------------------------------------------------------------------------------------------------------
142
  global $sbp_settings_page;
143
  if ( $hook != $sbp_settings_page )
144
  return;
145
+ wp_enqueue_style( 'sbp-styles', plugin_dir_url( __FILE__ ) . 'css/sbp_style.min.css' ); // change to style.dev.css to debug the plugin style
146
+ wp_enqueue_style( 'jquery-ui', plugin_dir_url( __FILE__ ) . 'css/jquery-ui.min.css' );
147
 
148
  } // End function sbp_enqueue_styles
149
 
150
 
151
  /*----------------------------------------------------------------------------------------------------------
152
+ Enqueue admin scripts
153
+ -----------------------------------------------------------------------------------------------------------*/
154
+
155
+ function sbp_admin_enqueue_scripts() {
156
+ if ( is_admin() ) {
157
+ // Enqueue scripts for image compression slider
158
+ wp_enqueue_script( 'jquery-ui-slider' );
159
+ wp_enqueue_script( 'sbp-jquery-ui', plugin_dir_url( __FILE__ ) . 'js/sbp-slider.js', array( 'jquery' ), SPEED_BOOSTER_PACK_VERSION, true );
160
+ }
161
+ }
162
+
163
+ /*----------------------------------------------------------------------------------------------------------
164
+ Enqueue front end scripts
165
  -----------------------------------------------------------------------------------------------------------*/
166
 
167
+ static function sbp_enqueue_scripts() {
168
 
169
+ global $sbp_options;
170
 
171
+ if ( !is_admin() and isset( $sbp_options['lazy_load'] ) ) {
172
 
173
  // We combined 'jquery.sonar.js' and 'lazy-load.js' (commented out below) in a single minified file to reduce the number of js files.
174
+ wp_enqueue_script( 'sbp-lazy-load-images', plugin_dir_url( __FILE__ ) . 'js/sbp-lazy-load.min.js', array( 'jquery' ), SPEED_BOOSTER_PACK_VERSION, true );
175
 
176
  // wp_enqueue_script( 'sbp-lazy-load-images', plugin_dir_url( __FILE__ ) . 'js/lazy-load.js', array( 'jquery', 'sbp-jquery-sonar' ), SPEED_BOOSTER_PACK_VERSION, true );
177
  // wp_enqueue_script( 'sbp-jquery-sonar', plugin_dir_url( __FILE__ ) . 'js/jquery.sonar.js', array( 'jquery' ), SPEED_BOOSTER_PACK_VERSION, true );
 
178
  }
179
 
180
+ }
181
+
182
  /*----------------------------------------------------------------------------------------------------------
183
  Add settings link on plugins page
184
  -----------------------------------------------------------------------------------------------------------*/
203
  echo '<!-- We need this for debugging themes using ' . SPEED_BOOSTER_PACK_NAME . ' ' . SPEED_BOOSTER_PACK_VERSION . ' -->' . "\n";
204
 
205
  if ( isset( $sbp_options['jquery_to_footer'] ) ) {
206
+ echo '<!-- Scripts to footer: enabled -->' . "\n";
207
+ }
208
 
209
+ if ( isset( $sbp_options['sbp_footer_css'] ) ) {
210
+ echo '<!-- CSS to footer: enabled -->' . "\n";
211
+ }
212
 
213
  if ( isset( $sbp_options['defer_parsing'] ) ) {
214
+ echo '<!-- Defer parsing of js: enabled -->' . "\n";
215
+ }
 
 
 
 
216
 
217
+ if ( isset( $sbp_options['sbp_css_async'] ) ) {
218
+ echo '<!-- CSS Async: enabled -->' . "\n";
219
+ }
220
 
 
 
 
221
 
222
  } // End function sbp_debugg
223
 
228
  if( class_exists( 'Speed_Booster_Pack' ) ) {
229
 
230
  // Installation and uninstallation hooks
231
+ register_activation_hook( __FILE__, array( 'Speed_Booster_Pack', 'sbp_activate' ) );
232
+ register_deactivation_hook( __FILE__, array( 'Speed_Booster_Pack', 'sbp_deactivate' ) );
233
 
234
  // instantiate the plugin class
235
  $speed_booster_pack = new Speed_Booster_Pack();