[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Import aus Redaxo 4.x möglich? - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Thomas.Skerbis
Beiträge: 1371
Registriert: 4. Aug 2006, 14:06
Wohnort: Rheinberg
Kontaktdaten: Website Twitter

Import aus Redaxo 4.x möglich?

18. Nov 2015, 23:51

Ist es möglich 4.x Seiten zu importieren? Ich gehe hier einfach mal von den mitgelieferten Standardaddons / Funktionen aus: Artikel, Meta, (x)yform, Community.
Klar, Module müssen angepasst werden. Was ist noch zu beachten?

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: Import aus Redaxo 4.x möglich?

19. Nov 2015, 16:38

Bisher gibt es keine Importskripte .. Werden bestimmt folgen wenn das Release draussen ist .. Mein "Gefühl" sagt mir, dass man normale Seiten gut updaten kann (Sofern die AddOns existieren)..

lg

Jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

Thomas.Skerbis
Beiträge: 1371
Registriert: 4. Aug 2006, 14:06
Wohnort: Rheinberg
Kontaktdaten: Website Twitter

Re: Import aus Redaxo 4.x möglich?

19. Nov 2015, 17:15

Na ja, bei einem Kunden ist aktuell ein größerer Relaunch geplant. (aktuell noch Redaxo 4.6). Weil die Website sicher weiter ausgebaut werden soll, macht es evtl. Sinn auf die 5er Version zu setzen.
Primär müsste der Artikel und Meta-Import hier funktionieren. Auf Addons wurde nicht großartig zurückgegriffen, bzw. die Nacharbeit lässt sich verschmerzen.

Benutzeravatar
ralf.schlott
Beiträge: 625
Registriert: 5. Dez 2007, 21:22
Wohnort: Hamburch
Kontaktdaten: Website

Re: Import aus Redaxo 4.x möglich?

23. Dez 2015, 16:31

So ein Skript wäre der Gipfel! Cool!
- Danke für Redaxo! -
http://www.prenzlweb.de

engeltom
Beiträge: 84
Registriert: 8. Nov 2006, 18:42
Wohnort: Obermichelbach
Kontaktdaten: Website

Re: Import aus Redaxo 4.x möglich?

19. Jan 2016, 20:43

Hallo zusammen, der Thread ist schon etwas älter.

Daher meine Frage: wie kann ich auf die neue Version 5 von einer 4.6.x migrieren?

Ich habe einen Datenbank-Export und einen Datei-Export in der 4.6.x erstellt und habe versucht die beiden Dateien in der Version 5 zu importieren. Es kommt nur der Fehler:

Das ist keine korrekte Importdatei. [## Redaxo Database Dump Version 5] is missing

Gruss, Thomas

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: Import aus Redaxo 4.x möglich?

20. Jan 2016, 10:15

Hallo,

man kann (noch) nicht migrieren.. Und richtig mirgrieren ohne manuelles anpassen wird es leider nicht geben (ausser du hast eine extrem einfache Seite) .. Es haben sich quasi alle Methodenaufrufe und KLassen geändert. Allgemein könnte man aber die Struktur, Templates, Artikel und Slices gut importieren, aber noch hat sich keiner gefunden der das macht. (sehe ich nicht bei uns, REDAXO Team, sondern bei der Community) ..

Wir selbst, Yakamara, werden vorraussichtlich die allermeisten Webseiten auf Version 4 laufen lassen und erst bei einem größeren Relaunch wirklich mirgieren (oder neu aufsetzen)..

soweit mal kurz von mir,

lg

Jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

5. Feb 2016, 11:05

Hallo,
Jan.Kristinus hat geschrieben:Allgemein könnte man aber die Struktur, Templates, Artikel und Slices gut importieren,
Das würde ich sogar noch weiter einschränken, denn die Slices und Templates zu importieren nützt nur sehr eingeschränkt:

Die Slices referenzieren doch Module über deren ID und die Module können ohne tiefe Änderung nur in den seltesten Fällen übernommen werden.

In den Templates werden, zumindest bei mir, sehr oft auf $REX Variablen zugegriffen und seo42 Zugriffe
gemacht - funktioniert also ohne Anpassungen sicherlich nicht mit REDAXO 5.

Bei den Artikeln muss die Verwendung der Metadaten genau unter die Lupe genommen werden.

Ergo: Vor dem (leichtfertigen) Anheben einer funktionierenden Version 4.n sollte man sich sehr genau überlegen was hier auf einen zukommt.

Ich versuche mich mal (über die Karnevalstage) an einem Analyse-Modul, dass die Kategorie > Artikel > Template > Slice > Modul Struktur ausgibt. Dann hat man schon mal einen Überblick über die potenziellen Baustellen.
Mir fallen da noch weitere Analysen ein:
$REX Variablen Nutzung
<?php echo ... ?> Aufrufe im Template
...
Mal sehen wie weit ich komme falls ich den Alkoholpegel niedrig halten kann - Karneval im Raum Köln ist halt eine nicht zu unterschätzende Herausforderung.

Kölle Alaaf
Gunter
read the manual first

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: Import aus Redaxo 4.x möglich?

5. Feb 2016, 11:12

Hallo,

klar, da gibt es noch einiges was man machen muss.. Aber sofern ich eine Seite auf R5 hochstellem möchte, irgendwie 1000 Artikel drin habe, dann habe ich schonmal eine gute Basis. R5 meldet sich dann bei den verschiedenen Fehlern in den Modulen und man kommt sehr viel schneller vom Fleck ...

Ein ultimative Lösung wird es leider nicht geben können. Verschiedene AddOn, eventuell sogar noch alte PHP Versionen, R5 Framework anders ..

Aber weitere Magic Anpassungen können wir ruhig auch andenken. Gerade die REX_VARS und $REX Variablen und eventuell Codeklassenaufrufe kann man bestimmt irgendwie automatisiert adaptieren.

Wichtig - wer will das verantwortungsvoll übernehmen ? Am besten als eigenes AddOn und vielleicht sogar sowas wie einen entfernten Import. Also Datenbankzugang der entfernten Installation eintragen etc. Alles so Wünsche von mir ;) ...

lg
Jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

Benutzeravatar
ralf.schlott
Beiträge: 625
Registriert: 5. Dez 2007, 21:22
Wohnort: Hamburch
Kontaktdaten: Website

Re: Import aus Redaxo 4.x möglich?

5. Feb 2016, 20:41

Oh ja. Das wäre sehr schön. Auch hier gerne per finanzieller Beteiligung.
Da Kunden schon wegen der 5er anfragen und dort noch nicht alle ultimativen Addons laufen, wäre es vielleicht ganz schön, wenn man für die Zukunft ein As im Ärmel hat...

(yeah! mein 600ster Beitrag!)
- Danke für Redaxo! -
http://www.prenzlweb.de

Phoebus Ryan
Beiträge: 164
Registriert: 27. Okt 2014, 15:57

Re: Import aus Redaxo 4.x möglich?

8. Feb 2016, 10:22

Ein Datenkbankimporter wäre gar nicht so schwierig. Das Problem sind wie bereits erwähnt wurde die Templates und Module.

Welche 'ultimativen' AddOns fehlen dir denn?

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

8. Feb 2016, 13:10

Hallo,
ich konnte den Alkoholdunst einigermaßen verdrängen und hier das erste Ergebnis:
Hinweis - obwohl im Redaxo 5 Forum, dennoch ist dies für die zu portierende Version 4.n gedacht!
Modul-Ausgabe:

Code: Alles auswählen

<?php
if (!$REX['REDAXO'])
{
  //echo '<pre>';
  $analyze =  new rex_analyzer;
  echo '<div id="analyze">';
  echo $analyze->getFullAnalyze();
  echo '</div>';
  //echo '</pre>';
  echo $analyze->showElements();
} else {
  echo "Struktur-Analyse";
}
?>
und hier meine Klasse "rex_analyzer":

Code: Alles auswählen

<?php
/**
 * 
 * @author Gunter Pietzsch
 *
 */
class rex_analyzer {
  var $elements;
  var $db;
  function __construct() {
    $this->elements = array ();
    $this->db = rex_sql::factory ();
  }
  /**
   *
   * adjustment of getURL() values to required anker layout
   * e.g. /level1/level2.html => #level1_level2
   * 
   * adding value to $this->elements (array) by calling makeElement();
   * @param object $cat
   * @return string
   */
  function makUp($cat) {
    $anker = "#" . substr ( $cat->getUrl (), 1 );
    $anker = str_replace ( "/", "_", $anker );
    $anker = str_replace ( ".html", "", $anker );
    $this->makeElement ( $anker, $cat );
    return $anker;
  }
  /**
   * 
   * @param string $anker
   * @param object $cat
   * 
   * called by makeUp()
   */
  function makeElement($anker, $cat) {
    $this->elements [] = "<div id='" . substr ( $anker, 1 ) . "'>";
    $this->elements [] = $this->makeElementDetail ( $cat );
    $this->elements [] = "<br>".$this->showTopButton();
    $this->elements [] = "</div>";
  }
  /**
   * provides html contents from $this->elements
   * 
   * @return string
   */
  function showElements() {
    return join ( "\n", $this->elements );
  }
  /**
   * collection of all $REX_nnn variables found in $subject
   * @param string $subject
   * @return string
   */
  function showDollarREX($subject) {
    $pattern = '|\$REX\s*\[[\'\"](.*)[\'\"]\]|';
    $pieces = array ();
    $found = preg_match_all ( $pattern, $subject, $matches, PREG_PATTERN_ORDER );
    for($i = 0; $i < $found; $i ++) {
      $pieces [] = "<h6> ---> " . $matches [0] [$i] . "</h6>";
    }
    return join ( "\n", $pieces );
  }
  /**
   * collection and preparation of all REX_NNN constants and REX_VALUE/REX_HTML_VALUE/... found in $subject
   * @param string $subject
   * @return string
   */
  function showREX($subject) {
    $pattern = '(REX_(\w*\[)\d{1,2}\]|REX_(\w*))';
    $pieces = array ();
    $found = preg_match_all ( $pattern, $subject, $matches, PREG_PATTERN_ORDER );
    for($i = 0; $i < $found; $i ++) {
      $pieces [] = "<h6> ---> " . $matches [0] [$i] . "</h6>";
    }
    return join ( "\n", $pieces );
  }
  /**
   * preparation of category details
   * called by makeElement()
   * @param object $cat
   * @return string
   */
  function makeElementDetail($cat) {
    $pieces = array ();
    $pieces [] = "<hr>";
    $pieces [] = "<h2>" . $cat->getName () . "</h2>";
    $articles = $cat->getArticles ();
    foreach ( $articles as $art ) {
      $status = ($art->isOnline () ? "online" : "offline");
      if (! $art->isStartarticle ()) {
        $pieces [] = "<h4><b>Artikel: </b>" . $art->getName () . " | <b>Id: </b>" . $art->getId () . "  | <b>Template: </b>" . $this->showTemplateName ( $art->getTemplateId () ) . " | <b>Status: </b> " . $status . "</h4>";
      } else {
        $pieces [] = "<h4><b>Startartikel: </b>" . $art->getName () . " | <b>Id: </b>" . $art->getId () . "  | <b>Template: </b>" . $this->showTemplateName ( $art->getTemplateId () ) . " | <b>Status: </b> " . $status . "</h4>";
      }
      $pieces [] = $this->getSlicesOfArticle ( $art );
    }
    return join ( "\n", $pieces );
  }
  /**
   * preparation of template name
   * @param integer $id
   * @return string
   */
  function showTemplateName($id) {
    $template = $this->db->getArray ( "SELECT * FROM `rex_template` WHERE `id`=$id" );
    return $template [0] ['name'];
  }
  /**
   * preparation of module record
   * @param integer $id
   * @return array
   */
  function showModule($id) {
    $module = $this->db->getArray ( "SELECT * FROM `rex_module` WHERE `id`=$id" );
    return $module [0];
  }
  /**
   * 
   * @param object $art
   * @return string
   */
  function getSlicesOfArticle($art) {
    $slices = OOArticleSlice::getSortedSlices ( $art->getId () );
    $pieces = array ();
    foreach ( $slices as $slice ) {
      $mid = $slice->getModuleId ();
      $mod = $this->showModule ( $mid );
      $pieces [] = "<h4> - Slice: " . $slice->getId () . " | Module: " . $mod ['name'] . "</h4>";
      $pieces [] = "<h5>Modul-Eingabe</h5>";
      $pieces [] = $this->showDollarREX ( $mod ['eingabe'] );
      $pieces [] = $this->showREX ( $mod ['eingabe'] );
      $pieces [] = "<h5>Modul-Ausgabe</h5>";
      $pieces [] = $this->showDollarREX ( $mod ['ausgabe'] );
      $pieces [] = $this->showREX ( $mod ['ausgabe'] );
      $pieces [] = "<hr>";
    }
    return join ( "\n", $pieces );
  }
  function showTopButton() {
  	return "<a href = '#analyze'><button class='btn btn-primary'>nach Oben</button></a>";
  }
  /**
   * @return string
   */
  function getFullAnalyze() {
  	$pieces = array();
    $pieces [] = '<ul class="analyze1">';
    foreach ( OOCategory::getRootCategories () as $lev1 ) {
      $pieces [] = '<li><a href="' . $this->makUp ( $lev1 ) . '">' . $lev1->getName () . '</a>';
      if (count ( $lev1->getChildren () ) > 0) {
        $pieces [] = '<ul class="analyze2">';
        foreach ( $lev1->getChildren () as $lev2 ) {
          $pieces [] = '<li><a href="' . $this->makUp ( $lev2 ) . '">' . $lev2->getName () . '</a>'; // *******
          if (count ( $lev2->getChildren () ) > 0) {
            $pieces [] = '<ul class="analyze3">';
            foreach ( $lev2->getChildren () as $lev3 ) {
              $pieces [] = '<li><a href="' . $this->makUp ( $lev3 ) . '">' . $lev3->getName () . '</a>';
              if (count ( $lev3->getChildren () ) > 0) {
                $pieces [] = '<ul class="analyze4">';
                foreach ( $lev3->getChildren () as $lev4 ) {
                  $pieces [] = '<li><a href="' . $this->makUp ( $lev4 ) . '">' . $lev4->getName () . '</a>';
                }
                $pieces [] = '</ul>';
              }
              $pieces [] = '</li>';
            }
            $pieces [] = '</ul>';
          }
          $pieces [] = '</li>';
        }
        $pieces [] = '</ul>';
      }
      $pieces [] = '</li>';
    }
    $pieces [] = '</ul>';
    return join ( "\n", $pieces );
  }
}
 
Ich hab noch kein (vorzeigbares) Addon daraus gemacht, aber ich denke das ist nicht wirklich ein Problem.

Auch die Bildschirmausgabe erfolgt noch ohne spezielles CSS.

Ich laufe hier einfach durch alle Kategorien und deren Unterkategorien (nur bis zum 4. Level - da noch ohne Rekursion) samt aller Artikel derselben.
Dort analysiere ich die Slices und die benutzten Module nach $REX_XYZ sowie REX_VALUE und Co.

Die Templates führe ich z. Zt. nur namentlich auf - an der Analyse arbeite ich gerade. Hier bin ich allerdings noch in der Konzeptfindung, da ja nicht jeder seine Templates nach dem gleichen Muster aufbaut und nur nach meinen eigenen Vorstellungen von einem Template zu gehen, greift hier wohl zu kurz.

Feedback erwünscht.

Alaaf
Gunter
read the manual first

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: Import aus Redaxo 4.x möglich?

9. Feb 2016, 11:46

Jetzt muss nur noch jemand sagen - ich mach das :) ..
Das REDAXO 5 Board ist genau richtig..
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

