%PDF- %PDF-
Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/linklist/widgets/ |
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/linklist/widgets/Sidebar.php |
<?php namespace humhub\modules\linklist\widgets; use humhub\modules\linklist\Module; use Yii; use humhub\modules\linklist\models\Link; use humhub\modules\linklist\models\Category; /** * LinklistSidebarWidget displaying a list of links. * * It is attached to the sidebar of the space/user, if the module is enabled in the settings. * * @package humhub.modules.linklist.widgets * @author Sebastian Stumpf */ class Sidebar extends \humhub\components\Widget { public $contentContainer; public function run() { /** @var Module $module */ $module = Yii::$app->getModule('linklist'); $container = $this->contentContainer; if (!(bool)$module->settings->contentContainer($container)->get('enableWidget')) { return; } $categoryBuffer = Category::find()->contentContainer($this->contentContainer)->orderBy(['sort_order' => SORT_ASC])->all(); $categories = array(); $links = array(); $render = false; foreach ($categoryBuffer as $category) { $linkBuffer = Link::find()->where(array('category_id' => $category->id))->orderBy(['sort_order' => SORT_ASC])->all(); // categories are only displayed in the widget if they contain at least one link if (!empty($linkBuffer)) { $categories[] = $category; $links[$category->id] = $linkBuffer; $render = true; } } // if none of the categories contains a link, the linklist widget is not rendered. if ($render) { return $this->render('linklistPanel', array('container' => $container, 'categories' => $categories, 'links' => $links)); } } } ?>