PluginProbe ʕ •ᴥ•ʔ
EmbedPress – PDF Embedder, 3D PDF FlipBook, Google Reviews, YouTube Videos, Upload & Embed PDF documents / 2.0.3
EmbedPress – PDF Embedder, 3D PDF FlipBook, Google Reviews, YouTube Videos, Upload & Embed PDF documents v2.0.3
4.6.0 4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 trunk 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.2.0 2.2.1 2.2.2 2.3.0 2.3.1 2.3.2 2.3.3 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.1.3 3.2.0 3.2.1 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.6.8 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 3.9.1 3.9.10 3.9.11 3.9.12 3.9.13 3.9.14 3.9.15 3.9.16 3.9.17 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9 4.0.0 4.0.1 4.0.10 4.0.11 4.0.12 4.0.13 4.0.14 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.10 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 4.4.0 4.4.1 4.4.10 4.4.11 4.4.2 4.4.3 4.4.4 4.4.5 4.4.6 4.4.7 4.4.8 4.4.9 4.5.0 4.5.1
embedpress / vendor / ostraining / embera / Lib / Embera / Url.php
embedpress / vendor / ostraining / embera / Lib / Embera Last commit date
Adapters 8 years ago Providers 8 years ago Autoload.php 8 years ago Embera.php 8 years ago FakeResponse.php 8 years ago Formatter.php 8 years ago HtmlProcessor.php 8 years ago HttpRequest.php 8 years ago Oembed.php 8 years ago Providers.php 8 years ago Url.php 8 years ago
Url.php
110 lines
1 <?php
2 /**
3 * Url.php
4 *
5 * @package Embera
6 * @author Michael Pratt <pratt@hablarmierda.net>
7 * @link http://www.michael-pratt.com/
8 *
9 * For the full copyright and license information, please view the LICENSE
10 * file that was distributed with this source code.
11 */
12
13 namespace Embera;
14
15 /**
16 * This class is used to preform common/popular
17 * tasks into a url string
18 */
19 class Url
20 {
21 /** @var string The url */
22 protected $url;
23
24 /** @var string Placeholder for the original url */
25 protected $original;
26
27 /**
28 * Construct
29 *
30 * @param string $url A valid url string
31 */
32 public function __construct($url) { $this->url = $this->original = preg_replace('~^embed:~i', 'http:', $url); }
33
34 /**
35 * Returns the full url when
36 * the object is casted into a string
37 *
38 * @return string
39 */
40 public function __toString() { return $this->url; }
41
42 /**
43 * Searches the url for a pattern $pattern.
44 * If the pattern matches, the url is marked as invalid
45 * and is emptied.
46 *
47 * @param string $pattern
48 */
49 public function invalidPattern($pattern)
50 {
51 if (preg_match('~' . $pattern . '~i', $this->url))
52 $this->url = '';
53 }
54
55 /**
56 * Overwrites the value of $this->url with
57 * the given parameter.
58 *
59 * @param string $url
60 */
61 public function overwrite($url) { $this->url = $url; }
62
63 /**
64 * Discards changes made to a url, and goes back to the original
65 * url.
66 *
67 */
68 public function discardChanges() { $this->url = $this->original; }
69
70 /**
71 * Strips the query string from the url
72 *
73 */
74 public function stripQueryString() { $this->url = preg_replace('~(\?|#)(.*)$~i', '', $this->url); }
75
76 /**
77 * Strips the / at the end of a url
78 *
79 */
80 public function stripLastSlash() { $this->url = rtrim($this->url, '/'); }
81
82 /**
83 * Strips starting www from the url
84 *
85 */
86 public function stripWWW() { $this->url = str_ireplace('://www.', '://', $this->url); }
87
88 /**
89 * Adds www. subdomain to the urls
90 *
91 */
92 public function addWWW()
93 {
94 if (!preg_match('~^https?://www\.~i', $this->url))
95 $this->url = str_ireplace('://', '://www.', $this->url);
96 }
97
98 /**
99 * Replaces https protocol to http
100 *
101 */
102 public function convertToHttp() { $this->url = str_ireplace('https://', 'http://', $this->url); }
103
104 /**
105 * Replaces http protocol to https
106 *
107 */
108 public function convertToHttps() { $this->url = str_ireplace('http://', 'https://', $this->url); }
109 }
110