9. Feb 2016, 12:18

Hallo Jan,

so weit möchte ich mich (noch) nicht aus den Fenster lehnen - und eine Zusage machen, die ich nachher nicht einhalten kann.
Ich habe mein ursprüngliches Zeitfenster (Karneval) über den Aschermittwoch hinaus bis zum kommenden Wochenende verlängert. Mal sehen wie weit ich damit komme. Ich werde das Ergebnis präsentieren.

Mein Plan ist schon, über das Analyse Tool hinaus, einen Importer für V5 zu schreiben.
dabei möchte ich zweistufig vorgehen:

1. Export der relevanten tabellen aus V4.n
2. Einlesen, Analysieren und Anpassen des Export-files (sql) in V5

Eine direkten Datenbankzugriff von V5 auf die V4.n Datenbank wäre natürlich der elegantere Weg, hier sehe ich aber einige unüberwindbare Hindernisse, sobald sich die beiden Versionen auf unterschiedlichen Servern befinden. An meine MySQL DBs kommt nur der localhost und kein fremder Server. Ich denke das ist bei den meisten Installationen providerbedingt der Fall.

(noch) Alaaf
Gunter
read the manual first

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: Import aus Redaxo 4.x möglich?

9. Feb 2016, 12:33

das stimmt.. ein export sollte ausreichen, wobei ein fileexport auch gut wäre (der aber wegen der größe bestimmt nicht so leicht gehen wird.)

