New! Checkout our new Forums homepage! Follow the latest activity in eZ Publish Forums on Share.ez.no, Projects.ez.no and StackOverflow.com


@ezecosystem
ezecosystem pushed to master in ezecosystem/PlatformUIBundle
Mar 20, 2018
03/20/2018 12:05 am   eZecosystem @ GitHub   Mirror   Link  
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezpublish-kernel
Mar 20, 2018
03/20/2018 12:00 am   eZecosystem @ GitHub   Mirror   Link  
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezplatform-com
  • @Plopix 7e6ec42
    Update install with Composer for 2.x (#130)
Mar 20, 2018
03/19/2018 11:59 pm   eZecosystem @ GitHub   Mirror   Link  
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/repository-forms
  • @mikadamczyk ae9c470
    EZP-28902: Creating a user with existing username results in Internal…
Mar 19, 2018
03/19/2018 12:47 pm   eZPublishLegacy @ GitHub   Mirror   Link   @8
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/ezstudio
Mar 19, 2018
03/19/2018 12:24 pm   eZPublishLegacy @ GitHub   Mirror   Link  
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/ezpublish-spi
Mar 19, 2018
03/19/2018 12:21 pm   eZPublishLegacy @ GitHub   Mirror   Link   @6
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/ezpublish-kernel
  • @mikadamczyk d987eea
    EZP-28902: Creating a user with existing username results in Internal…
Mar 19, 2018
03/19/2018 12:20 pm   eZPublishLegacy @ GitHub   Mirror   Link   @6
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/ezplatform
Mar 19, 2018
03/19/2018 12:17 pm   eZPublishLegacy @ GitHub   Mirror   Link  
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/ezfind
Mar 19, 2018
03/19/2018 12:13 pm   eZPublishLegacy @ GitHub   Mirror   Link  
@ezecosystem
ezecosystem pushed to master in ezecosystem/repository-forms
  • @mikadamczyk ae9c470
    EZP-28902: Creating a user with existing username results in Internal…
Mar 19, 2018
03/19/2018 12:10 pm   eZecosystem @ GitHub   Mirror   Link   @6
@ezecosystem
ezecosystem pushed to master in ezecosystem/PlatformUIBundle
Mar 19, 2018
03/19/2018 12:09 pm   eZecosystem @ GitHub   Mirror   Link  
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezstudio
Mar 19, 2018
03/19/2018 12:03 pm   eZecosystem @ GitHub   Mirror   Link   @4
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezpublish-spi
  • @mikadamczyk f6c2e24
    EZP-28902: Creating a user with existing username results in Internal…
Mar 19, 2018
03/19/2018 12:02 pm   eZecosystem @ GitHub   Mirror   Link   @6
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezpublish-kernel
  • @mikadamczyk d987eea
    EZP-28902: Creating a user with existing username results in Internal…
Mar 19, 2018
03/19/2018 12:02 pm   eZecosystem @ GitHub   Mirror   Link   @6
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezplatform
Mar 19, 2018
03/19/2018 12:00 pm   eZecosystem @ GitHub   Mirror   Link  

Contributed by
Frank de Jonge
in #26143.

We recently improved the performance of the Routing component to make it the fastest PHP router available. Now, just in time for including it in Symfony 4.1, we added another amazing feature to it: support for internationalized routes.

This feature allows to define different paths for each route depending on the user locale. This feature is essential for internationalized apps and that's why third-party bundles like JMSI18nRoutingBundle have millions on downloads. In Symfony 4.1 we decided to integrate this into the routing component itself so you can use it out-of-the-box in Symfony apps.

In practice, when defining a route you can now provide an array in the path option to define a different path per locale:

1
2
3
4
5
contact:
    controller: App\Controller\ContactController::send
    path:
        en: /send-us-an-email
        nl: /stuur-ons-een-email

This format is also supported for routes defined in XML and PHP annotations:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
use Symfony\Component\Routing\Annotation\Route;

class ContactController
{
    /**
     * @Route({
     *     "en": "/send-us-an-email",
     *     "nl": "/stuur-ons-een-email"
     * }, name="contact")
     */
    public function send()
    {
        // ...
    }
}

Internally Symfony creates one route per locale (called contact.en and contact.nl in this example) but you can still use the original route name to generate URLs. When generating a URL, the request locale is used by default, but you can pass the locale explicitly to generate any of the alternative URLs:

1
2
3
4
5
6
7
8
/** @var UrlGeneratorInterface $urlGenerator */
// uses the current request locale
$url = $urlGenerator->generate('contact');

// ignores the current request locale and generates '/stuur-ons-een-email'
$url = $urlGenerator->generate('contact', ['_locale' => 'nl']);
// this would also work, but it's not recommended:
// $url = $urlGenerator->generate('contact.nl');

The route prefix can also be translated (both in YAML/XML files and @Route annotations defined at controller class level) and you can mix translated and not translated paths too:

1
2
3
4
5
6
7
# config/routes/annotations.yaml
site:
    resource: '../src/Controller/'
    type: annotation
    prefix:
        en: '/site'
        es: '/sitio'
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
class DefaultController extends Controller
{
    /**
     * @Route({"en": "/contact", "es": "/contacto"}, name="contact")
     */
    public function contact()
    {
        // ...
    }

    /**
     * @Route("/page/{slug}", name="page")
     */
    public function page($slug)
    {
        // ...
    }
}

The four resulting routes generated by Symfony will be:

Route name Route path
contact.en /site/contact
contact.es /sitio/contacto
page.en /site/page/{slug}
page.es /sitio/page/{slug}

Be trained by Symfony experts - 2018-04-3 Paris - 2018-04-3 Paris - 2018-04-3 Paris
03/19/2018 04:59 am   Symfony Blog   Mirror   Link   @8

This week, Symfony development activity was focused again on finishing the pending pull requests in time for the upcoming Symfony 4.1 "feature freeze" period which starts in just 2 weeks. We made testing easier by allowing to fetch private services from tests clients, improved the design of the new console "box" style and added some HTML5 features to the Symfony Profiler.

Symfony development highlights

2.7 changelog:

  • ffd088a: [DomCrawler] fixed a bug in extract() when the attribute list is empty
  • 1390529: [BrowserKit] improved CookieJar::get

3.4 changelog:

  • f77db05: [Config] ReflectionClassResource check abstract class
  • 8f4a0b6: [HttpFoundation] fixed the updating of timestamp in MemcachedSessionHandler
  • 822483b: [PhpUnitBridge] added ability to use different composer.json file

Master changelog:

  • 3e99988: [DomCrawler] minor performance improvement
  • a33db13: [WebProfilerBundle] added some HTML5 features to the Symfony Profiler
  • 912c7e1: [Console] improved rendering of optional arguments in command synopsis
  • bf120d0: [FrameworkBundle] show the unregistered command warning at the end of the list command
  • 5511ddc: [BrowserKit] avoid nullable values in some Client's methods
  • 5cf0a2e: [FrameworkBundle] allow fetching private services from test clients
  • 0cfc00e: [Console] improved the "box" style table

Newest issues and pull requests

They talked about us


Be trained by Symfony experts - 2018-03-19 Clichy - 2018-03-19 Clichy - 2018-03-21 Clichy
03/18/2018 04:07 am   Symfony Blog   Mirror   Link   @6
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/repository-forms
Mar 16, 2018
03/16/2018 12:45 pm   eZPublishLegacy @ GitHub   Mirror   Link   @16
@ezpublishlegacy
ezpublishlegacy pushed to master in ezpublishlegacy/ezpublish-api
Mar 16, 2018
03/16/2018 12:17 pm   eZPublishLegacy @ GitHub   Mirror   Link   @8
@ezecosystem
ezecosystem pushed to master in ezecosystem/Sylius
Mar 16, 2018
03/16/2018 12:10 pm   eZecosystem @ GitHub   Mirror   Link   @6
@ezecosystem
ezecosystem pushed to master in ezecosystem/repository-forms
Mar 16, 2018
03/16/2018 12:09 pm   eZecosystem @ GitHub   Mirror   Link   @14
@ezecosystem
ezecosystem pushed to master in ezecosystem/PlatformUIBundle
Mar 16, 2018
03/16/2018 12:08 pm   eZecosystem @ GitHub   Mirror   Link   @6
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezpublish-kernel
Mar 16, 2018
03/16/2018 12:01 pm   eZecosystem @ GitHub   Mirror   Link   @6
@ezecosystem
ezecosystem pushed to master in ezecosystem/ezpublish-api
Mar 16, 2018
03/16/2018 12:00 pm   eZecosystem @ GitHub   Mirror   Link   @6

News

Winner of the eZ Connector February Competition

Last week the winner of the first eZ Connector Competition was announced: Sébastien Morel from Novactive with the Slack for eZ connector. As the winner of the competition, Novactive will receive $2,500 and a contract for $5,000 to build an additional connector with eZ in the Build with eZ phase.

More information about the connector can be found in the announcement. The next competition will kick off on April 1. Registration for next month’s competition is already open.

eZ Platform 2.1.0-beta1 Available

eZ Platform 2.1.0-beta1 is available on GitHub. If you are curious about the improvements and bug fixes included in 2.1.0, be sure to check out the change log.

As always, we invite developers to take this beta release for a spin, test it and report any issues on our issue tracker. If you are not sure how to submit an issue, please check our documentation.

Nominate Yourself for the eZ Community Board

The current Community Board has been in place since March 2017. With a term of one year, it is now time to renew the Board. Being part of the eZ Community Board is a special opportunity to help guide the development of the eZ Community. Are you interested in joining? Check out the full details and leave your comment.

Submit Your Nomination for eZ Awards 2018

eZ Conference is less than three months away, which means it's time to cast your nominations for the eZ Awards. We have 7 categories this year, and 5 are open to your nominations—you can choose to nominate for one category or all five. Find out this year’s categories and submit your nominations.

If you’re interested in speaking at eZ Conference, fill out this form.

In Other News:

Resources

GDPR Is Around the Corner - Don't Panic

Recorded webinar presented on March 6, 2018 by eZ guest speaker Janne Kalliola, CEO at Exove and GDPR expert. Janne discussed practical approaches to dealing with the upcoming GDPR regulation, including both the legal and technical aspects. He also addressed how GDPR affects content management systems.

Looking for a bundle compatible with eZ Platform? Check out: https://ezplatform.com/Bundles.

Social Media

Follow us on Twitter, Facebook, LinkedIn, Google+, or YouTube, and join our Community for any help with eZ Platform or community-related questions.

Find eZ at These Events

For more events, make sure to check out this list.

Each week we publish a roundup of highlights from the eZ ecosystem. If you have any news or events to share, please contact me.

(Lead image credit: Bruno Fontes, CC)

03/16/2018 11:42 am   ez.no/About-eZ/Blog   Mirror   Link   @10