Skip to content

IBX-11663: Apply tutorials feedback#3168

Merged
julitafalcondusza merged 12 commits into
5.0from
IBX-11663
May 5, 2026
Merged

IBX-11663: Apply tutorials feedback#3168
julitafalcondusza merged 12 commits into
5.0from
IBX-11663

Conversation

@julitafalcondusza
Copy link
Copy Markdown
Contributor

@julitafalcondusza julitafalcondusza commented Apr 28, 2026

Question Answer
JIRA Ticket (https://ibexa.atlassian.net/browse/IBX-11663)
Versions 5.0

Apply tutorials feedback.

Checklist

  • Text renders correctly
  • Text has been checked with vale
  • Description metadata is up to date
  • Code samples are working
  • PHP code samples have been fixed with PHP CS fixer
  • Added link to this PR in relevant JIRA ticket or code PR

@julitafalcondusza julitafalcondusza changed the title IBX-11663: Apply "First steps" and "Beginner tutorial" feedback IBX-11663: Apply tutorials feedback Apr 30, 2026
Comment thread docs/tutorials/beginner_tutorial/5_display_a_list_of_content_items.md Outdated
Comment thread docs/tutorials/generic_field_type/8_data_migration.md Outdated
Comment thread docs/tutorials/generic_field_type/7_add_a_validation.md Outdated
Comment thread docs/tutorials/generic_field_type/7_add_a_validation.md Outdated
Comment thread code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value_final.php Outdated
@bnowak bnowak requested a review from konradoboza April 30, 2026 13:18
Copy link
Copy Markdown
Contributor

@bnowak bnowak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

approve given assuming we'll cover all suggestions 😉

thanks for addressing my all points (and beyond) - great work 💪

Copy link
Copy Markdown
Contributor

@konradoboza konradoboza left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @bnowak @julitafalcondusza, good work!

Comment thread code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value_final.php Outdated
Comment thread code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/ValueFinal.php Outdated
@julitafalcondusza julitafalcondusza requested a review from mnocon May 4, 2026 08:59
Comment thread docs/tutorials/beginner_tutorial/8_enable_account_registration.md Outdated
Comment thread docs/tutorials/beginner_tutorial/5_display_a_list_of_content_items.md Outdated
Comment thread docs/tutorials/generic_field_type/7_add_a_validation.md Outdated
@julitafalcondusza julitafalcondusza requested a review from mnocon May 5, 2026 08:04
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented May 5, 2026

Quality Gate Failed Quality Gate failed

Failed conditions
10.2% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

code_samples/ change report

Before (on target branch)After (in current PR)

code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php


code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php

docs/tutorials/generic_field_type/7_add_a_validation.md@9:```php
docs/tutorials/generic_field_type/7_add_a_validation.md@10:[[= include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 6, 23) =]]// ...
docs/tutorials/generic_field_type/7_add_a_validation.md@11:[[= include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 56, 57) =]]
docs/tutorials/generic_field_type/7_add_a_validation.md@12:```

001⫶use Symfony\Component\Validator\Constraints as Assert;
002⫶
003⫶final class Value implements ValueInterface
004⫶{
005⫶ /**
006⫶ * @var float|null
007⫶ *
008⫶ * @Assert\NotBlank()
009⫶ */
010⫶ private $x;
011⫶
012⫶ /**
013⫶ * @var float|null
014⫶ *
015⫶ * @Assert\NotBlank()
016⫶ */
017⫶ private $y;
018⫶// ...
019⫶}

docs/tutorials/generic_field_type/8_data_migration.md@52:```php
docs/tutorials/generic_field_type/8_data_migration.md@53:[[= include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 24, 31) =]]
docs/tutorials/generic_field_type/8_data_migration.md@54:```

001⫶ public function __construct(array $coords = [])
002⫶ {
003⫶ if (!empty($coords)) {
004⫶ $this->x = $coords[0];
005⫶ $this->y = $coords[1];
006⫶ }
007⫶ }
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@56:```php
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@57:[[=
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@58:include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 0, 6)
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@59:~ include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 7, 11)
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@60:~ include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 12, 13)
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@61:~ include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 14)
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@62:=]]
docs/tutorials/generic_field_type/1_implement_the_point2d_value_class.md@63:```

001⫶[[=
002⫶include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 0, 6)
003⫶~ include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 7, 11)
004⫶~ include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 12, 13)
005⫶~ include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php', 14)
006⫶=]]

docs/tutorials/generic_field_type/7_add_a_validation.md@9:```php hl_lines="12 14"
docs/tutorials/generic_field_type/7_add_a_validation.md@10:[[= include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/Value.php') =]]
docs/tutorials/generic_field_type/7_add_a_validation.md@11:```