Wenn du auf github ein AddOn anlegst und deine Sachen dort ablegst und sammelst, wird sich es sicher Leute geben, die zuarbeiten und Tipps geben.

>so weit möchte ich mich (noch) nicht aus den Fenster lehnen - und eine Zusage machen,

Mach dir nicht zu viele Gedanken. Solange du es Ok findest, dass im Notfall jemand anderes für dich weitermacht ist alles gut :)

lg und hau rein :)

Jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

11. Feb 2016, 11:03

Hallo Allerseits,

Ich habe den Analyse-Teil des zukünftigen Portierungs-Addon als Addon in Redaxo 4 bereitgestellt.

Änderung zu meinem ersten hier veröffentlichen proof of concept - Ansatz mit der Ausgabe der Analyse ins Frontend - die Analyse wird im Backend ausgegeben!

An dem Export - Teil arbeite ich derzeit und werde das Addon aktualisieren sobald ich hier was zu bieten habe.

Ich habe in dem Addon zwar behauptet, dass es auch für die Versionen 4.3 und 4.4 geeignet sei, habe dies aber, mangels Masse, nicht prüfen können.
Hier kann ich Rückmeldungen gut gebrauchen!

Das Addon findet Ihr als gp_analyzer im Addon Bereich.

@jan
was ist hier genau zu tun, wo kann ich mich dazu schlau machen?
Jan.Kristinus hat geschrieben:Wenn du auf github ein AddOn anlegst und deine Sachen dort ablegst und sammelst, wird sich es sicher Leute geben, die zuarbeiten und Tipps geben.
Nachtrag: Habe, soweit ich die Vorgehensweise hierzu begriffen habe, das Addon auch in github angelegt: gp_analyzer

