17 private $newLinks = [];
19 private $existingLinks;
23 foreach ( LinkFilter::makeIndexes(
$url ) as [ $domainIndex,
$path ] ) {
24 $this->newLinks[$domainIndex][
$path] =
true;
31 return 'externallinks';
41 return [
'el_to_domain_index',
'el_to_path' ];
49 private function getExistingLinks() {
50 if ( $this->existingLinks ===
null ) {
51 $this->existingLinks = [];
53 $this->existingLinks[$row->el_to_domain_index][$row->el_to_path ??
''] =
true;
56 return $this->existingLinks;
61 foreach ( $this->newLinks as $domainIndex => $paths ) {
62 foreach ( $paths as
$path => $unused ) {
63 yield [ (string)$domainIndex, (
string)
$path ];
70 foreach ( $this->getExistingLinks() as $domainIndex => $paths ) {
71 foreach ( $paths as
$path => $unused ) {
72 yield [ (string)$domainIndex, (
string)
$path ];
79 [ $domainIndex,
$path ] = $linkId;
80 return isset( $this->getExistingLinks()[$domainIndex][
$path] );
85 [ $domainIndex,
$path ] = $linkId;
86 return isset( $this->newLinks[$domainIndex][
$path] );
91 [ $domainIndex,
$path ] = $linkId;
93 'el_to_domain_index' => substr( $domainIndex, 0, 255 ),
94 'el_to_path' =>
$path,
101 [ $domainIndex,
$path ] = $linkId;
103 'el_to_domain_index' => substr( $domainIndex, 0, 255 ),
104 'el_to_path' =>
$path
106 if (
$path ===
'' ) {
110 'el_to_domain_index' => substr( $domainIndex, 0, 255 ),
125 foreach ( $ids as $linkId ) {
126 [ $domainIndex,
$path ] = $linkId;
127 $stringArray[] = LinkFilter::reverseIndexes( $domainIndex ) .
$path;