Skip to content

3.4.1

Compare
Choose a tag to compare
@bastianallgeier bastianallgeier released this 04 Aug 13:50

New Features

New Gap field

The new gap field is a simple layout field to help you organise your fields more visually and create gaps in the field grid.

gap

fields:
  category:
    type: text
    width: 1/2
  gap:
    type: gap
    width: 1/4
  featured:
    type: toggle
    width: 1/4 
    text:  
      - "no"
      - "yes"

With conditional fields

fields:
  hasHeadline:
    type: radio
    options:
      - yes
      - no
  headline:
    type: text
    width: 1/2
    when:
      hasHeadline: yes
  gap:
    type: gap
    width: 1/2
    when:
      hasHeadline: no
  text:
    type: textarea

Async api library

All API methods in the Panel now support async await as an alternative to promise callbacks. This helps to break out of callback hell.

const page = await this.$api.pages.get("photography");

console.log(page.title);

New beforeSend option for $kirby->email()

You can now access the phpMailer instance for more fine-grained control in the new beforeSend option:

$kirby->email([
    'from' => '[email protected]',
    'to' => '[email protected]',
    'subject' => 'Thank you for your contact request',
    'body' => 'We will never reply',
    'transport' => [
        'type' => 'smtp',
        'host' => 'mail.getkirby.com',
        'port' => 465,
        'security' => true,
        'auth' => true,
        'username' => '[email protected]',
        'password' => 'randomString',
    ],
    // new feature
    'beforeSend' =>function ($mailer) {
        $mailer->SMTPOptions = [
            'ssl' => [
                'verify_peer' => false,
                'verify_peer_name' => false,
                'allow_self_signed' => true
            ]
        ];

        return $mailer;
    }
]);

You can also use this new option in email presets in your config file.

New Dark Mode SVG favicon

For Dark Mode users, the favicon of the panel will now automatically switch color and adjust to the dark browser bar.

dark-mode-favicon

More new features …

  • New Form::content() method
  • New Vue.$helper.string.camelToKebab(string) helper
  • New Vue.$helper.isComponent(componentName) helper
  • Async store actions

Enhancements

  • Added unit tests for LanguageRoutes #2609
  • Added missing hooks unit tests
  • We brought Kirby\Http\Request\Query in line with Kirby\Http\Query #2692

Fixes

We introduced an unintentional breaking change in 3.4.0 that broke plugin options in some third-party plugins. 3.4.1 reverts this breaking change. All plugins that already shipped a fix for this breaking change unfortunately have to roll back that fix as well. We are sorry for the hassle! (You can read more about the issue here: #2697)

More fixes …

  • Fixed words option for Collection::search() #2698
  • Fixed error page in multilang setup #2609
  • Fixed issues with Umlauts in user email addresses #2600
  • Pass $originalPage in page.duplicate:after hook to fix breaking change
  • Structure fields no longer save unsaveable fields #2702
  • Fixed warning in Account view after logout #2713
  • Fixed warning in Settings view after logout
  • Set fixed types in fields to avoid issues in extended fields #2643
  • translate: false in a child of a structure field no longer saves null on secondary language #1602
  • Fixed certificate issue in Remote::post() requests #2745
  • Fixed unexpected behaviour in Html::tag() method #2743