Viel Spass damit
Gunter
read the manual first

Benutzeravatar
Jan.Kristinus
Admin
Beiträge: 2166
Registriert: 24. Aug 2004, 22:11
Wohnort: Frankfurt
Kontaktdaten: ICQ Website

Re: Import aus Redaxo 4.x möglich?

11. Feb 2016, 12:42

hallo,

du hast ja schonmal das addon bekanntgemacht und nun hoffen wir mal, dass es feedback gibt.. wenn du es noch in myredaxo aufnimmst und so anderen verfügabr machst - umso besser :)

habe das addon nicht getestet, aber wäre toll, wenn es andere schonmal machen..

sehe ich das richtig, dass dein ansatz ist, in r4 ein addon zu bauen welches dann einen r5 export rausspuckt ?

lg

Jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

11. Feb 2016, 13:17

Hallo,
Jan.Kristinus hat geschrieben: wenn du es noch in myredaxo aufnimmst und so anderen verfügabr machst
Dachte, das hätte ich gemacht, hab ich da was übersehen?
Siehe:http://www.redaxo.org/de/download/addon ... &cat_id=-1
Jan.Kristinus hat geschrieben:sehe ich das richtig, dass dein ansatz ist, in r4 ein addon zu bauen welches dann einen r5 export rausspuckt
Ja fast, der Export beinhaltet dann, neben den Tabellen (sql) auch noch einige Analyseergebnisse. Diese müssen dann in einem r5 addon importiert und abhängig von den Analyseergebnissen abgepasst werden.
Grund:
aus r4 Sicht ist dabei der Export immer gleich.
aus r5 Sicht kann der Import aber durchaus variieren, da spätere Versionen von r5 ja eine andere Anpassung nötig machen könnten. Dabei muss dann einfach ein für diese Version angepasstes Addon den Import versiongemäß vornehmen können.

