Skip to content

Commit e450d72

Browse files
author
Renato Marinho
committed
new filter remove_quotes
1 parent 2989dfc commit e450d72

File tree

4 files changed

+28
-25
lines changed

4 files changed

+28
-25
lines changed

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@ protected $middleware = [
4444
<td><strong>Description</strong></td>
4545
<td><strong>Available</strong></td>
4646
<tr>
47+
<tr>
48+
<td>remove_quotes</td>
49+
<td>Removes unnecessary quotes in HTML tags</td>
50+
<td>YES</td>
51+
<tr>
4752
<tr>
4853
<td>trim_urls</td>
4954
<td>Removes unnecessary prefixes from URLs</td>
@@ -194,11 +199,6 @@ protected $middleware = [
194199
<td>Instruments the page, inlines its critical CSS at the top, and lazily loads the rest</td>
195200
<td>NO</td>
196201
<tr>
197-
<tr>
198-
<td>remove_quotes</td>
199-
<td>Removes unnecessary quotes in HTML tags</td>
200-
<td>NO</td>
201-
<tr>
202202
<tr>
203203
<td>resize_mobile_images</td>
204204
<td>Just like inline_preview_images, but uses smaller placeholder images for mobile browsers</td>

src/Middleware/RemoveQuotes.php

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,23 @@
22

33
namespace RenatoMarinho\LaravelPageSpeed\Middleware;
44

5-
use Closure;
6-
7-
class RemoveQuotes
5+
class RemoveQuotes extends PageSpeed
86
{
9-
/**
10-
* Handle an incoming request.
11-
*
12-
* @param \Illuminate\Http\Request $request
13-
* @param \Closure $next
14-
* @return mixed
15-
*/
16-
17-
public function handle($request, Closure $next)
7+
public function apply($buffer)
188
{
19-
}
9+
$replace = [
10+
'/src="(.*?)"/' => 'src=$1',
11+
'/width="(.*?)"/' => 'width=$1',
12+
'/height="(.*?)"/' => 'height=$1',
13+
'/name="(.*?)"/' => 'name=$1',
14+
'/charset="(.*?)"/' => 'charset=$1',
15+
'/href="(.*?)"/' => 'href=$1',
16+
'/align="(.*?)"/' => 'align=$1',
17+
'/border="(.*?)"/' => 'border=$1',
18+
'/crossorigin="(.*?)"/' => 'crossorigin=$1',
19+
'/rel="(.*?)"/' => 'rel=$1',
20+
];
2021

22+
return $this->replace($replace, $buffer);
23+
}
2124
}

tests/Middleware/RemoveCommentsTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
use RenatoMarinho\LaravelPageSpeed\Middleware\RemoveComments;
66
use RenatoMarinho\LaravelPageSpeed\Test\TestCase;
77

8-
class CollapseWhitespaceTest extends TestCase
8+
class RemoveCommentsTest extends TestCase
99
{
1010
public $middleware;
1111

tests/Middleware/RemoveQuotes.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22

33
namespace RenatoMarinho\LaravelPageSpeed\Test\Middleware;
44

5-
use RenatoMarinho\LaravelPageSpeed\Middleware\TrimUrls;
5+
use RenatoMarinho\LaravelPageSpeed\Middleware\RemoveQuotes;
66
use RenatoMarinho\LaravelPageSpeed\Test\TestCase;
77

8-
class TrimUrlsTest extends TestCase
8+
class RemoveQuotesTest extends TestCase
99
{
1010
public $middleware;
1111

1212
public function getMiddleware()
1313
{
14-
$this->middleware = new TrimUrls();
14+
$this->middleware = new RemoveQuotes();
1515
}
1616

1717
public function testApply()
1818
{
1919
$html = $this->middleware->apply($this->html);
2020

21-
$this->assertNotContains("https://", $html);
22-
$this->assertNotContains("http://", $html);
23-
$this->assertContains("//code.jquery.com/jquery-3.2.1.min.js", $html);
21+
$this->assertContains('<link rel=apple-touch-icon href=icon.png>', $html);
22+
$this->assertContains('<meta charset=utf-8>', $html);
23+
$this->assertContains('<img src=http://emblemsbf.com/img/18346.jpg width=250 style="height:300px; padding:10px" />', $html);
2424
}
2525
}

0 commit comments

Comments
 (0)