Payment/ConfigProvider.php
final protected static function configOptions(IOptions $o) {$s = $o->s(); /** @var Settings $s */ return [
		// 2017-09-19 «Where to ask for a payment option?»
		'needShowOptions' => Options::needShow($s)
		/**
		 * 2017-09-18
		 * @used-by Df_Payments/withOptions::options()
		 * https://github.com/mage2pro/core/blob/2.12.5/Payment/view/frontend/web/withOptions.js#L72-L80
		 * 2017-10-29
		 * Note 1.
		 * «JavaScript does not guarantee the properties order in objects,
		 * so \Df\Payment\ConfigProvider::configOptions() should
		 * specify the payment options orderings exactly in a separate property,
		 * or pass the options to the client side as an array instead of an object»:
		 * https://github.com/mage2pro/core/issues/41
		 * Note 2.
		 * It is important to use @uses array_values()
		 * for the result to be interpreted as an array? not object, on the client side.
		 */
		,'options' => !df_is_assoc($oo = $o->options()) ? $oo : /**
		 *
		 */
			array_values(df_map_k($oo, function($v, $l) {return ['label' => $l, 'value' => $v];}))
		// 2017-09-19 A text to be shown on the Magento checkout page instead of the payment options dialog.
		,'optionsDescription' => $s->v('optionsDescription')
		/**
		 * 2017-09-21
		 * «Payment options display mode» (`images` or `text`).
		 * *) iPay88: https://github.com/mage2pro/ipay88/blob/1.3.3/etc/adminhtml/system.xml#L151-L164
		 * *) Robokassa: https://github.com/mage2pro/robokassa/blob/1.2.4/etc/adminhtml/system.xml#L230-L243
		 * *) Yandex.Kassa: https://github.com/mage2pro/yandex-kassa/blob/0.1.5/etc/adminhtml/system.xml#L178-L192
		 */
		,'optionsDisplayMode' => $s->v('optionsDisplayMode', null, DisplayMode::IMAGES)
		// 2017-09-19 A text above the payment options on the Magento checkout page.
		,'optionsPrompt' => $s->v('optionsPrompt')
	];}
final protected static function configOptions(IOptions $o) {$s = $o->s(); /** @var Settings $s */ return [
		// 2017-09-19 «Where to ask for a payment option?»
		'needShowOptions' => Options::needShow($s)
		/**
		 * 2017-09-18
		 * @used-by Df_Payments/withOptions::options()
		 * https://github.com/mage2pro/core/blob/2.12.5/Payment/view/frontend/web/withOptions.js#L72-L80
		 * 2017-10-29
		 * Note 1.
		 * «JavaScript does not guarantee the properties order in objects,
		 * so \Df\Payment\ConfigProvider::configOptions() should
		 * specify the payment options orderings exactly in a separate property,
		 * or pass the options to the client side as an array instead of an object»:
		 * https://github.com/mage2pro/core/issues/41
		 * Note 2.
		 * It is important to use @uses array_values()
		 * for the result to be interpreted as an array? not object, on the client side.
		 */
		,'options' => !df_is_assoc($oo = $o->options()) ? $oo : /**
		 *
		 */
			array_values(df_map_k($oo, function($v, $l) {return ['label' => $l, 'value' => $v];}))
		// 2017-09-19 A text to be shown on the Magento checkout page instead of the payment options dialog.
		,'optionsDescription' => $s->v('optionsDescription')
		/**
		 * 2017-09-21
		 * «Payment options display mode» (`images` or `text`).
		 * *) iPay88: https://github.com/mage2pro/ipay88/blob/1.3.3/etc/adminhtml/system.xml#L151-L164
		 * *) Robokassa: https://github.com/mage2pro/robokassa/blob/1.2.4/etc/adminhtml/system.xml#L230-L243
		 * *) Yandex.Kassa: https://github.com/mage2pro/yandex-kassa/blob/0.1.5/etc/adminhtml/system.xml#L178-L192
		 */
		,'optionsDisplayMode' => $s->v('optionsDisplayMode', null, DisplayMode::IMAGES)
		// 2017-09-19 A text above the payment options on the Magento checkout page.
		,'optionsPrompt' => $s->v('optionsPrompt')
	];}
final protected static function configOptions ( IOptions $ o ) { $ s = $ o -> s ( ) ; /** @var Settings $s */ return [ // 2017-09-19 «Where to ask for a payment option?» 'needShowOptions' => Options :: needShow ( $ s ) /**
		 * 2017-09-18
		 * @used-by Df_Payments/withOptions::options()
		 * https://github.com/mage2pro/core/blob/2.12.5/Payment/view/frontend/web/withOptions.js#L72-L80
		 * 2017-10-29
		 * Note 1.
		 * «JavaScript does not guarantee the properties order in objects,
		 * so \Df\Payment\ConfigProvider::configOptions() should
		 * specify the payment options orderings exactly in a separate property,
		 * or pass the options to the client side as an array instead of an object»:
		 * https://github.com/mage2pro/core/issues/41
		 * Note 2.
		 * It is important to use @uses array_values()
		 * for the result to be interpreted as an array? not object, on the client side.
		 */ , 'options' => ! df_is_assoc ( $ oo = $ o -> options ( ) ) ? $ oo : /**
		 *
		 */ array_values ( df_map_k ( $ oo , function ( $ v , $ l ) { return [ 'label' => $ l , 'value' => $ v ] ; } ) ) // 2017-09-19 A text to be shown on the Magento checkout page instead of the payment options dialog. , 'optionsDescription' => $ s -> v ( 'optionsDescription' ) /**
		 * 2017-09-21
		 * «Payment options display mode» (`images` or `text`).
		 * *) iPay88: https://github.com/mage2pro/ipay88/blob/1.3.3/etc/adminhtml/system.xml#L151-L164
		 * *) Robokassa: https://github.com/mage2pro/robokassa/blob/1.2.4/etc/adminhtml/system.xml#L230-L243
		 * *) Yandex.Kassa: https://github.com/mage2pro/yandex-kassa/blob/0.1.5/etc/adminhtml/system.xml#L178-L192
		 */ , 'optionsDisplayMode' => $ s -> v ( 'optionsDisplayMode' , null , DisplayMode :: IMAGES ) // 2017-09-19 A text above the payment options on the Magento checkout page. , 'optionsPrompt' => $ s -> v ( 'optionsPrompt' ) ] ; }
2017-09-18
@used-by \Df\GingerPaymentsBase\ConfigProvider::config()
@used-by \Dfe\IPay88\ConfigProvider::config()
@used-by \Dfe\Robokassa\ConfigProvider::config()
@used-by \Dfe\YandexKassa\ConfigProvider::config()
@param IOptions $o
@return array(string => mixed)
2017 - 09 - 18