Momentan könnte man durchaus die Anpassungen bereits in r4 vornehmen. Das halte ich aber als für zu kurz gegriffen, denn dann müsste zukünftig ein r4 addon angepasst werden nur weil eine neue r5 Version dies erforderlich macht. Das gerät schnell aus dem Fokus und würde zudem das r4 Addon unnötig kompliziert machen. Ich müsste da ja dort die Zielversion abfragen.
Eine Anpassung des r5 addons im Rahmen der r5 Evolution scheint mir hier viel logischer.

aber das Ganze ist meine persönliche Sicht und ich lasse mich hier gerne eines Besseren belehren.
Diskussion freigegeben!

ich habe auch noch eine Frage an die Community: Hat jemand eine Idee wie ich Module auf verwendete Addons prüfen kann?
lg
Gunter
read the manual first

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

13. Feb 2016, 00:50

Ich hänge hier gerade etwas durch, da ich nicht so recht weiß wie ich einige der Unterschiede zwischen der r4 Version von rex_article_slices und der r5 Version behandeln muss.

In r4 gibt es die Felder php und html. Diese gibt es so in der r5 Version nicht mehr. Laut GitHub "Aenderungen in REDAXO 5" werden die Inhalte in r5 als REX_VALUE(id=1 output=php) bzw. REX_VALUE(id=1 output=html) ausgegeben, wobei der letzte Fall ja wohl grundsätzlich für jedes VALUE Feld gilt.

