18 private $newLinks = [];
20 private $existingLinks;
24 foreach ( LinkFilter::makeIndexes(
$url ) as [ $domainIndex,
$path ] ) {
25 $this->newLinks[$domainIndex][
$path] =
true;
32 return 'externallinks';
42 return [
'el_to_domain_index',
'el_to_path' ];
50 private function getExistingLinks() {
51 if ( $this->existingLinks ===
null ) {
52 $this->existingLinks = [];
54 $this->existingLinks[$row->el_to_domain_index][$row->el_to_path] =
true;
57 return $this->existingLinks;
62 foreach ( $this->newLinks as $domainIndex => $paths ) {
63 foreach ( $paths as
$path => $unused ) {
64 yield [ (string)$domainIndex, (
string)
$path ];
71 foreach ( $this->getExistingLinks() as $domainIndex => $paths ) {
72 foreach ( $paths as
$path => $unused ) {
73 yield [ (string)$domainIndex, (
string)
$path ];
80 [ $domainIndex,
$path ] = $linkId;
81 return isset( $this->getExistingLinks()[$domainIndex][
$path] );
86 [ $domainIndex,
$path ] = $linkId;
87 return isset( $this->newLinks[$domainIndex][
$path] );
92 [ $domainIndex,
$path ] = $linkId;
94 'el_to_domain_index' => substr( $domainIndex, 0, 255 ),
95 'el_to_path' =>
$path,
102 [ $domainIndex,
$path ] = $linkId;
104 'el_to_domain_index' => substr( $domainIndex, 0, 255 ),
105 'el_to_path' =>
$path
107 if (
$path ===
'' ) {
111 'el_to_domain_index' => substr( $domainIndex, 0, 255 ),
126 foreach ( $ids as $linkId ) {
127 [ $domainIndex,
$path ] = $linkId;
128 $stringArray[] = LinkFilter::reverseIndexes( $domainIndex ) .
$path;