esc_url_raw( rest_url( PostVisibilityController::NAMESPACE . '/posts/visibility' ) ),
'nonce' => wp_create_nonce( 'wp_rest' ),
'i18n' => array(
'saving' => __( 'Saving…', 'lingocanvas' ),
'failed' => __( 'Could not save', 'lingocanvas' ),
'network' => __( 'Cannot reach the site. Please try again.', 'lingocanvas' ),
),
)
);
}
/**
* Разметка одного переключателя (чекбокс в виде выключателя). Чистая функция.
*
* @param int $postId Запись.
* @param string $locale Код языка.
* @param bool $visible Включена ли запись на языке.
* @param string $text Подпись справа от выключателя — обычная строка, экранируется здесь.
* @param string $disabled Причина, по которой переключатель недоступен; пустая строка — доступен.
*/
public static function toggleHtml( int $postId, string $locale, bool $visible, string $text, string $disabled = '' ): string {
$title = '' !== $disabled ? $disabled : $text;
return sprintf(
'',
esc_attr( $title ),
$postId,
esc_attr( $locale ),
$visible ? ' checked="checked"' : '',
'' !== $disabled ? ' disabled="disabled"' : '',
esc_html( $text )
);
}
}