Hier suche ich nach einem Ansatz für die Datenübernahme.
Davon hängt ja auch noch der Verfahrensweg für die Modulanpassung ab.

Hoffentlich könnt ihr mir da weiterhelfen.

lg
Gunter
read the manual first

tito24
Beiträge: 21
Registriert: 25. Jul 2012, 00:26

Re: Import aus Redaxo 4.x möglich?

13. Feb 2016, 02:52

Hallo Gunter,

ich verfolge den Beitrag mit dem Redaxo 4 -> 5 Import mit großen Interesse und würde mich sehr freuen, wenn du hier eine Lösung anbieten kannst. Ich denke wenn das Update von der Version 4.6 funktioniert ist das schon eine tolle Sache, weil das ja ein kompletter Versionssprung zur Version 5 war.

Gruß
Tito24

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

14. Feb 2016, 22:27

Hallo,
irgenwie scheine ich hier an eine Grenze gekommen zu sein.
Ich arbeite gerade an der Funktion um die globalen r4 Variablen in die r5 Form zu bringen.
Hier bin ich davon ausgegangen, dass die meisten Variablen in r5 als rex::getProperty('key') angesprochen werden.

Das funktioniert offensichtlich aber, wie Thomas auf GitHub: "Aenderungen in REDAXO 5" ausgeführt, bei Addon spezifischen Variablen durch Addon eigene Festlegung.

mein 1. schneller Versuch in einem r5 Testmodul hatte mich aber nicht weitergebracht - hier hatte ich versucht ein paar Variablen zu testen:

Code: Alles auswählen

<?php
if (!rex::isBackend()) {
    echo "Frontend<br>";
    echo "ERROR_EMAIL ".rex::getProperty('ERROR_EMAIL')."<br>";
    echo "HTDOCS_PATH ".rex::getProperty('HTDOCS_PATH')."<br>";
} else {
    echo "Backend";
}
?>
Das Ergebnis war ernüchternd. Deshalb habe ich mir die GitHub Infos nochmal genauer angeschaut.
ERROR_EMAIL stammt wohl von XForm und HTDOCS_PATH muss via rex_path::xxx ermittelt werden. Wie das genau auszusehen hat, konnte ich aber nicht herausfinden.

Ich fürchte mittlerweile, dass eine automatische Anpassung der Module, und damit warscheinlich auch der Templates, vorest kaum umzusetzen sein wird.

Ich werde mich deshalb erstmal nur den Export von rex_article, rex_article_slice, rex_template, rex_module, rex_module_action mit anpassung der Feldnamen in einem einsetzbaren Addon realisieren.
Module und Templates werden also, zumindest vorest, händisch nachbearbeitet werden müssen. Dies wird ja sowieso nötig sein, da ja auch noch nicht alle Addons zur Verfügung stehen.

lg
Gunter
read the manual first

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

Re: Import aus Redaxo 4.x möglich?

15. Feb 2016, 09:47

Hej Gunter,

bitte schreibe hier einfach weiter, sofern du nicht weiter kommst. Wir werden versuchen dich hier zu unterstützen. Zu deinen 2 Variablen.
gupi hat geschrieben:ERROR_EMAIL stammt wohl von XForm und HTDOCS_PATH muss via rex_path::xxx ermittelt werden. Wie das genau auszusehen hat, konnte ich aber nicht herausfinden.
Xform nutzte ERROR_EMAIL, wurde aber von REDAXO unter der Systempage bereitgestellt und in $REX['ERROR_EMAIL'] gespeichert.

