Author Topic: Neues Modul "OneForAll"  (Read 34315 times)

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #250 on: April 05, 2017, 03:53:37 PM »
Hallo Christoph,

wie Manu oben erklärt hat ist es normal, dass die Accessfiles (in meinem Fall) nicht neuerstellt werden.
Wirst du da noch was dran ändern?

Gruß
Frank

Offline freeSbee

  • Posts: 1117
    • BAKERY - Website Baker shop module
Re: Neues Modul "OneForAll"
« Reply #251 on: April 06, 2017, 10:54:39 AM »
1. Einheitlich URLs

Ich finde es wichtig, dass OneForAll seine Kindseiten (Modul Detailseiten) in ein Verzeichnis ablegt, das den gleichen Namen benutzt wie die Elternseite (Modul Übersichtsseite). Auf diese Weise sind die URLs einheitlich und dies macht nicht zuletzt auch aus SEO-Sicht Sinn.

Bsp:
Übersichtsseite: example.com/appartements.php
Detailseiten:      example.com/appartements/studio-1-1.php
                        example.com/appartements/studio-2-2.php
                        example.com/appartements/studio-3-3.php
                        example.com/appartements/loft-1-4.php
                        example.com/appartements/loft-2-5.php
                        etc



2. Seiten-Konflikte

Konflikte zwischen Seiten entstehen nicht nur durch die Benutzung der Core-Funktion rebuildAccessFiles und OneForAll. Es ist grundsätzlich ein Problem von WB, dass durch das Erstellen einer ungeeigneten Seitenstruktur Verzeichnisse mit Access-Files ungewollt gelöscht werden, weil Unterverzeichnisse von "pages" gemeinsam genutzt werden: Einerseits durch "normale" WB-Unterseiten, andererseits durch Detailseiten (Kindseiten) eines Moduls.

Ein Bespiel anhand des News-Moduls:

Das News-Modul legt im Verzeichnis "pages" ein eigenes Unterverzeichnis "posts" an. Wenn nun ein Benutzer auf die Idee kommt, eine neue WB-Seite (egal, welcher Art) mit dem Titel "Posts" anzulegen, wird dies im ersten Versuch scheitern und mit der Fehlermeldung «Eine Seite mit einem ähnlichen oder demselben Titel existiert bereits» verhindert.

Der Benutzer möchte die Seite aber unbedingt "Posts" nennen und legt dazu zuerst eine Dummy-Seite an mit einem Titel, der noch nicht vergeben ist und keinen Fehler produziert, zB. "Dummy". Anschliessend benennt er die Seite um in "Posts", insbesondere ändert er unter "Einstellungen ändern" > "Datei-Link" den Dateinamen in "posts", was alles ohne Probleme funktioniert …

Nun wird das Verzeichnis "posts" gemeinsam einerseits durch die Unterseiten der Seite "Posts", andererseits durch Kindseiten des News-Moduls genutzt.

Wird nun die Seite "Posts" gelöscht oder die Core-Funktion rebuildAccessFiles gestartet, wird das ganze Verzeichnis "posts" inkl. aller Access-Files des News-Moduls gelöscht!


Conclusion

Das Problem ist vielschichtig und nicht nur ein OneForAll-Problem. Im Core müssten beispielsweise zusätzliche Überprüfungen beim Ändern der Seiteneinstellungen eingebaut werden. Meiner Meinung nach dürfte die Core-Funktion rebuildAccessFiles nur Access-Files löschen, die auch wieder hergestellt werden können. Eventuell hilft ein "Flag" in den Access-Files, welche vom Core erstellt werden, um diese von Modul Access-Files zu unterscheiden.

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #252 on: April 09, 2017, 10:33:07 PM »
In der Vergangenheit gingen öfter mal access files verloren. Rebuild Access Files konnte die dann aber wieder herstellen. Da hatte ich wohl zufällig eine passende Struktur. Ich glaube nicht, dass von Dev-Seite was gemacht wird. Sie sehen das sicher als Modulproblem.

Andere Frage.
Das Datumsfeld (datepicker) möchte ich gern mit dem aktuellen Datum vorbelegen falls noch keins in der DB ist. Also neuer Eintrag = Datum von heute.
In der functions.php in der function field_datepicker habe ich dies an den Anfang gesetzt:
Code: [Select]
if ($value==0) {
    $value = date('d.m.Y');
}

Das scheint zu klappen. Bin ich da richtig, kann man das so machen?

Offline astricia

  • Posts: 626
  • Gender: Female
    • netSchmiede24
