Skip to content

Commit 545e8a7

Browse files
committed
link original na barra
1 parent dc297cb commit 545e8a7

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

app/inc/URLAnalyzer/URLAnalyzerProcess.php

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
<?php
2+
23
/**
34
* Processes and modifies HTML content
45
* Handles DOM changes and content rules
@@ -22,7 +23,8 @@ public function __construct()
2223
}
2324

2425
/** Creates DOM from HTML content */
25-
private function createDOM($content) {
26+
private function createDOM($content)
27+
{
2628
$dom = new DOMDocument();
2729
$dom->preserveWhiteSpace = true;
2830
libxml_use_internal_errors(true);
@@ -49,14 +51,14 @@ public function processContent($content, $host, $url)
4951
$this->fixRelativeUrls($dom, $xpath, $url);
5052
$this->applyDomainRules($dom, $xpath, $host);
5153
$this->cleanInlineStyles($xpath);
52-
$this->addBrandBar($dom, $xpath);
54+
$this->addBrandBar($dom, $xpath, $url);
5355
$this->addDebugBar($dom, $xpath);
5456

5557
return $dom->saveHTML();
5658
}
5759

5860
/** Updates canonical link tags */
59-
private function processCanonicalLinks($dom, $xpath, $url)
61+
private function processCanonicalLinks($dom, $xpath, $url)
6062
{
6163
$canonicalLinks = $xpath->query("//link[@rel='canonical']");
6264
if ($canonicalLinks !== false) {
@@ -230,14 +232,16 @@ private function cleanInlineStyles($xpath)
230232
}
231233

232234
/** Adds branded bar to page */
233-
private function addBrandBar($dom, $xpath)
235+
private function addBrandBar($dom, $xpath, $url)
234236
{
235237
$body = $xpath->query('//body')->item(0);
236238
if ($body) {
237239
$brandDiv = $dom->createElement('div');
238-
$brandDiv->setAttribute('style', 'z-index: 99999; position: fixed; top: 0; right: 1rem; background: rgba(37,99,235, 0.9); backdrop-filter: blur(8px); color: #fff; font-size: 13px; line-height: 1em; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 8px 12px; margin: 0px; overflow: hidden; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px; font-family: Tahoma, sans-serif;');
240+
$brandDiv->setAttribute('style', 'z-index: 99999; position: fixed; top: 0; right: 1rem; display: flex; gap: 8px;');
239241
$brandHtml = $dom->createDocumentFragment();
240-
$brandHtml->appendXML('<a href="'.SITE_URL.'" style="color: #fff; text-decoration: none; font-weight: bold;" target="_blank">'.htmlspecialchars(SITE_DESCRIPTION).'</a>');
242+
$brandHtml->appendXML('<a href="' . htmlspecialchars($url) . '" style="color: #fff; text-decoration: none; font-weight: bold; background: rgba(37,99,235, 0.9); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 6px 10px; margin: 0px; overflow: hidden; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px;" target="_blank"><svg xmlns="http://www.w3.org/2000/svg" fill="#fff" viewBox="0 0 16 16" width="20" height="20"><path d="M4.715 6.542 3.343 7.914a3 3 0 1 0 4.243 4.243l1.828-1.829A3 3 0 0 0 8.586 5.5L8 6.086a1 1 0 0 0-.154.199 2 2 0 0 1 .861 3.337L6.88 11.45a2 2 0 1 1-2.83-2.83l.793-.792a4 4 0 0 1-.128-1.287z"/><path d="M6.586 4.672A3 3 0 0 0 7.414 9.5l.775-.776a2 2 0 0 1-.896-3.346L9.12 3.55a2 2 0 1 1 2.83 2.83l-.793.792c.112.42.155.855.128 1.287l1.372-1.372a3 3 0 1 0-4.243-4.243z"/></svg></a>');
243+
$brandDiv->appendChild($brandHtml);
244+
$brandHtml->appendXML('<a href="' . htmlspecialchars(SITE_URL) . '" style="color: #fff; text-decoration: none; font-weight: bold; background: rgba(37,99,235, 0.9); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); padding: 6px 10px; margin: 0px; overflow: hidden; border-bottom-left-radius: 8px; border-bottom-right-radius: 8px;" target="_blank"><svg xmlns="http://www.w3.org/2000/svg" fill="#fff" viewBox="0 0 640 512" width="20" height="20"><path d="m283.9 378.6 18.3-60.1c18-4.1 34.2-16 43.1-33.8l64-128c10.5-21.1 8.4-45.2-3.7-63.6l52.7-76.6c3.7-5.4 10.4-8 16.7-6.5s11.2 6.7 12.2 13.1l16.2 104.1 105.1-7.4c6.5-.5 12.7 3.1 15.5 9s1.8 12.9-2.6 17.8L550.1 224l71.3 77.5c4.4 4.8 5.5 11.9 2.6 17.8s-9 9.5-15.5 9l-105.1-7.4L487.3 425c-1 6.5-5.9 11.7-12.2 13.1s-13-1.1-16.7-6.5l-59.7-86.7-91.4 52.2c-5.7 3.3-12.8 2.7-17.9-1.4s-7.2-10.9-5.3-17.2zm28.3-101.7c-9.3 10.9-25.2 14.4-38.6 7.7l-65.9-32.9-85.7-42.9-104.3-52.2c-15.8-7.9-22.2-27.1-14.3-42.9l40-80C48.8 22.8 59.9 16 72 16h120c5 0 9.9 1.2 14.3 3.4l78.2 39.1 81.8 40.9c15.8 7.9 22.2 27.1 14.3 42.9l-64 128c-1.2 2.4-2.7 4.6-4.4 6.6zm-204.6-39.5 85.9 42.9L90.9 485.5C79 509.2 50.2 518.8 26.5 507s-33.3-40.8-21.4-64.5l102.5-205.1z"/></svg></a>');
241245
$brandDiv->appendChild($brandHtml);
242246
$body->appendChild($brandDiv);
243247
}
@@ -315,10 +319,12 @@ private function fixRelativeUrls($dom, $xpath, $baseUrl)
315319
foreach ($elements as $element) {
316320
if ($element instanceof DOMElement) {
317321
$href = $element->getAttribute('href');
318-
if (strpos($href, 'mailto:') === 0 ||
322+
if (
323+
strpos($href, 'mailto:') === 0 ||
319324
strpos($href, 'tel:') === 0 ||
320325
strpos($href, 'javascript:') === 0 ||
321-
strpos($href, '#') === 0) {
326+
strpos($href, '#') === 0
327+
) {
322328
continue;
323329
}
324330
if (strpos($href, 'http') !== 0 && strpos($href, '//') !== 0) {

0 commit comments

Comments
 (0)