[BUG] content_link_list - Link nicht löschbar

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

[BUG] content_link_list - Link nicht löschbar

Beitrag von rethus »

Ich finde keine Möglichkeit, einen über das Modul content_link_list eingegebenen Link zu löschen.
Gehe ich auf den Link, kann ich zwar in dem Verzeichnis "kein" wählen, und den "Link-Title" löschen, dennoch bleibt der Link zum upload-Verzeichnis (in kompletter schreibweise http://domain.tld/uploads/) dort stehen.

Öffne ich diesen Link erneut, ist auch noch die Selektion von "Kein" im Dateifenster zu sehen.
Hier hat das Modul ein Bug, der scheinbar einige Leichen in der DB zurück lässt. Gut wäre das Modul um einen Löschbutton zu ergänzen, der den Link entfernt.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von rethus »

Hier ein einfacher Lösungsansatz, ohne Bereinigungs-Funktion in der DB:

In der Datei:class.content.type.linkeditor.php dort in der Funktion generateViewCode() folgendes:

Code: Alles auswählen

        // generate the needed attributes
        $href = $this->_generateHref();
        if (empty($href)) {
            return '';
        }
 
ersetzen gegen:

Code: Alles auswählen

 
        // generate the needed attributes
        $href = $this->_generateHref();
        if (empty($href) || $href == $href == $this->_cfgClient[$this->_client]["upl"]["htmlpath"]) {
            return '';
        }
 
Sauberer wäre es, an dieser Stelle die gefundene Leiche aus der DB auch direkt zu entfernen, nur fehlt mir hier leider gerade die Zeit dazu. Daher nur dieses Feedback mit Bitte, dass in dem Modul (zum nächsten Release) zu optimieren.
Zuletzt geändert von rethus am Di 18. Feb 2014, 12:15, insgesamt 1-mal geändert.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von rethus »

Hier noch ein Verbesserungsvorschlag für das Modul (also in Style→Module→content_link_list):

vor $tpl->display('get.tpl'); noch folgendes einfügen, damit das Template gar keine HTML-Container erstellt, wenn keine Inhalte vorhanden sind:

Code: Alles auswählen

if(cRegistry::isBackendEditMode() || count(array_filter($val))>0)

Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Oldperl
Beiträge: 4316
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Hat sich bedankt: 6 Mal
Danksagung erhalten: 4 Mal
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von Oldperl »

rethus hat geschrieben:

Code: Alles auswählen

if (empty($href) || $href == $href == $this->_cfgClient[$this->_client]["upl"]["htmlpath"]) {
Ist das so richtig mit dem 2x $href ==?

Gruß aus Franken

Ortwin
ConLite 3.0.0-dev, alternatives und stabiles Update von Contenido 4.8.x unter PHP 8.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von rethus »

Ja, für den Nachdruck :D

Ne, hast natürlich recht, war ein Vertipper, hatte zuvor die cfgClient und $client über globals in die Funktion geholt. Da aber die Klasse diese als Variable besitzt, hatte ich die ersetzt und wohl versehentlich ein href zu viel reingehauen.

So is richtig:

Code: Alles auswählen

if (empty($href) || $href == $this->_cfgClient[$this->_client]["upl"]["htmlpath"]) {
PS: Schade im Forum nur zutierte CODE-Segmente gehighlightet werden. Könnte 4fb doch mal dran schrauben, dass als CODE-Deklarierte Blöcke auch syntax-highlighting aktiviert wird.
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Oldperl
Beiträge: 4316
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Hat sich bedankt: 6 Mal
Danksagung erhalten: 4 Mal
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von Oldperl »

rethus hat geschrieben:...dass als CODE-Deklarierte Blöcke auch syntax-highlighting aktiviert wird.
Das geht schon, du must nur im CodeTag ein =php ergänzen. Wobei der Parser sicherlich etwas besser sein könnte. :roll: Guckst du hier :arrow:

Code: Alles auswählen

function HighLightMe($inFarbe) {

    return ($inFarbe) ? $sAllesSoBunt : FALSE;
}

class machEtBunt extends FarbeImSpiel {

       public function __construct() {
           echo "Schoen bunt hier";
      }
}
ODER

Code: Alles auswählen

if (empty($href) || $href == $this->_cfgClient[$this->_client]["upl"]["htmlpath"]) { 
Gruß aus Franken

Ortwin
ConLite 3.0.0-dev, alternatives und stabiles Update von Contenido 4.8.x unter PHP 8.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von frederic.schneider_4fb »

Hallo Jungs,

danke für die Anregungen. Ich wollte mir gerade Euer Problem ansehen mit der Bereitschaft, die vorgenannten Code-Änderungen ggfls. in den Core zu übernehmen. Dabei wollte ich jedoch erst einmal das Problem nachstellen - und habe festgestellt, dass ich das Problem nicht habe. Vielleicht habe ich Euch aber auch nur missverstanden:
Ich habe in einer Linklist einen internen Link angegeben (Auswahl eines Verzeichnis). Im Anschluss habe ich den Link bearbeitet und habe statt den ausgewählten internen Ordner "Keine" ausgewählt sowie den Linktitel entfernt. Rufe ich danach die Bearbeitung auf, ist es m. E. alles wie es soll: Der Link ist weg. (Bei externen Links verhält es sich ebenfalls wie es soll.) Bitte korrigiert mich, wenn ich mich auf einem falschen Pfad bewege ;-).
Frederic Schneider
Entwickler bei der four for business AG
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von rethus »

Bei mir ist es halt so, dass der Link scheinbar nicht wirklich gelöscht wird, sonder nur der Dateiname. Der Pfad zum Upload-Verzeichnis bleibt erhalten, und daher wird auch was im Frontend ausgegeben. Mit der obigen Anpassung läuft es aber sauber (wenn auch die Leiche in der DB immer noch vorhanden ist).
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: [BUG] content_link_list - Link nicht löschbar

Beitrag von frederic.schneider_4fb »

Wie erwähnt: Ich habe Sympathie für Eure Anregung, habe aber auch ohne die aufgezeigten Lösungswege gar nicht das Problem. Habe ich in meinem Reproduzierungsvorgang (siehe Schilderung) irgend etwas "falsch" gemacht?
Frederic Schneider
Entwickler bei der four for business AG
Antworten