Re: Neues Modul "OneForAll"
« Reply #253 on: April 20, 2017, 12:28:39 PM »
Gibt es die Möglichkeit, mit einem Code-Aufruf ähnlich wie "AnyItems" eine beliebige Anzahl aus ALLEN Sections dieses Moduls aufzurufen? Ich versuche gerade, mit OFA einen Blog aufzubauen, der mehrere Kategorie-Unterseiten hat. Auf jeder Unterseite befindet sich also ein OFA-Modul mit den Blog-Einträgen. Nun möchte ich auf der Startseite die x neuesten Beiträge aus ALLEN Unterseiten anzeigen. Zeitlich sortiert, unabhängig davon, von welcher Kategorie-Unterseite sie gerade kommen. Wie mache ich das am besten?

LG,
Astrid

Offline astricia

  • Posts: 626
  • Gender: Female
    • netSchmiede24
Re: Neues Modul "OneForAll"
« Reply #254 on: April 20, 2017, 05:51:40 PM »
Gibt es die Möglichkeit, mit einem Code-Aufruf ähnlich wie "AnyItems" eine beliebige Anzahl aus ALLEN Sections dieses Moduls aufzurufen? Ich versuche gerade, mit OFA einen Blog aufzubauen, der mehrere Kategorie-Unterseiten hat. Auf jeder Unterseite befindet sich also ein OFA-Modul mit den Blog-Einträgen. Nun möchte ich auf der Startseite die x neuesten Beiträge aus ALLEN Unterseiten anzeigen. Zeitlich sortiert, unabhängig davon, von welcher Kategorie-Unterseite sie gerade kommen. Wie mache ich das am besten?

LG,
Astrid

Nachdem das anscheinend nicht möglich ist, habe ich jetzt versucht, das anders aufzuziehen. Die Blog-Einträge werden nun in einer versteckten Unterseite eingetragen und enthalten ein Feld des Typs "Gruppe", welches die einzelnen Kategorien enthält. Nun kann ich auf der Startseite mit AnyItems die neuesten x Beiträge aus allen Gruppen anzeigen - das funktioniert. Und ich hatte gehofft, dass ich auf den Kategorie-Unterseiten dann mit ItemGroup die jeweiligen Beiträge aus den einzelnen Gruppen/Kategorien anzeigen kann. Aber es scheint, als ob ich hier nur auf die Felder TITLE und LINK zugreifen kann, aber nicht auf die anderen Eingabefelder (FIELD_1, FIELD_2 usw.). Ist das richtig? Warum geht das nicht..... ? Ich würde neben der Überschrift auch gerne Datum, Foto und Kurztext mit anzeigen... Jemand ne Idee?

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #255 on: May 05, 2017, 08:45:30 AM »
Moin, nochmal Accessfiles. Hatte ein neues Projekt angefangen und musste wegen Problemen an anderer Stelle Rebuild Accessfiles auslösen.
Ergebnis war natürlich wieder der Verlust der OFA Detailseiten. Über 50 Stück.

Ich weiß nicht ob ich mich über meine Vegesslichkeit ärgern soll oder über was anderes. Vielleicht muss das nur oft genug passieren bis es sich eingebrannt hat.

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll" - Accessfiles
« Reply #256 on: May 12, 2017, 03:22:29 PM »
Ist nicht mehr so lustig mit den Accessfiles.
1&1, PHP 7.0.18, WB SP7, shorturl, ofa 1.0.6
Eine Seite "News" hat ein umbenantes OFA "news ofa" und auch das normale Newsmodul.
ofa News nutzt keine Detailseiten. Löscht man ein Item geht das Accessfile  pages/news.php verloren. Hab jetzt erstmal in der delete-item.php das unlink($item_link); auskommentiert.
Woran liegts?

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #257 on: May 21, 2017, 10:25:52 PM »
Noch jemand hier?
Detailseiten sind in der config.php auf false. Löscht man ein Item geht das Accessfile verloren.  :|

Offline Ruud

  • Posts: 3649
  • Gender: Male
  • Do not use PM for help! Please use the forum!
    • Dev4Me - Professional WebsiteBaker Development
Re: Neues Modul "OneForAll"
« Reply #258 on: May 21, 2017, 10:42:36 PM »
When items are saved without accessfile the field link is empty.
The link that will be removed in that case is the ofa page itself.

