PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.6.1
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.6.1
1.19.8 1.19.7 1.19.6 1.19.5 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.12.0 1.13.0 1.14.0 1.15.0 1.15.1 1.15.2 1.15.3 1.16.0 1.16.1 1.16.2 1.16.3 1.16.4 1.16.5 1.16.6 1.16.7 1.16.8 1.17.0 1.17.6 1.17.7 1.17.8 1.17.9 1.18.0 1.18.1 1.18.2 1.18.3 1.18.4 1.18.5 1.18.6 1.18.7 1.18.8 1.18.9 1.19.0 1.19.1 1.19.2 1.19.3 1.19.4 1.3.19 1.3.20 1.4.0 1.4.1 1.5.0 1.5.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.16 1.5.17 1.5.18 1.5.19 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.7.0 1.7.1 1.8.0 1.8.1 1.8.3 1.9.0 1.9.1 1.9.2
nitropack / nitropack-sdk / NitroPack / SDK / Api / Varnish.php
nitropack / nitropack-sdk / NitroPack / SDK / Api Last commit date
AdditionalDomains.php 3 years ago Base.php 3 years ago Cache.php 3 years ago ExcludedUrls.php 3 years ago Integration.php 6 years ago RemoteConfigFetcher.php 4 years ago RequestMaker.php 5 years ago Response.php 6 years ago ResponseStatus.php 6 years ago SafeMode.php 3 years ago SecureRequestMaker.php 5 years ago SignedBase.php 3 years ago Stats.php 6 years ago Tagger.php 3 years ago Url.php 6 years ago VariationCookie.php 6 years ago Varnish.php 3 years ago Warmup.php 6 years ago Webhook.php 6 years ago
Varnish.php
64 lines
1 <?php
2 namespace NitroPack\SDK\Api;
3
4 class Varnish extends SignedBase
5 {
6 protected $secret;
7
8 public function __construct($siteId, $siteSecret) {
9 parent::__construct($siteId, $siteSecret);
10 $this->secret = $siteSecret;
11 }
12
13 public function enable()
14 {
15 $path = 'varnish/enable/' . $this->siteId;
16
17 $httpResponse = $this->makeRequest($path, array(), array(), 'POST');
18
19 $status = ResponseStatus::getStatus($httpResponse->getStatusCode());
20 switch ($status) {
21 case ResponseStatus::OK:
22 return true;
23 default:
24 $this->throwException($httpResponse, 'Error while enabling Varnish integration: %s');
25 }
26 }
27
28 public function disable()
29 {
30 $path = 'varnish/disable/' . $this->siteId;
31
32 $httpResponse = $this->makeRequest($path, array(), array(), 'POST');
33
34 $status = ResponseStatus::getStatus($httpResponse->getStatusCode());
35 switch ($status) {
36 case ResponseStatus::OK:
37 return true;
38 default:
39 $this->throwException($httpResponse, 'Error while disabling Varnish integration: %s');
40 }
41 }
42
43 public function configure($settings)
44 {
45 $path = 'varnish/configure/' . $this->siteId;
46
47 $post = [
48 'Servers' => !empty($settings['Servers']) ? $settings['Servers'] : [],
49 'PurgeAllUrl' => !empty($settings['PurgeAllUrl']) ? $settings['PurgeAllUrl'] : '',
50 'PurgeAllMethod' => !empty($settings['PurgeAllMethod']) ? $settings['PurgeAllMethod'] : '',
51 'PurgeSingleMethod' => !empty($settings['PurgeSingleMethod']) ? $settings['PurgeSingleMethod'] : '',
52 ];
53
54 $httpResponse = $this->makeRequest($path, array(), array(), 'POST', $post);
55
56 $status = ResponseStatus::getStatus($httpResponse->getStatusCode());
57 switch ($status) {
58 case ResponseStatus::OK:
59 return json_decode($httpResponse->getBody(), true);
60 default:
61 $this->throwException($httpResponse, 'Error while configure the Varnish integration: %s');
62 }
63 }
64 }