The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist skeeks/cms-dadata-suggest "*"
or add
"skeeks/cms-dadata-suggest": "*"
'components' =>
[
'dadataSuggest' => [
'class' => 'skeeks\cms\dadataSuggest\CmsDadataSuggestComponent',
],
'dadataSuggestApi' => [
'class' => 'skeeks\cms\dadataSuggest\CmsDadataSuggestApi',
],
'i18n' => [
'translations' =>
[
'skeeks/dadata-suggest' => [
'class' => 'yii\i18n\PhpMessageSource',
'basePath' => '@skeeks/cms/dadataSuggest/messages',
'fileMap' => [
'skeeks/dadata-suggest' => 'main.php',
],
]
]
]
],
'modules' =>
[
'dadataSuggest' => [
'class' => 'skeeks\cms\dadataSuggest\CmsDadataSuggestModule',
]
]
\Yii::$app->dadataSuggest->address
if (\Yii::$app->dadataSuggest->isSavedAddress)
{
echo \Yii::$app->dadataSuggest->address->unrestrictedValue;
} else
{
echo "Not saved address to session";
}
<?= \skeeks\cms\dadataSuggest\widgets\address\DadataGetAddressWidget::widget([
'options' =>
[
'href' => '#',
'onclick' => 'new sx.classes.ModalRegionPageReload(); return false;',
'class' => 'sx-dadata-suggestion-city',
]
]); ?>
<?= \skeeks\cms\dadataSuggest\widgets\suggest\DadataSuggestInputWidget::widget([
'name' => 'address',
'id' => 'sx-global-region-input',
'addon' => 'clear',
'value' => \Yii::$app->dadataSuggest->isSavedAddress ? \Yii::$app->dadataSuggest->address->unrestrictedValue : "",
'clientOptions' => [
'onInit' => new \yii\web\JsExpression(<<<JS
function(e, data)
{
data.DadataSuggest.bind('onSelect', function()
{
$("#sx-save-region").show();
});
}
JS
)
],
'options' =>
[
'class' => 'form-control',
'placeholder' => 'Найти город',
]
]); ?>
<?= $form->field($model, 'post_recipient')->widget(
\skeeks\cms\dadataSuggest\widgets\suggest\DadataSuggestInputWidget::className(),
[
'options' =>
[
'placeholder' => $model->getAttributeLabel('post_recipient'),
],
'type' => 'NAME'
]
);
?>
### Suggest widgets with additional settings
```php
$form->field($model, 'post_address')->widget(
\skeeks\cms\dadataSuggest\widgets\suggest\DadataSuggestInputWidget::className(),
[
'options' =>
[
'placeholder' => "Адрес (улица, дом, кв)",
],
'clientOptions' =>
[
'suggestOptions' =>
[
'triggerSelectOnSpace' => true,
'triggerSelectOnBlur' => true,
'constraints' => [
[
'locations' => \Yii::$app->dadataSuggest->address->getRegionArray(),
'deletable' => false,
'label' => ''
]
],
'restrict_value' => true,
],
'onInit' => new \yii\web\JsExpression(<<<JS
function(e, data)
{
data.DadataSuggest.bind('onSelect', function()
{
data.DadataSuggest.bind('afterSave', function()
{
$.pjax.reload({container:'#sx-cart-full'});
});
data.DadataSuggest.save();
return false;
});
}
JS
)
]
]);
?>
##Links
SkeekS CMS (Yii2) — fast, simple, effective!
skeeks.com | cms.skeeks.com