The fix is to do a check for the "link" first.
delete_item.php from line 48:
Code: (original) [Select]
$item_link = WB_PATH.PAGES_DIRECTORY.$page['link'].$get_details['link'].PAGE_EXTENSION;
if (is_writable($item_link)) {
unlink($item_link);
}
should be wrapped in:
Code: [Select]
if($get_details['link']) {  //only delete when link was originally stored
$item_link = WB_PATH.PAGES_DIRECTORY.$page['link'].$get_details['link'].PAGE_EXTENSION;
if (is_writable($item_link)) {
unlink($item_link);
}
}



Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #259 on: May 21, 2017, 11:01:00 PM »
Hehe, this works. Thank you Ruud.  (Y)
Should be implemented in the official version.

Offline freeSbee

  • Posts: 1117
    • BAKERY - Website Baker shop module
Re: Neues Modul "OneForAll"
« Reply #260 on: May 22, 2017, 11:53:04 AM »
I have added it to the code so it will be part of the next version.
I thank both of you!

Offline freeSbee

  • Posts: 1117
    • BAKERY - Website Baker shop module
Re: Neues Modul "OneForAll"
« Reply #261 on: May 30, 2017, 10:13:36 AM »

Neue OneForAll Version:

VERSION 1.0.7 (30.05.2017)


WEITERE INFOS
Weitere Informationen findest du in folgendem WB Forum Thread (Englisch).

DOWNLOAD
Download als zip-Datei: Download-Link.

Christoph

Offline astricia

  • Posts: 626
  • Gender: Female
    • netSchmiede24
Re: Neues Modul "OneForAll"
« Reply #262 on: June 30, 2017, 12:18:09 PM »
Eine Frage zu dem Eingabefeld-Typ "Schalter".

Ich habe das in einer OFA-Instanz, mit der Referenzprojekte beschrieben werden, für die Farbgestaltung einer Bildbeschreibung (die auf dem Bild selbst angezeigt wird) gewählt. Der Feldtyp ist also "Schalter (ein/aus)", das Feld heißt "Dunkles Titelfoto? (ja/nein) und das Feld ist mit folgendem Inhalt belegt: "style=color: #fff;" - normalerweise ist die Schriftfarbe schwarz. Aufgerufen wird das Feld dann in den Seiteneinstellungen wie folgt: "<div class="ref_titel" [FIELD_31]">" - Somit sollte das Feld 31 (also dieser Schalter) ja nur aufgerufen werden, wenn er auf "ja" gestellt ist.

Dies war notwendig geworden, weil eben plötzlich ein dunkles Bild als Titelfoto gewählt wurde und dort die Beschriftung auf dem Bild nicht mehr lesbar war.

Nun gibt es aber einen weiteren Eintrag in dieser OFA-Instanz, die wiederum ein helles Bild hat. Aber es wurde versehentlich der Schalter auf "ja" umgelegt - > Folge, die Schrift war weiß. So weit, so gut. Aber bei Rückschaltung des Schalters auf "nein" blieb die Schriftart weiß!!! Es scheint also, als ob der Schalter, wenn er erst 1x umgelegt war, sich nicht mehr rückgängig machen lässt.

Ich habe das bei einem anderen Eintrag (bei der das Titelbild eine mittlere Farbe hatte - also nicht so schlimm, wenn die Schrift weiß oder schwarz ist) getestet. Und ja - beim erstmaligen Umlegen des Schalters auf "ja", wurde die Schrift von schwarz auf weiß geändert. Beim wiederholten Umlegen des Schalters auf "nein" blieb die Schrift aber weiß.

Kann mir bitte jemand sagen, wie das geändert werden kann???

Danke und liebe Grüße,
Astrid

Offline astricia

  • Posts: 626
  • Gender: Female
    • netSchmiede24
Re: Neues Modul "OneForAll"
« Reply #263 on: June 30, 2017, 04:00:19 PM »
Noch mal zum gleichen Problem - etwas mehr Ursachenforschung hat ergeben, dass der Inhalt des Schalter-Feldes immer dann ausgegeben wird, wenn eine Referenz neu abgespeichert wird. Selbst dann, wenn der Schalter selbst überhaupt nicht umgelegt wird!

Ist das ein Bug oder habe ich einen grundsätzlichen Denkfehler in der Konstruktion des Schalter-Feldes???

LG,
Astrid

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #264 on: June 30, 2017, 04:27:00 PM »
Quote
Code: [Select]
"style=color: #fff;"
Das sieht schon mal etwas komisch aus.

Versuch es doch besser mit Klassen.
Code: [Select]
<div class="ref_titel [FIELD_31]">

.ref_titel.ja {color: ...}
.ref_titel.nein {color: ...}

Wobei nein oder Nein eigentlich überflüssig ist.
Dann darf in dem Feld aber nur [CUSTOM_CONTENT] drin stehen
« Last Edit: June 30, 2017, 04:36:55 PM by dbs »