001⫶<?php
002⫶declare(strict_types=1);
003⫶
004⫶namespace App\FieldType\Point2D;
005⫶
006⫶use Ibexa\Contracts\Core\FieldType\Value as ValueInterface;
007⫶use Symfony\Component\Validator\Constraints as Assert;
008⫶
009⫶final class Value implements ValueInterface
010⫶{
011⫶ public function __construct(
012❇️ #[Assert\NotBlank]
013⫶ private ?float $x = null,
014❇️ #[Assert\NotBlank]
015⫶ private ?float $y = null
016⫶ ) {
017⫶ }
018⫶
019⫶ public function getX(): ?float
020⫶ {
021⫶ return $this->x;
022⫶ }
023⫶
024⫶ public function setX(?float $x): void
025⫶ {
026⫶ $this->x = $x;
027⫶ }
028⫶
029⫶ public function getY(): ?float
030⫶ {
031⫶ return $this->y;
032⫶ }
033⫶
034⫶ public function setY(?float $y): void
035⫶ {
036⫶ $this->y = $y;
037⫶ }
038⫶
039⫶ public function __toString(): string
040⫶ {
041⫶ return "({$this->x}, {$this->y})";
042⫶ }
043⫶}


code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/ValueFinal.php



code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/ValueFinal.php

docs/tutorials/generic_field_type/8_data_migration.md@38:```php
docs/tutorials/generic_field_type/8_data_migration.md@39:[[= include_file('code_samples/field_types/2dpoint_ft/src/FieldType/Point2D/ValueFinal.php', 10, 24) =]]
docs/tutorials/generic_field_type/8_data_migration.md@40:```

001⫶ #[Assert\NotBlank]
002⫶ private ?float $x = null;
003⫶
004⫶ #[Assert\NotBlank]
005⫶ private ?float $y = null;
006⫶
007⫶ /** @param list<float|null> $coords */
008⫶ public function __construct(array $coords = [])
009⫶ {
010⫶ if (!empty($coords)) {
011⫶ $this->x = $coords[0];
012⫶ $this->y = $coords[1];
013⫶ }
014⫶ }


code_samples/tutorials/page_tutorial_starting_point/config/packages/views.yaml

docs/tutorials/page_and_form_tutorial/1_get_a_starter_website.md@76:- [`views.yaml`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/config/packages/views.yaml)

001⫶- [`views.yaml`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/config/packages/views.yaml)


code_samples/tutorials/page_tutorial_starting_point/templates/full/dog_breed.html.twig

docs/tutorials/page_and_form_tutorial/1_get_a_starter_website.md@70:- [`dog_breed.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/full/dog_breed.html.twig)

001⫶- [`dog_breed.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/full/dog_breed.html.twig)


code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout.html.twig

docs/tutorials/page_and_form_tutorial/1_get_a_starter_website.md@65:Place the [`pagelayout.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout.html.twig) and [`pagelayout_menu.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout_menu.html.twig) files in the `templates` folder.

001⫶Place the [`pagelayout.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout.html.twig) and [`pagelayout_menu.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout_menu.html.twig) files in the `templates` folder.


code_samples/tutorials/page_tutorial_starting_point/config/packages/views.yaml

docs/tutorials/page_and_form_tutorial/1_get_a_starter_website.md@76:- [`views.yaml`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/config/packages/views.yaml)

001⫶- [`views.yaml`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/config/packages/views.yaml)


code_samples/tutorials/page_tutorial_starting_point/templates/full/dog_breed.html.twig

docs/tutorials/page_and_form_tutorial/1_get_a_starter_website.md@70:- [`dog_breed.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/full/dog_breed.html.twig)

001⫶- [`dog_breed.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/full/dog_breed.html.twig)


code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout.html.twig

docs/tutorials/page_and_form_tutorial/1_get_a_starter_website.md@65:Place the [`pagelayout.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout.html.twig) and [`pagelayout_menu.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout_menu.html.twig) files in the `templates` folder.

001⫶Place the [`pagelayout.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout.html.twig) and [`pagelayout_menu.html.twig`](https://github.com/ibexa/documentation-developer/blob/5.0/code_samples/tutorials/page_tutorial_starting_point/templates/pagelayout_menu.html.twig) files in the `templates` folder.

Download colorized diff

@julitafalcondusza julitafalcondusza merged commit 3bceac2 into 5.0 May 5, 2026
11 of 12 checks passed
@julitafalcondusza julitafalcondusza deleted the IBX-11663 branch May 5, 2026 08:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants