<?php echo $this->render('_header', ['component' => $component]); ?> <div class="sx-box sx-mb-10 sx-p-10"> <p><?php echo \Yii::t('app', 'This component may have personal preferences. And it works differently depending on which of the sites is displayed.'); ?> </p> <p><?php echo \Yii::t('app', 'In that case, if the site not has personal settings will be used the default settings.'); ?> </p> <?php if ($settings = \skeeks\cms\models\CmsComponentSettings::baseQuerySites($component)->count()) { ?> <p><b><?php echo \Yii::t('app', 'Number of customized sites'); ?> :</b> <?php echo $settings; ?> </p> <button type="submit" class="btn btn-danger btn-xs" onclick="sx.ComponentSettings.Remove.removeSites(); return false;"> <i class="glyphicon glyphicon-remove"></i> <?php echo \Yii::t('app', 'reset settings for all sites"'); ?> </button> <small>.</small> <?php
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]); }