Polish name. */ const ALIASES = array( 'first_name' => 'imie', 'last_name' => 'nazwisko', 'order_number' => 'numer_zamowienia', 'order_total' => 'kwota', 'store_name' => 'nazwa_sklepu', 'tracking_number' => 'numer_przesylki', 'tracking_carrier' => 'przewoznik', 'tracking_link' => 'link_przesylki', 'order_link' => 'link_zamowienia', 'service' => 'usluga', 'employee' => 'pracownik', 'date' => 'data', 'time' => 'godzina', 'booking_number' => 'numer_rezerwacji', 'business_name' => 'nazwa_firmy', 'duration' => 'czas_trwania', 'location' => 'miejsce', 'meeting_link' => 'link_spotkania', 'cancel_link' => 'link_odwolania', 'reschedule_link' => 'link_zmiany_terminu', 'end_date' => 'data_do', 'resource' => 'zasob', 'profile_link' => 'link_profilu', 'login_link' => 'link_logowania', ); /** * Copy each value to its other name, unless that name already has its own value * (a Contact Form 7 field may be called "date"). * * @param array $vars name => value. * @return array */ public static function with_aliases( array $vars ): array { $all = $vars; foreach ( self::ALIASES as $english => $polish ) { if ( array_key_exists( $polish, $vars ) && ! array_key_exists( $english, $vars ) ) { $all[ $english ] = $vars[ $polish ]; } elseif ( array_key_exists( $english, $vars ) && ! array_key_exists( $polish, $vars ) ) { $all[ $polish ] = $vars[ $english ]; } } return $all; } /** * The variables of a built-in event, named in the admin's language. * * @param array $variables Polish name => label. * @return array */ public static function for_editor( array $variables ): array { if ( self::polish() ) { return $variables; } $english = array_flip( self::ALIASES ); $named = array(); foreach ( $variables as $name => $label ) { $named[ $english[ $name ] ?? $name ] = $label; } return $named; } /** * Whether the admin works in Polish. * * @return bool */ private static function polish(): bool { return 0 === strpos( determine_locale(), 'pl' ); } }