PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / 4.17.1
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress v4.17.1
4.17.1 4.17.0 4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / third-party / vendor / league / csv / src / HTMLConverter.php
wp-user-avatar / third-party / vendor / league / csv / src Last commit date
AbstractCsv.php 2 months ago ByteSequence.php 2 months ago CannotInsertRecord.php 2 months ago CharsetConverter.php 2 months ago ColumnConsistency.php 2 months ago EncloseField.php 2 months ago EscapeFormula.php 2 months ago Exception.php 2 months ago HTMLConverter.php 2 months ago Info.php 2 months ago InvalidArgument.php 2 months ago MapIterator.php 2 months ago RFC4180Field.php 2 months ago Reader.php 2 months ago ResultSet.php 2 months ago Statement.php 2 months ago Stream.php 2 months ago SyntaxError.php 2 months ago TabularDataReader.php 2 months ago UnableToProcessCsv.php 2 months ago UnavailableFeature.php 2 months ago UnavailableStream.php 2 months ago Writer.php 2 months ago XMLConverter.php 2 months ago functions.php 2 months ago functions_include.php 2 months ago
HTMLConverter.php
128 lines
1 <?php
2
3 /**
4 * League.Csv (https://csv.thephpleague.com)
5 *
6 * (c) Ignace Nyamagana Butera <nyamsprod@gmail.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 declare (strict_types=1);
12 namespace ProfilePressVendor\League\Csv;
13
14 use DOMDocument;
15 use DOMElement;
16 use DOMException;
17 use function preg_match;
18 /**
19 * Converts tabular data into an HTML Table string.
20 */
21 class HTMLConverter
22 {
23 /** table class attribute value. */
24 protected string $class_name = 'table-csv-data';
25 /** table id attribute value. */
26 protected string $id_value = '';
27 protected XMLConverter $xml_converter;
28 public static function create(): self
29 {
30 return new self();
31 }
32 /**
33 * DEPRECATION WARNING! This method will be removed in the next major point release.
34 *
35 * @deprecated since version 9.7.0
36 * @see HTMLConverterTest::create()
37 */
38 public function __construct()
39 {
40 $this->xml_converter = XMLConverter::create()->rootElement('table')->recordElement('tr')->fieldElement('td');
41 }
42 /**
43 * Converts a tabular data collection into a HTML table string.
44 *
45 * @param string[] $header_record An optional array of headers outputted using the`<thead>` section
46 * @param string[] $footer_record An optional array of footers to output to the table using `<tfoot>` and `<th>` elements
47 */
48 public function convert(iterable $records, array $header_record = [], array $footer_record = []): string
49 {
50 $doc = new DOMDocument('1.0');
51 if ([] === $header_record && [] === $footer_record) {
52 $table = $this->xml_converter->import($records, $doc);
53 $this->addHTMLAttributes($table);
54 $doc->appendChild($table);
55 /** @var string $content */
56 $content = $doc->saveHTML();
57 return $content;
58 }
59 $table = $doc->createElement('table');
60 $this->addHTMLAttributes($table);
61 $this->appendHeaderSection('thead', $header_record, $table);
62 $this->appendHeaderSection('tfoot', $footer_record, $table);
63 $table->appendChild($this->xml_converter->rootElement('tbody')->import($records, $doc));
64 $doc->appendChild($table);
65 /** @var string $content */
66 $content = $doc->saveHTML();
67 return $content;
68 }
69 /**
70 * Creates a DOMElement representing a HTML table heading section.
71 */
72 protected function appendHeaderSection(string $node_name, array $record, DOMElement $table): void
73 {
74 if ([] === $record) {
75 return;
76 }
77 /** @var DOMDocument $ownerDocument */
78 $ownerDocument = $table->ownerDocument;
79 $node = $this->xml_converter->rootElement($node_name)->recordElement('tr')->fieldElement('th')->import([$record], $ownerDocument);
80 /** @var DOMElement $element */
81 foreach ($node->getElementsByTagName('th') as $element) {
82 $element->setAttribute('scope', 'col');
83 }
84 $table->appendChild($node);
85 }
86 /**
87 * Adds class and id attributes to an HTML tag.
88 */
89 protected function addHTMLAttributes(DOMElement $node): void
90 {
91 $node->setAttribute('class', $this->class_name);
92 $node->setAttribute('id', $this->id_value);
93 }
94 /**
95 * HTML table class name setter.
96 *
97 * @throws DOMException if the id_value contains any type of whitespace
98 */
99 public function table(string $class_name, string $id_value = ''): self
100 {
101 if (1 === preg_match(",\\s,", $id_value)) {
102 throw new DOMException("the id attribute's value must not contain whitespace (spaces, tabs etc.)");
103 }
104 $clone = clone $this;
105 $clone->class_name = $class_name;
106 $clone->id_value = $id_value;
107 return $clone;
108 }
109 /**
110 * HTML tr record offset attribute setter.
111 */
112 public function tr(string $record_offset_attribute_name): self
113 {
114 $clone = clone $this;
115 $clone->xml_converter = $this->xml_converter->recordElement('tr', $record_offset_attribute_name);
116 return $clone;
117 }
118 /**
119 * HTML td field name attribute setter.
120 */
121 public function td(string $fieldname_attribute_name): self
122 {
123 $clone = clone $this;
124 $clone->xml_converter = $this->xml_converter->fieldElement('td', $fieldname_attribute_name);
125 return $clone;
126 }
127 }
128