public function actionRemove()
{
$component = $this->_component;
$rr = new RequestResponse();
if ($rr->isRequestAjaxPost()) {
if (\Yii::$app->request->post('do') == 'all') {
if ($settings = \skeeks\cms\models\CmsComponentSettings::baseQuery($component)->all()) {
/**
* @var $setting CmsComponentSettings
*/
foreach ($settings as $setting) {
//TODO: добавить отладочную информацию.
if ($setting->delete()) {
}
}
$component->invalidateCache();
$rr->message = 'Настройки успешно удалены';
$rr->success = true;
}
} else {
if (\Yii::$app->request->post('do') == 'default') {
if ($settings = \skeeks\cms\models\CmsComponentSettings::fetchByComponentDefault($component)) {
$settings->delete();
$component->invalidateCache();
$rr->message = 'Настройки успешно удалены';
$rr->success = true;
}
} else {
if (\Yii::$app->request->post('do') == 'sites') {
if ($settings = \skeeks\cms\models\CmsComponentSettings::baseQuerySites($component)->all()) {
/**
* @var $setting CmsComponentSettings
*/
foreach ($settings as $setting) {
//TODO: добавить отладочную информацию.
if ($setting->delete()) {
}
}
$component->invalidateCache();
$rr->message = 'Настройки успешно удалены';
$rr->success = true;
}
} else {
if (\Yii::$app->request->post('do') == 'users') {
if ($settings = \skeeks\cms\models\CmsComponentSettings::baseQueryUsers($component)->all()) {
/**
* @var $setting CmsComponentSettings
*/
foreach ($settings as $setting) {
//TODO: добавить отладочную информацию.
if ($setting->delete()) {
}
}
$component->invalidateCache();
$rr->message = 'Настройки успешно удалены';
$rr->success = true;
}
} else {
if (\Yii::$app->request->post('do') == 'site') {
$code = \Yii::$app->request->post('code');
$site = CmsSite::find()->where(['code' => $code])->one();
if ($site) {
if ($settings = \skeeks\cms\models\CmsComponentSettings::fetchByComponentSite($component, $site)) {
$settings->delete();
$component->invalidateCache();
$rr->message = 'Настройки успешно удалены';
$rr->success = true;
}
}
} else {
if (\Yii::$app->request->post('do') == 'user') {
$id = \Yii::$app->request->post('id');
$user = User::find()->where(['id' => $id])->one();
if ($user) {
if ($settings = \skeeks\cms\models\CmsComponentSettings::fetchByComponentUser($component, $user)) {
$settings->delete();
$component->invalidateCache();
$rr->message = 'Настройки успешно удалены';
$rr->success = true;
}
}
} else {
$rr->message = 'Все настройки удалены';
$rr->success = true;
}
}
}
}
}
}
return (array) $rr;
}
return $this->render($this->action->id, ['component' => $component]);
}