[
'label' => 'Дата начала подписки',
'value' => function ($model, $key, $value) {
return \kartik\date\DatePicker::widget([
'name' => 'date_subscription',
'model' => $model,
'value' => date('d-m-Y',$model->date_subscription),
'type' => DatePicker::TYPE_INPUT,
'pluginOptions' => [
'format' => 'yyyy-mm-dd',
'autoclose' => true,
],
]);
},
'contentOptions' => [
'onchange' => '
var Id = $(this).parent().attr("data-key");
var uDate = $(this).children("input").val();
console.log(Id + " - " + uDate);
$.ajax({
url: "'. Url::to('yii/users/ajax-request') .'",
type: "POST",
data:{id: Id, date: uDate},
success: function(data){
console.log(data)
}
})
'
],
'format' => 'raw',
],
public function actionAjaxRequest()
{
if(Yii::$app->request->isAjax){
$newDate = Yii::$app->request->post('date');
$uId = Yii::$app->request->post('id');
if(($model = Users::findOne(['id' => $uId])) != null){
$model->date_subscription = strtotime($newDate);
if(!$model->update(false,['date_subscription'])){
return 'Данные не обновились.';
}
else{
return 'Данные успешно обновились.';
}
}
else{
return 'Пользователь не найден.';
}
}
return false;
}
[
'label' => 'Дата начала подписки',
'value' => function ($model, $key, $value) {
return \kartik\date\DatePicker::widget([
'name' => 'date_subscription',
'model' => $model,
'value' => date('Y-m-d',$model->date_subscription),
'type' => DatePicker::TYPE_INPUT,
'pluginOptions' => [
'format' => 'yyyy-mm-dd',
'autoclose' => true,
],
]);
},
'contentOptions' => [
'onchange' => '
var Id = $(this).parent().attr("data-key");
var value = $(this).children("input").val();
$.ajax({
url: "'. Url::to('/admin/clients/ajax-request') .'",
type: "POST",
data:{id: Id, date: value},
success: function(data){
console.log(data)
}
})
'
],
'format' => 'raw',
],
public function actionAjaxRequest()
{
if(Yii::$app->request->isAjax){
$value = Yii::$app->request->post('date');
$uId = Yii::$app->request->post('id');
if(($model = UserSettings::findOne(['id' => $uId]))){
$model->date_subscription = strtotime($value);
if(!$model->update(false,['date_subscription'])){
return 'Данные не обновились.';
}
else{
return 'Данные успешно обновились.';
}
}
else{
return 'Пользователь не найден.';
}
}
return false;
}