Offline astricia

  • Posts: 626
  • Gender: Female
    • netSchmiede24
Re: Neues Modul "OneForAll"
« Reply #265 on: June 30, 2017, 05:57:47 PM »
ok, so klappt es... ich bin eigentlich davon ausgegangen, dass Schalter=ein immer bedeutet "Zeige den Feldinhalt" und Schalter=aus "Zeige den Feldinhalt nicht". Dann hätte meine Konstruktion eigentlich auch funktionieren müssen.

Aber danke für den Tipp! :-D

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll" SYSVAR:MEDIA_REL
« Reply #266 on: September 06, 2017, 07:31:29 PM »
Hallo Christoph,

habe gerade eine Seite auf HTTPS umgestellt und erschreckt festgestellt, dass alle Bilder in OFA wysiwygs immer noch das HTTP nutzen.
Ist da das SYSVAR:MEDIA_REL nicht im Spiel bei OFA?

Gruß
Frank

Offline freeSbee

  • Posts: 1117
    • BAKERY - Website Baker shop module
Re: Neues Modul "OneForAll"
« Reply #267 on: September 06, 2017, 07:47:19 PM »
Das OFA-Modul wie auch andere WB-Module nutzen in der Regel das WYSIWYG-Modul, um einen WYSIWYG-Editor zu implementieren.

Offline jacobi22

  • Posts: 5836
  • Gender: Male
  • Support also via PM or EMail
    • Jacobi22
Re: Neues Modul "OneForAll"
« Reply #268 on: September 06, 2017, 07:54:14 PM »
nicht ganz richtig
benutzt wird in OFA nicht das Wysiwyg-Modul, sondern der eingestellte Standard-Editor (den auch das wysiwyg-Modul benutzt)

Quote from: dbs
Ist da das SYSVAR:MEDIA_REL nicht im Spiel bei OFA?

Nein, ist nicht in Verwendung. Der Aufwand, es zu implementieren, ist aber relativ gering. Wysiwyg-Modul oder News sind da gute Copy&Paste-Vorlagen, hatte das bei mir schon mal gemacht, aber beim Upgrade nicht aufgepasst
Probleme sind da, um sie zu lösen, nicht, um nach Ausreden zu suchen.

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #269 on: September 06, 2017, 10:44:43 PM »
In der save_item.php war nichts zu sehen von MEDIA_REL, deshalb hier die Frage.
Exportieren, Search&Replace, Importieren hat geholfen.  :-)
Als Nächstes schau ich dann mal wegen Copy&Paste.

Offline freeSbee

  • Posts: 1117
    • BAKERY - Website Baker shop module
Re: Neues Modul "OneForAll"
« Reply #270 on: September 12, 2017, 06:24:54 PM »

Neue OneForAll Version:

VERSION 1.0.8 (12.09.2017)


WICHTIG:
Nach dem Upgrade auf diese Version und dem erneuten Speichern eines Eintrags kann die URL des Eintrags geändert sein (ohne item_id).



WEITERE INFOS
Weitere Informationen findest du in folgendem WB Forum Thread (Englisch).

DOWNLOAD
Download als zip-Datei: Download-Link.

Christoph

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #271 on: September 22, 2017, 04:14:13 PM »
Gefällt mir, dass die -id nicht mehr in der URL ist.  (Y)
Danke mal wieder.

Nimmst du das SYSVAR:MEDIA_REL noch mit auf die Todo-Liste?

Offline dbs

  • Betatester
  • **
  • Posts: 7907
  • Gender: Male
  • tioz4ever
    • WebsiteBaker - jQuery-Plugins - Module - Droplets - Tests
Re: Neues Modul "OneForAll"
« Reply #272 on: October 06, 2017, 07:10:59 PM »
Quote
Christoph hat seine Entwicklung und Support für WB wohl eingestellt.

ich korrigiere:
Christoph hat seine Entwicklung und Support für die von ihm entwickelten Addons eingestellt.
Es geht nicht um das verwendete CMS, es ist vorallem der Aufwand, der nötig wäre, um diese Addons auf ein neues, modernes Level umzustellen. Ich rechne pro Modul mit mindestens vier Monate Vollzeit, dazu kämen die Snippets
Diese, seine Entscheidung wurde in den letzten Jahren mit Blick auf den Code bereits mehrfach angekündigt, sowohl intern wie auch öffentlich.
« Last Edit: October 06, 2017, 11:00:50 PM by jacobi22 »

 

postern-length