Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Rewrite html generation #47

Open
stefanheimes opened this issue May 23, 2019 · 6 comments
Open

[Feature] Rewrite html generation #47

stefanheimes opened this issue May 23, 2019 · 6 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@stefanheimes
Copy link
Member

All of the HTML is generated inline in PHP. We don't have any templates. So it is relay difficult to rewrite the HTML or even replace it with another structure.

I have created a new feature brunch with Twig Template support. (https://github.com/menatwork/contao-multicolumnwizard-bundle/tree/features/twig)

But there are some Questions:

  1. Should we use one template for all or three (1. HTML MCW 2. Script Block 3. Outter Template for 1. and 2. Point)
  2. Should we use a div or a table structure.
  3. Any other wishes?
@stefanheimes stefanheimes self-assigned this May 23, 2019
@stefanheimes stefanheimes added enhancement New feature or request help wanted Extra attention is needed question Further information is requested labels May 23, 2019
@stefanheimes stefanheimes added this to the 3.4.x milestone May 23, 2019
@stefanheimes
Copy link
Member Author

@zonky2
Copy link
Contributor

zonky2 commented May 23, 2019

wenn wir die Templates austauschbar machen, ist das im Prinzip egal, ob table oder div - da du schon divs gemacht hast, kann das so bleiben...
Das CSS würde ich mit table/table-row/table-cell machen - die einzelnen Spalten/Zeilen/Zellen sollten über CSS-Klassen ansprechbar sein.

Die wichtigste Einstellung wird die Spaltenbreite sein - die sollte flexibel als px oder % einstellbar sein. Das sollte auch ohne eine CSS-Datei möglich sein, damit man wie in MM multitable das mit einer DCA-Datei abfrühstücken kann.

@stefanheimes
Copy link
Member Author

@zonky2 Idee wäre, dass im eval vom Widget dann solch eine Einstellung noch vornehmen, und diese dann auf jeder Spalte setzten.

@zonky2
Copy link
Contributor

zonky2 commented May 23, 2019

Hauptsache wir sind nicht mehr an feste Pixel gebunden - in C4 macht das keinen Sinn mehr (bis auf die feste Breite der Icon-Spalte)

@discordier
Copy link
Member

discordier commented May 24, 2019

Allgemein zu twig Templates. Injecte so wenig wie möglich aber so komfortabel wie möglich.
Beispiel schlecht:

$twig->render([
    'headFoo' => $translator->trans('Foo'),
    'headBar' => $translator->trans('Bar'),
    'foo' => $this->foo,
    'bar' => $this->bar,
])
{{ headFoo }}: {{ foo }}
{{ headBar }}: {{ bar }}

Beispiel besser:

$twig->render([
    'widget' => $this
])
{% trans %}Foo{% endtrans %}: {{ widget.foo }}
{% trans %}Bar{% endtrans %}: {{ widget.bar }}

Es ist geschickter, wenn das Template sich die Informationen pullen kann, denn nur es weiß was genau es braucht. Wenn z.B. ein Text nicht ausgegeben werden soll, macht es keinen Sinn diesen im Controller auch zu übersetzen.

Lasst uns das auf Mumble mal aufgreifen.

@zonky2 zonky2 removed help wanted Extra attention is needed question Further information is requested labels May 28, 2019
@zonky2
Copy link
Contributor

zonky2 commented Jul 24, 2019

@zonky2 zonky2 modified the milestones: 3.4.x, 3.5.x Aug 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants