Version Notes
3.0.0 release
Download this release
Release Info
| Developer | Magento Core Team |
| Extension | Fooman_Speedster |
| Version | 3.0.14 |
| Comparing to | |
| See all releases | |
Code changes from version 3.0.12 to 3.0.14
- app/code/community/Fooman/Common/Model/Selftester/Db.php +5 -3
- app/code/community/Fooman/Common/etc/config.xml +1 -1
- app/code/community/Fooman/Speedster/Block/Page/Html/Head.php +35 -4
- app/code/community/Fooman/Speedster/Model/Selftester.php +2 -2
- app/code/community/Fooman/Speedster/etc/config.xml +1 -1
- package.xml +4 -4
app/code/community/Fooman/Common/Model/Selftester/Db.php
CHANGED
|
@@ -49,7 +49,7 @@ class Fooman_Common_Model_Selftester_Db extends Mage_Core_Model_Abstract
|
|
| 49 |
$selftester->messages[]
|
| 50 |
= "<p>The selftest has found some problems with your database install.
|
| 51 |
You can attempt to fix this by clicking this <a href=\""
|
| 52 |
-
. htmlentities(Mage::
|
| 53 |
. "?fix=true\">link</a>.</p><p style=\"color:red;\"><em>A DATABASE BACKUP IS strongly
|
| 54 |
RECOMMENDED BEFORE ATTEMPTING THIS!</em></p>";
|
| 55 |
}
|
|
@@ -112,8 +112,10 @@ class Fooman_Common_Model_Selftester_Db extends Mage_Core_Model_Abstract
|
|
| 112 |
protected function _dbCheckSqlColumn(Fooman_Common_Model_Selftester $selftester, $field, $installer, $localError)
|
| 113 |
{
|
| 114 |
try {
|
| 115 |
-
if (!$installer->getConnection()->tableColumnExists($field[1], $field[2])) {
|
| 116 |
-
throw new Exception(
|
|
|
|
|
|
|
| 117 |
}
|
| 118 |
$selftester->messages[] = "[OK] column " . $field[2]."";
|
| 119 |
} catch (Exception $e) {
|
| 49 |
$selftester->messages[]
|
| 50 |
= "<p>The selftest has found some problems with your database install.
|
| 51 |
You can attempt to fix this by clicking this <a href=\""
|
| 52 |
+
. htmlentities(Mage::app()->getRequest()->getServer('PHP_SELF', ''))
|
| 53 |
. "?fix=true\">link</a>.</p><p style=\"color:red;\"><em>A DATABASE BACKUP IS strongly
|
| 54 |
RECOMMENDED BEFORE ATTEMPTING THIS!</em></p>";
|
| 55 |
}
|
| 112 |
protected function _dbCheckSqlColumn(Fooman_Common_Model_Selftester $selftester, $field, $installer, $localError)
|
| 113 |
{
|
| 114 |
try {
|
| 115 |
+
if (!$installer->getConnection()->tableColumnExists($installer->getTable($field[1]), $field[2])) {
|
| 116 |
+
throw new Exception(
|
| 117 |
+
sprintf('Did not find column %s in table %s', $field[2], $installer->getTable($field[1]))
|
| 118 |
+
);
|
| 119 |
}
|
| 120 |
$selftester->messages[] = "[OK] column " . $field[2]."";
|
| 121 |
} catch (Exception $e) {
|
app/code/community/Fooman/Common/etc/config.xml
CHANGED
|
@@ -9,7 +9,7 @@
|
|
| 9 |
<config>
|
| 10 |
<modules>
|
| 11 |
<Fooman_Common>
|
| 12 |
-
<version>1.1.
|
| 13 |
</Fooman_Common>
|
| 14 |
</modules>
|
| 15 |
<global>
|
| 9 |
<config>
|
| 10 |
<modules>
|
| 11 |
<Fooman_Common>
|
| 12 |
+
<version>1.1.13</version>
|
| 13 |
</Fooman_Common>
|
| 14 |
</modules>
|
| 15 |
<global>
|
app/code/community/Fooman/Speedster/Block/Page/Html/Head.php
CHANGED
|
@@ -24,7 +24,6 @@
|
|
| 24 |
* @package Fooman_Speedster
|
| 25 |
* @author Kristof Ringleff <kristof@fooman.co.nz>
|
| 26 |
*/
|
| 27 |
-
|
| 28 |
class Fooman_Speedster_Block_Page_Html_Head extends Mage_Page_Block_Html_Head
|
| 29 |
{
|
| 30 |
|
|
@@ -75,7 +74,29 @@ class Fooman_Speedster_Block_Page_Html_Head extends Mage_Page_Block_Html_Head
|
|
| 75 |
|
| 76 |
case 'skin_js':
|
| 77 |
$chunks = explode('/skin', $this->getSkinUrl($item['name']), 2);
|
| 78 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 79 |
break;
|
| 80 |
|
| 81 |
case 'skin_css':
|
|
@@ -114,7 +135,12 @@ class Fooman_Speedster_Block_Page_Html_Head extends Mage_Page_Block_Html_Head
|
|
| 114 |
|
| 115 |
foreach ($lines as $if => $items) {
|
| 116 |
if (!empty($if)) {
|
| 117 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 118 |
}
|
| 119 |
if (!empty($items['stylesheet'])) {
|
| 120 |
$cssBuild = Mage::getModel('speedster/buildSpeedster', array($items['stylesheet'], BP));
|
|
@@ -161,7 +187,12 @@ class Fooman_Speedster_Block_Page_Html_Head extends Mage_Page_Block_Html_Head
|
|
| 161 |
$html .= join("\n", $items['other']) . "\n";
|
| 162 |
}
|
| 163 |
if (!empty($if)) {
|
| 164 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 165 |
}
|
| 166 |
}
|
| 167 |
return $html;
|
| 24 |
* @package Fooman_Speedster
|
| 25 |
* @author Kristof Ringleff <kristof@fooman.co.nz>
|
| 26 |
*/
|
|
|
|
| 27 |
class Fooman_Speedster_Block_Page_Html_Head extends Mage_Page_Block_Html_Head
|
| 28 |
{
|
| 29 |
|
| 74 |
|
| 75 |
case 'skin_js':
|
| 76 |
$chunks = explode('/skin', $this->getSkinUrl($item['name']), 2);
|
| 77 |
+
$skinJsURL = "/" . $webroot . "skin" . $chunks[1];
|
| 78 |
+
|
| 79 |
+
if (strpos($item['name'], '.min.js') !== false) {
|
| 80 |
+
$skinJsLoc = BP . DS . "skin" . $chunks[1];
|
| 81 |
+
$skinJsContent = file_get_contents($skinJsLoc);
|
| 82 |
+
if (preg_match('/@ sourceMappingURL=([^\s]*)/s', $skinJsContent, $matches)) {
|
| 83 |
+
//create a file without source map
|
| 84 |
+
$md5 = md5($skinJsContent);
|
| 85 |
+
$skinJsLoc = str_replace('.min.js', '.' . $md5 . '.min.js', $skinJsLoc);
|
| 86 |
+
$skinJsURL = str_replace('.min.js', '.' . $md5 . '.min.js', $skinJsURL);
|
| 87 |
+
if (!file_exists($skinJsLoc)) {
|
| 88 |
+
file_put_contents(
|
| 89 |
+
$skinJsLoc,
|
| 90 |
+
str_replace(
|
| 91 |
+
$matches[0], 'orig file with source map: ' . $this->getSkinUrl($item['name']),
|
| 92 |
+
$skinJsContent
|
| 93 |
+
)
|
| 94 |
+
);
|
| 95 |
+
}
|
| 96 |
+
}
|
| 97 |
+
}
|
| 98 |
+
|
| 99 |
+
$lines[$if]['script']['skin'][] = $skinJsURL;
|
| 100 |
break;
|
| 101 |
|
| 102 |
case 'skin_css':
|
| 135 |
|
| 136 |
foreach ($lines as $if => $items) {
|
| 137 |
if (!empty($if)) {
|
| 138 |
+
// open !IE conditional using raw value
|
| 139 |
+
if (strpos($if, "><!-->") !== false) {
|
| 140 |
+
$html .= $if . "\n";
|
| 141 |
+
} else {
|
| 142 |
+
$html .= '<!--[if '.$if.']>' . "\n";
|
| 143 |
+
}
|
| 144 |
}
|
| 145 |
if (!empty($items['stylesheet'])) {
|
| 146 |
$cssBuild = Mage::getModel('speedster/buildSpeedster', array($items['stylesheet'], BP));
|
| 187 |
$html .= join("\n", $items['other']) . "\n";
|
| 188 |
}
|
| 189 |
if (!empty($if)) {
|
| 190 |
+
// close !IE conditional comments correctly
|
| 191 |
+
if (strpos($if, "><!-->") !== false) {
|
| 192 |
+
$html .= '<!--<![endif]-->' . "\n";
|
| 193 |
+
} else {
|
| 194 |
+
$html .= '<![endif]-->' . "\n";
|
| 195 |
+
}
|
| 196 |
}
|
| 197 |
}
|
| 198 |
return $html;
|
app/code/community/Fooman/Speedster/Model/Selftester.php
CHANGED
|
@@ -166,6 +166,7 @@ class Fooman_Speedster_Model_Selftester extends Fooman_Common_Model_Selftester
|
|
| 166 |
{
|
| 167 |
$stepOk = true;
|
| 168 |
try {
|
|
|
|
| 169 |
$url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) . 'skin/frontend/default' .
|
| 170 |
'/default/css/print.css';
|
| 171 |
$client = new Zend_Http_Client($url);
|
|
@@ -185,7 +186,6 @@ class Fooman_Speedster_Model_Selftester extends Fooman_Common_Model_Selftester
|
|
| 185 |
$stepOk = false;
|
| 186 |
}
|
| 187 |
|
| 188 |
-
$varPath = Mage::getConfig()->getVarDir('minifycache');
|
| 189 |
if (!is_dir($varPath)) {
|
| 190 |
$this->messages[] = 'Verify Minification ERROR: "' . $varPath . '" does not exist (Step 3)';
|
| 191 |
$this->errorOccurred = true;
|
|
@@ -196,7 +196,7 @@ class Fooman_Speedster_Model_Selftester extends Fooman_Common_Model_Selftester
|
|
| 196 |
$this->errorOccurred = true;
|
| 197 |
$stepOk = false;
|
| 198 |
}
|
| 199 |
-
|
| 200 |
if ($handle = opendir($varPath)) {
|
| 201 |
$filesOK = false;
|
| 202 |
while (false !== ($entry = readdir($handle))) {
|
| 166 |
{
|
| 167 |
$stepOk = true;
|
| 168 |
try {
|
| 169 |
+
$varPath = Mage::getConfig()->getVarDir('minifycache');
|
| 170 |
$url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) . 'skin/frontend/default' .
|
| 171 |
'/default/css/print.css';
|
| 172 |
$client = new Zend_Http_Client($url);
|
| 186 |
$stepOk = false;
|
| 187 |
}
|
| 188 |
|
|
|
|
| 189 |
if (!is_dir($varPath)) {
|
| 190 |
$this->messages[] = 'Verify Minification ERROR: "' . $varPath . '" does not exist (Step 3)';
|
| 191 |
$this->errorOccurred = true;
|
| 196 |
$this->errorOccurred = true;
|
| 197 |
$stepOk = false;
|
| 198 |
}
|
| 199 |
+
clearstatcache();
|
| 200 |
if ($handle = opendir($varPath)) {
|
| 201 |
$filesOK = false;
|
| 202 |
while (false !== ($entry = readdir($handle))) {
|
app/code/community/Fooman/Speedster/etc/config.xml
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
<config>
|
| 3 |
<modules>
|
| 4 |
<Fooman_Speedster>
|
| 5 |
-
<version>3.0.
|
| 6 |
</Fooman_Speedster>
|
| 7 |
</modules>
|
| 8 |
<global>
|
| 2 |
<config>
|
| 3 |
<modules>
|
| 4 |
<Fooman_Speedster>
|
| 5 |
+
<version>3.0.14</version>
|
| 6 |
</Fooman_Speedster>
|
| 7 |
</modules>
|
| 8 |
<global>
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Fooman_Speedster</name>
|
| 4 |
-
<version>3.0.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0 / BSD see files</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -11,9 +11,9 @@
|
|
| 11 |
<p>Speed up your store by combining, compressing and caching JS and CSS.</p><p>Please read the installation instructions and latest changes <a href="http://www.magentocommerce.com/extension/457/fooman-speedster">here.</a></p></description>
|
| 12 |
<notes>3.0.0 release</notes>
|
| 13 |
<authors><author><name>Kristof Ringleff</name><user>auto-converted</user><email>kristof@fooman.co.nz</email></author><author><name>Kristof Ringleff</name><user>auto-converted</user><email>kristof@fooman.co.nz</email></author></authors>
|
| 14 |
-
<date>2014-
|
| 15 |
-
<time>
|
| 16 |
-
<contents><target name="mage"><dir name="app"><dir name="etc"><dir name="modules"><file name="Fooman_Speedster.xml" hash="dfe240236e87da64e55c5f0abc72efba"/><file name="Fooman_Common.xml" hash="2555b2dd668865790df287b5cca61e35"/></dir></dir></dir><dir name="lib"><dir name="minify"><file name=".htaccess" hash="4d6b8833e4ccae2d2393dfeba369b894"/></dir></dir></target><target name="magecommunity"><dir name="Fooman"><dir name="Speedster"><dir name="Block"><dir name="Adminhtml"><dir name="Page"><file name="Head.php" hash="aea908a68fb6cf2547dc03679a8f3f36"/></dir><file name="Extensioninfo.php" hash="319567aa629443f8db37910e72b25836"/></dir><dir name="Page"><dir name="Html"><file name="Head.php" hash="
|
| 17 |
<compatible/>
|
| 18 |
<dependencies/>
|
| 19 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Fooman_Speedster</name>
|
| 4 |
+
<version>3.0.14</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0 / BSD see files</license>
|
| 7 |
<channel>community</channel>
|
| 11 |
<p>Speed up your store by combining, compressing and caching JS and CSS.</p><p>Please read the installation instructions and latest changes <a href="http://www.magentocommerce.com/extension/457/fooman-speedster">here.</a></p></description>
|
| 12 |
<notes>3.0.0 release</notes>
|
| 13 |
<authors><author><name>Kristof Ringleff</name><user>auto-converted</user><email>kristof@fooman.co.nz</email></author><author><name>Kristof Ringleff</name><user>auto-converted</user><email>kristof@fooman.co.nz</email></author></authors>
|
| 14 |
+
<date>2014-06-03</date>
|
| 15 |
+
<time>10:44:03</time>
|
| 16 |
+
<contents><target name="mage"><dir name="app"><dir name="etc"><dir name="modules"><file name="Fooman_Speedster.xml" hash="dfe240236e87da64e55c5f0abc72efba"/><file name="Fooman_Common.xml" hash="2555b2dd668865790df287b5cca61e35"/></dir></dir></dir><dir name="lib"><dir name="minify"><file name=".htaccess" hash="4d6b8833e4ccae2d2393dfeba369b894"/></dir></dir></target><target name="magecommunity"><dir name="Fooman"><dir name="Speedster"><dir name="Block"><dir name="Adminhtml"><dir name="Page"><file name="Head.php" hash="aea908a68fb6cf2547dc03679a8f3f36"/></dir><file name="Extensioninfo.php" hash="319567aa629443f8db37910e72b25836"/></dir><dir name="Page"><dir name="Html"><file name="Head.php" hash="fc5343f3926b171c142e6cd098013e05"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="80f1d3bc964eacbb727c5cc9a5e825dd"/></dir><dir name="Model"><file name="BuildSpeedster.php" hash="9f2f38fa662a19b7a0c9325bf9ca09d3"/><file name="Check.php" hash="e2457175d0e97ae7fa2877d8852b2429"/><file name="Selftester.php" hash="33b779d9ddb07924aa9a26abe9fad89e"/></dir><dir name="etc"><file name="adminhtml.xml" hash="58022b9593df5387f067790b1a4cbdbb"/><file name="config.xml" hash="21cb2177945294039832679e79f16203"/><file name="system.xml" hash="2737291d88a8cbbda2f9bd745c59c4ce"/></dir><dir name="sql"><dir name="speedster_setup"><file name="mysql4-install-3.0.0.php" hash="270723f57b4e0d266102f66c6cff9c3a"/><file name="mysql4-upgrade-2.9.9-3.0.0.php" hash="13dec36a49b3bd9f750c229b5ae8883a"/></dir></dir><file name="LICENSE.txt" hash="b1439ec6a896ec1e549bd0a31ce83a23"/><file name="modman" hash="19236d249817cecc97d70a22428c963f"/></dir><dir name="Common"><dir name="Block"><dir name="Adminhtml"><file name="Extensioninfo.php" hash="48a6de0af77c57b5c1a4f62a7b8c717c"/></dir></dir><dir name="Helper"><file name="Data.php" hash="27625b371977689df6ff51cbe80c236d"/></dir><dir name="Model"><dir name="Selftester"><file name="Abstract.php" hash="b6cf37236718450bdfd7d2d7c0b106f5"/><file name="Db.php" hash="5de457e597790b3a7f3bb9be1955ef2b"/></dir><file name="Selftester.php" hash="3cd38b42062004004b50052d2b2efa60"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="SelftesterController.php" hash="67963c4d09fa95b389e8de4742f317dd"/></dir></dir><dir name="etc"><file name="config.xml" hash="89d989ee878ea2ef6d01dae5f92e6d20"/><file name="system.xml" hash="062afadb28b77803a0cf5fbdb472f23b"/></dir><file name="LICENSE.txt" hash="34410d4f566fdc33f094525a2d9865fa"/><file name="modman" hash="1a75713bd24fb132cb0bc7c8818b2c68"/></dir></dir></target><target name="magelib"><dir name="minify"><dir name="HTTP"><file name="ConditionalGet.php" hash="84d5f4e0b97e37228310a31a4bdc1240"/><file name="Encoder.php" hash="d697f04651d6363d1dd5dd8c2ce94cbd"/></dir><dir name="Minify"><dir name="CSS"><file name="Compressor.php" hash="e504bf68a90d63ec70169be95ed69a91"/><file name="UriRewriter.php" hash="1ab219a53409eb4ea9c026f8e555717b"/></dir><dir name="Cache"><file name="APC.php" hash="f83c096f1ea3eb712bf020371b7d3755"/><file name="File.php" hash="a1c30a447db03624a990d6b0843fb0b3"/><file name="Memcache.php" hash="a572e300270f5cdb535de67eb1d9ce3b"/><file name="XCache.php" hash="a3239040e672955a8a520eef6e251d68"/><file name="ZendPlatform.php" hash="a20755bc554cfef6733ac64574c4f90e"/></dir><dir name="Controller"><file name="Base.php" hash="ec667737c7db5edd68bd81fc2444b8a9"/><file name="Files.php" hash="a0bc419aa48d256e19a64596dee53991"/><file name="Groups.php" hash="bf35ccd3d384c40033b978a402eaf917"/><file name="MinApp.php" hash="2ab3f9c88d9340b684a88ca16132d804"/><file name="Page.php" hash="c54a4b19474f9d0e9beb8ccb4e3678b3"/><file name="Version1.php" hash="0e4bce53a0b66c79aa6d15e52cf8ec50"/></dir><dir name="HTML"><file name="Helper.php" hash="af89e2e30f70dd935dd86d31649159e6"/></dir><dir name="JS"><file name="ClosureCompiler.php" hash="75cea0ae7e0b2d06ac1002123413f567"/></dir><dir name="YUI"><file name="CssCompressor.java" hash="cb15a586f2dcc4fead535bc982e3f91e"/><file name="CssCompressor.php" hash="12d5b4e38488c68bc84cc0efba6eb338"/></dir><file name="Build.php" hash="99800ab664e1fb0ff46a7133ab13bb1b"/><file name="CSS.php" hash="c585f82e0a6f8af12da2d3337aa7e901"/><file name="ClosureCompiler.php" hash="8aa080b1831114560e17cff3292aed3a"/><file name="CommentPreserver.php" hash="f9fbae74aea3125d25f375942846d9c0"/><file name="DebugDetector.php" hash="d1bee7f6ab4dcf7be5d36dbcd1b81354"/><file name="HTML.php" hash="7d7fecce501567ac7c580a5cf0fad201"/><file name="ImportProcessor.php" hash="075c561afa4825021fa44c3cac68ab94"/><file name="Lines.php" hash="526499d43d682432dac9483da4509179"/><file name="Loader.php" hash="5e84b0e739587d8df742f47953f135d5"/><file name="Logger.php" hash="ee493543ebb47aa06f976f23a0f3d86a"/><file name="Packer.php" hash="25e6f213205f060853db918c2d67ef06"/><file name="Source.php" hash="f7055f963f00e5ae9f5b0005d5e4a5ec"/><file name="YUICompressor.php" hash="29f676de4e367479d4e5665a0af052d8"/></dir><dir name="MrClay"><dir name="Cli"><file name="Arg.php" hash="ce47e5043444c8753fbe36c64f59dc57"/></dir><file name="Cli.php" hash="ccce996e0124affcb0c49b4d08d7d2b4"/></dir><file name="CSSmin.php" hash="d3948af8f596faf3f5e18bfccf18e654"/><file name="DooDigestAuth.php" hash="9d66abc8cfa37b5f593fc09c734f0269"/><file name="FirePHP.php" hash="f619b5a77fee4b21e4397e98d858fbf4"/><file name="JSMin.php" hash="da47a12a17e5e62a3995367a13197861"/><file name="JSMinPlus.php" hash="13d47b54dd73ef825e5d86e6cc633e32"/><file name="Minify.php" hash="1446a1184342a31e9bf205c79879ff4c"/><file name="SpeedsterMinify.php" hash="e6476c529ef7822245b64cec8977c858"/><file name="m.php" hash="7b3911995c33e611ffad33fa77b20d14"/><file name=".htaccess" hash="4d6b8833e4ccae2d2393dfeba369b894"/></dir></target><target name="mageskin"><dir name="m"><file name=".htaccess" hash="c1814ef21a60158bab01e91bfa5be19b"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="fooman_common.xml" hash="a7e4ac18fcfcac0080b1aef960fe9c94"/></dir><dir name="template"><dir name="fooman"><dir name="common"><file name="selftester.phtml" hash="12c4225cfb71490f2b297f50650d1185"/></dir></dir></dir></dir></dir></dir></target></contents>
|
| 17 |
<compatible/>
|
| 18 |
<dependencies/>
|
| 19 |
</package>
|
