public function init() { if ($this->_module == null) { $this->_module = Yii::$app->getModule('cackle_reviews'); } if (!$this->_module) { throw new InvalidConfigException("Не определен модуль в конфигурации проекта"); } /*Устанавливаем по умолчанию канал равный адресу страницы*/ if (!$this->params['channel']) { $this->params['channel'] = Yii::$app->request->url; } /*Синхронизация комментариев*/ if ($this->sync) { $sync = new helpers\CackleReviewSync(); $sync->sync(); } $this->_uid = uniqid(time()); $this->params['widget'] = 'Review'; $this->params['id'] = $this->_module->site_id; $this->params['chanWithoutParams'] = true; $this->params['container'] = 'mc-review-' . $this->_uid; $js = 'cackle_widget.push(' . Json::encode($this->params) . ');'; $cackle_pos_end = 'document.getElementById("mc-review-' . $this->_uid . '").innerHTML = "";'; $cackle_pos_end .= 'cackle_widget = window.cackle_widget || [];'; $cackle_pos_end .= "\r\n (function() {\r\n var mc = document.createElement('script');\r\n mc.type = 'text/javascript';\r\n mc.async = true;\r\n mc.src = ('https:' == document.location.protocol ? 'https' : 'http') + '://cackle.me/widget.js';\r\n var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(mc, s.nextSibling);\r\n })();"; $this->getView()->registerJs($js, View::POS_READY, 'cackle_init_' . $this->_uid); $this->getView()->registerJs($cackle_pos_end, View::POS_END, 'cackle_load'); parent::init(); }
public function actionIndex() { $sync = new CackleReviewSync(); $sync->sync(); }