Probier mal bitte folgendes:

Code: Alles auswählen

echo 'ERROR_EMAIL ' . rex::getErrorEmail() .'<br />;
echo 'HTDOCS_PATH ' . rex_path::base() . '<br />';
vg Thomas

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

15. Feb 2016, 11:12

Hallo Thomas,

weitermachen ist klar, auch in Richtung Austausch von Variablen und co. Was ich mit meiner Mail ausdrücken wollte, ist, dass ich die Prioritäten verschoben habe.

Ich werde also meine aktuelle adjustModule() und adjustTemplate() Funktion so belassen wie sie sind. Die zu tauschenden $REX Variablen können ja leicht nachgetragen werden, momentan trage ich sie händisch in den code ein.

Damit aber möglichst schnell getestet werden kann, werde ich mich auf r4 Export und r5 Import konzentrieren um das Addon schnellstmöglich nutzbar zu machen. Die adjust Funktionen sollten halt nicht zu show stopper werden.

Ich bleibe dran.

lg
Gunter
read the manual first

gupi
Beiträge: 286
Registriert: 20. Nov 2008, 13:49
Wohnort: Elsdorf/Rheinland

Re: Import aus Redaxo 4.x möglich?

16. Feb 2016, 13:05

Hey,
ich bin jetzt in meiner Testumgebung soweit, dass ich den Import nach r5 testen will. Dazu benötige ich aber ein (leeres) r5 Addon Template oder ähnliches.
Hat jemand sowas? Momentan schaffe ich es nicht mich erst noch in die Theorie der r5 Addon Entwicklung einzuarbeiten. Das würde das Ganze noch mehr verzögern und mein Zeitfenster für das projekt r4->r5 arg strapazieren.
Ich will in r5 lediglich meine Klasse mit den Datenübernahmefunktionen etablieren, damit ich dort testen kann ob r5 meine r4 exporte liest und natürlich speichert.

Danke
Gunter
read the manual first

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

Re: Import aus Redaxo 4.x möglich?

16. Feb 2016, 14:48

Hej Gunter,

es gibt ein Dummy

https://github.com/redaxo/redaxo_dummy


Deine Klassen kommen dann in den Ordner "lib" den du noch zuvor erstellen musst. Die Klassen selber brauchst du nicht einbinden, stehen automatisch zur Verfügung.

vg Thomas

Benutzeravatar
Gregor.Harlan
Entwickler
Beiträge: 1130
Registriert: 4. Jun 2007, 10:35
Wohnort: Frankfurt am Main

Re: Import aus Redaxo 4.x möglich?

17. Feb 2016, 00:32

gupi hat geschrieben:In r4 gibt es die Felder php und html. Diese gibt es so in der r5 Version nicht mehr. Laut GitHub "Aenderungen in REDAXO 5" werden die Inhalte in r5 als REX_VALUE(id=1 output=php) bzw. REX_VALUE(id=1 output=html) ausgegeben, wobei der letzte Fall ja wohl grundsätzlich für jedes VALUE Feld gilt.
In R4 konnte man auch schon die normalen Values (1..20) als HTML ausgeben oder als PHP interpretieren lassen mit REX_HTML_VALUE[x] bzw. REX_PHP_VALUE[x].

Die Entsprechung dafür in R5 ist REX_VALUE[id=x output=html] und REX_VALUE[id=x output=php].

Zusätzlich gab es in R4 noch jeweils ein einzelnes Feld für HTML, und eins für PHP: REX_HTML und REX_PHP.
Diese sind in R5 ersatzlos weggefallen.

Ein automatischer Import ist somit schwierig. Man müsste schauen, welche Values noch frei sind und somit nutzbar für diese Felder.

PS: Interessanterweise wurde in R4 für PHP üblicherweise das einzelne REX_PHP Feld verwendet, für HTML aber die Variante über die normalen Values. REX_HTML und REX_PHP_VALUE[x] wurden meinem Eindruck nach eher selten verwendet.
Friends Of REDAXO: Gemeinsame REDAXO-Entwicklung!

Zurück zu „Allgemeines [R5]“