/** * [[@doctodo method_description:generateStart]]. * * @return [[@doctodo return_type:generateStart]] [[@doctodo return_description:generateStart]] */ public function generateStart() { $parts = []; $parts[] = Html::tag('div', '', ['id' => 'section-' . $this->systemId, 'class' => 'scroll-mark']); $parts[] = parent::generateStart(); return implode('', $parts); }
/** * Get cell. * * @return [[@doctodo return_type:getCell]] [[@doctodo return_description:getCell]] */ public function getCell() { $widgetCell = $this->singleWidget; if ($widgetCell) { $widgetCell->prepend(Html::tag('div', '', ['id' => 'section-' . $this->systemId, 'class' => 'scroll-mark'])); return $widgetCell; } return false; }
/** * Renders a page button. * You may override this method to customize the generation of page buttons. * * @param string $label the text label for the button * @param integer $page the page number * @param string $class the CSS class for the page button. * @param boolean $disabled whether this page button is disabled * @param boolean $active whether this page button is active * * @return string the rendering result */ protected function renderPageButton($label, $page, $class, $disabled, $active) { if ($active) { $class .= ' ' . $this->activePageCssClass; } if ($disabled) { $class .= ' ' . $this->disabledPageCssClass; } $state = $this->getState(); $state['page'] = $page + 1; $jsonState = json_encode($state); $class .= ' stateful'; $class = trim($class); $options = ['data-state' => $jsonState, 'class' => $class === '' ? null : $class]; return Html::tag('li', Html::a($label, $this->pagination->createUrl($page), ['data-page' => $page]), $options); }
/** * @inheritdoc */ public function generateContent() { if (empty(Yii::$app->request->object)) { return false; } if (!($detailFields = Yii::$app->request->object->getDetailFields()) || empty($detailFields)) { return false; } $parts = []; Html::addCssClass($this->contentHtmlOptions, 'dl-horizontal'); $parts[] = Html::beginTag('dl', $this->contentHtmlOptions); foreach ($detailFields as $key => $field) { $parts[] = Html::tag('dt', $field->label, $this->termHtmlOptions); $parts[] = Html::tag('dd', $field->formattedValue, $this->valueHtmlOptions); } $parts[] = Html::endTag('dl'); return implode($parts); }
/** * [[@doctodo method_description:generatePanelTitle]]. * * @return [[@doctodo return_type:generatePanelTitle]] [[@doctodo return_description:generatePanelTitle]] */ public function generatePanelTitle() { $parts = []; if ($this->owner->title) { $menu = $icon = null; $titleMenu = $this->owner->generateTitleMenu(); if ($titleMenu) { $menu = $titleMenu; } if (!empty($this->owner->icon)) { $icon = Html::tag('i', '', ['class' => 'panel-icon ' . $this->owner->icon]) . Html::tag('span', '', ['class' => 'break']); } $parts[] = Html::tag('div', Html::tag('h2', $icon . $this->owner->parseText($this->owner->title)) . $menu, ['class' => 'panel-heading']); } if (empty($parts)) { return false; } return implode("", $parts); }
public function generateFooter() { $footer = ''; if ($this->renderPager) { $pager = $this->renderPager(); if ($pager) { $footer = Html::tag('div', $pager, ['class' => 'panel-footer clearfix']); } } return parent::generateFooter() . $footer; }
echo Html::endTag('ul'); echo Html::beginTag('div', ['class' => 'tab-content well']); // simple Html::addCssClass($simpleOptions, 'tab-pane'); $simpleOptions['id'] = 'simple-filter'; echo Html::beginTag('div', $simpleOptions); echo $searchForm->field($searchModel, 'query', ['inputOptions' => ['id' => 'simple-filter-input', 'placeholder' => 'Search', 'class' => 'form-control']]); echo Html::endTag('div'); // advanced Html::addCssClass($advancedOptions, 'tab-pane'); $advancedOptions['id'] = 'advanced-filter'; echo Html::beginTag('div', $advancedOptions); $queryBuilderOptions = []; $queryBuilderOptions['filters'] = $type->dummyModel->filterFields; $builderId = 'advanced-filter-builder'; echo Html::tag('div', '', ['id' => $builderId]); $js[] = "\$('#{$builderId}').queryBuilder(" . json_encode($queryBuilderOptions) . ");"; echo Html::endTag('div'); echo Html::submitButton('Search', ['class' => 'btn btn-default']); echo Html::endTag('div'); ActiveForm::end(); echo Html::endTag('div'); // filter body echo Html::endTag('div'); // filter section echo Html::beginTag('div', ['class' => 'panel panel-default']); echo Html::tag('div', Html::tag('div', 'Results', ['class' => 'panel-title']), ['class' => 'panel-heading']); echo Html::beginTag('div', ['class' => 'panel-body', 'id' => 'filter-results']); echo Html::endTag('div'); echo Html::endTag('div'); $this->registerJs(implode("\n", $js));
<?php use canis\helpers\Html; use yii\helpers\Url; $instructions = []; $instructions['ajax'] = ['url' => Url::to(['/app/activity'])]; $instructions['scope'] = 'object'; $instructions['limit'] = 7; $instructions['object'] = $object->primaryKey; echo Html::beginTag('div', ['class' => 'ic-object-activity-viewport']); echo Html::tag('div', '', ['data-activity-feed' => json_encode($instructions)]); echo Html::tag('div', str_repeat(Html::tag('div', '', ['class' => 'widget-lazy-placeholder']), 5), ['class' => 'activity-feed-thinking']); echo Html::endTag('div');
/** * @inheritdoc */ public function generateContent() { if (!isset(Yii::$app->request->object)) { return false; } $object = Yii::$app->request->object; $content = []; $content[] = Html::beginTag('div', ['class' => 'well ic-masthead']); if (Yii::$app->request->previousObject) { $content[] = Html::beginTag('div', ['class' => 'ic-object-previous']); $content[] = Html::tag('span', '', ['class' => 'fa fa-reply']) . ' ' . Html::a('Go back to <em>' . Yii::$app->request->previousObject->descriptor . '</em>', Yii::$app->request->previousObject->getUrl('view', [], false)); $content[] = Html::endTag('div'); } if ($object->getBehavior('Photo')) { $photoHtmlOptions = []; $img = $object->getPhotoUrl(200); if ($img) { Html::addCssClass($photoHtmlOptions, 'ic-object-photo ic-object-photo-image'); $photoHtmlOptions['style'] = 'background-image: url("' . $img . '");'; } else { Html::addCssClass($photoHtmlOptions, 'ic-object-photo ic-object-photo-icon ' . $object->objectType->icon); } $photoContent = ''; $content[] = Html::tag('div', $photoContent, $photoHtmlOptions); } $content[] = Html::beginTag('div', ['class' => 'ic-object-header']); $content[] = $object->descriptor; $objectAccess = $object->objectAccess; $objectVisibility = $objectAccess->visibility; $content[] = Html::endTag('div'); if ($object->archived) { $content[] = Html::tag('div', Html::tag('span', 'Archived', ['class' => 'label label-warning']), ['class' => 'center-block center-text']); } $menu = []; $familiarty = $object->getFamiliarity(); $startWatchingItem = ['label' => Html::tag('span', '', ['class' => 'fa fa-eye']) . ' Watch', 'url' => $object->getUrl('watch'), 'options' => ['title' => 'Watch and get notified with changes', 'data-handler' => 'background', 'class' => 'watch-link', 'data-watch-task' => 'start']]; $stopWatchingItem = ['label' => Html::tag('span', '', ['class' => 'fa fa-check']) . ' Watching', 'url' => $object->getUrl('watch', ['stop' => 1]), 'options' => ['title' => 'Stop receiving change notifications', 'data-handler' => 'background', 'data-watch-task' => 'stop', 'class' => 'watch-link']]; $accessManageUrl = $object->getUrl('access'); $startWatchingItem['companion'] = $stopWatchingItem; $stopWatchingItem['companion'] = $startWatchingItem; if (empty($familiarty->watching)) { $menu[] = $startWatchingItem; } else { $menu[] = $stopWatchingItem; } if ($object->can('update')) { $menu[] = ['label' => Html::tag('span', '', ['class' => 'fa fa-wrench']) . ' Update', 'url' => $object->getUrl('update'), 'options' => ['title' => 'Update', 'data-handler' => 'background']]; } if ($object->can('delete') || $object->can('archive')) { $label = 'Delete'; $icon = 'fa-trash-o'; if ($object->can('archive')) { $icon = 'fa-archive'; if ($object->archived) { $label = 'Unarchive'; } else { $label = 'Archive'; } } $menu[] = ['label' => Html::tag('span', '', ['class' => 'fa ' . $icon]) . ' ' . $label, 'url' => $object->getUrl('delete'), 'options' => ['title' => $label, 'data-handler' => 'background']]; } if ($objectVisibility === 'public') { $accessIcon = 'fa fa-globe'; $accessTitle = $object->objectType->title->upperSingular . ' is public'; $accessLabel = 'Public'; } elseif ($objectVisibility === 'shared') { $accessIcon = 'fa fa-rss'; $accessTitle = $object->objectType->title->upperSingular . ' is shared'; $accessLabel = 'Shared'; } elseif ($objectVisibility === 'internal') { $accessIcon = 'fa fa-building-o'; $accessTitle = $object->objectType->title->upperSingular . ' is shared internally'; $accessLabel = 'Internal'; } elseif ($objectVisibility === 'admins') { $accessIcon = 'fa fa-lock'; $accessTitle = $object->objectType->title->upperSingular . ' is shared only with administrators'; $accessLabel = 'Administrators'; } else { $accessIcon = 'fa fa-user'; $accessTitle = $object->objectType->title->upperSingular . ' is private'; $accessLabel = 'Private'; } if ($object->can('manageAccess')) { } $menu[] = ['label' => Html::tag('span', '', ['class' => $accessIcon]) . ' ' . $accessLabel, 'url' => $accessManageUrl, 'options' => ['title' => $accessTitle, 'data-handler' => 'background']]; $menu[] = ['label' => Html::tag('span', '', ['class' => 'fa fa-history']) . ' Activity', 'url' => $object->getUrl('activity'), 'options' => ['title' => 'View Activity', 'data-handler' => 'background']]; if (!empty($menu)) { $content[] = Html::beginTag('div', ['class' => 'ic-object-menu columns-' . count($menu)]); $content[] = Html::beginTag('ul', ['class' => 'clearfix']); $menuCount = 0; foreach ($menu as $item) { $menuCount++; if (!isset($item['options'])) { $item['options'] = []; } $companionContent = ''; if (isset($item['companion'])) { $companion = $item['companion']; if (!isset($companion['options'])) { $companion['options'] = []; } Html::addCssClass($companion['options'], 'hidden'); $companionContent = Html::a($companion['label'], $companion['url'], $companion['options']); } $content[] = Html::tag('li', $companionContent . Html::a($item['label'], $item['url'], $item['options']), ['class' => 'item-' . $menuCount]); } $content[] = Html::endTag('ul'); $content[] = Html::endTag('div'); } $content[] = Html::endTag('div'); return implode($content); }
<?php use canis\helpers\Html; $this->registerMetaTag(['http-equiv' => 'refresh', 'content' => '5']); $interfaceModel = $dataInterfaceLog->dataInterface; $this->title = "View Data Interface Log"; $this->params['breadcrumbs'][] = ['label' => 'Administration', 'url' => ['/admin/dashboard/index']]; $this->params['breadcrumbs'][] = ['label' => 'Interfaces', 'url' => ['admin/interface/index']]; $this->params['breadcrumbs'][] = ['label' => $interfaceModel->name, 'url' => ['admin/interface/view-logs', 'id' => $interfaceModel->primaryKey]]; $this->params['breadcrumbs'][] = $this->title; echo Html::tag('div', 'Please wait while your data interface import task is in the queue.', ['class' => 'alert alert-warning']);
<?php use canis\helpers\Html; use yii\helpers\Url; echo Html::beginTag('div', ['class' => 'panel panel-default']); echo Html::beginTag('div', ['class' => 'panel panel-heading']); echo Html::tag('h3', $object->shortDescriptor, ['class' => 'panel-title']); echo Html::endTag('div'); echo Html::beginTag('div', ['class' => 'panel-body']); echo Html::tag('div', 'Please choose the object you wish to view ' . Html::tag('em', $object->shortDescriptor) . ' through.', ['class' => 'alert alert-info']); echo Html::beginTag('div', ['class' => 'list-group']); foreach ($options as $option) { echo Html::a($option['descriptor'], $option['url'], ['class' => 'list-group-item']); } echo Html::endTag('div'); echo Html::endTag('div'); echo Html::endTag('div');
if (!isset($htmlOptions)) { $htmlOptions = []; } $roleSet = isset($objectRoles[$requestorObject->primaryKey]) ? $objectRoles[$requestorObject->primaryKey] : []; $role = isset($roleSet['role']) ? $roleSet['role'] : null; $roleObject = isset($role) ? $role->object : null; Html::addCssClass($htmlOptions, 'list-group-item'); $requestorOptions = []; $requestorOptions['id'] = $requestorObject->primaryKey; $requestorOptions['label'] = $requestorObject->descriptor; $requestorOptions['maxRoleLevel'] = isset($maxRoleLevel) ? $maxRoleLevel : false; $requestorOptions['type'] = $requestorObject->objectType->systemId; $requestorOptions['editable'] = true; if (isset($role) && isset($roleSet['inherited']) && $roleSet['inherited'] && !$role->inheritedEditable) { $requestorOptions['editable'] = false; } $htmlOptions['data-requestor'] = json_encode($requestorOptions); if (!$requestorOptions['editable']) { Html::addCssClass($htmlOptions, 'uneditable'); } echo Html::beginTag('li', $htmlOptions); echo $this->renderFile('@cascade/views/object/access_role.php', ['roles' => $roles, 'role' => $roleObject, 'objectAccess' => $objectAccess, 'disableFields' => $disableFields, 'editable' => $requestorOptions['editable']], $this); echo Html::tag('h4', $requestorObject->descriptor, ['class' => 'list-group-item-heading']); if (!isset($helpText)) { $helpText = $requestorObject->objectType->title->upperSingular; } echo Html::tag('p', $helpText, ['class' => 'list-group-item-text help-text']); if (isset($errors[$requestorObject->primaryKey])) { echo Html::tag('p', $errors[$requestorObject->primaryKey], ['class' => 'alert alert-danger']); } echo Html::endTag('li');
<?php /** * ./app/views/app/create.php. * * @author Jacob Morrison <*****@*****.**> */ use canis\helpers\Html; cascade\components\web\assetBundles\ObjectViewAsset::register($this); $form->output(); if (!empty($primaryModel->modified)) { echo Html::beginTag('div', ['class' => 'canis-info-group']); echo Html::tag('div', 'Modified', ['class' => 'canis-info-label']); echo Html::tag('div', $primaryModel->modified, ['class' => 'canis-info-label']); echo Html::endTag('div'); }
<?php /** * @var yii\base\View */ use canis\helpers\ArrayHelper; use canis\helpers\Html; ArrayHelper::multisort($tasks, 'title'); $this->title = 'Maintenance Tasks'; $this->params['breadcrumbs'][] = ['label' => 'Administration', 'url' => ['/admin/dashboard/index']]; $this->params['breadcrumbs'][] = ['label' => $this->title]; echo Html::pageHeader($this->title); echo Html::beginTag('div', ['class' => 'list-group']); foreach ($tasks as $taskId => $task) { echo Html::a(Html::tag('h4', $task['title'], ['class' => 'list-group-item-heading']) . Html::tag('div', $task['description'], ['class' => 'list-group-item-text']), ['/admin/dashboard/tasks', 'task' => $taskId], ['class' => 'list-group-item', 'data-handler' => 'background']); } echo Html::endTag('div');
<?php /** * @var yii\base\View */ use canis\helpers\Html; $this->title = 'Administration'; $this->params['breadcrumbs'][] = ['label' => $this->title]; echo Html::beginTag('div', ['class' => 'list-group']); echo Html::a(Html::tag('h4', 'Maintenance Tasks', ['class' => 'list-group-item-heading']) . Html::tag('div', 'Run various maintenance tasks', ['class' => 'list-group-item-text']), ['/admin/dashboard/tasks'], ['class' => 'list-group-item']); echo Html::a(Html::tag('h4', 'Interfaces', ['class' => 'list-group-item-heading']) . Html::tag('div', 'Run various maintenance tasks', ['class' => 'list-group-item-text']), ['/admin/interface/index'], ['class' => 'list-group-item']); echo Html::endTag('div');
<?php use canis\helpers\Html; \canis\web\assetBundles\LogAsset::register($this); $interfaceModel = $dataInterfaceLog->dataInterface; $this->title = "View Data Interface Log"; $this->params['breadcrumbs'][] = ['label' => 'Administration', 'url' => ['/admin/dashboard/index']]; $this->params['breadcrumbs'][] = ['label' => 'Interfaces', 'url' => ['admin/interface/index']]; $this->params['breadcrumbs'][] = ['label' => $interfaceModel->name, 'url' => ['admin/interface/view-logs', 'id' => $interfaceModel->primaryKey]]; $this->params['breadcrumbs'][] = $this->title; echo Html::tag('div', '', ['data-log' => json_encode($dataInterfaceLog->dataPackage)]);
<?php use canis\helpers\Html; if (empty($role)) { $role = 'none'; } elseif (is_object($role)) { $role = $role->primaryKey; } $selectedRole = isset($roles[$role]) ? $roles[$role] : $roles['none']; $isDisabled = $disableFields || !$selectedRole['available'] || !$editable; $htmlOptions = ['type' => 'button']; $roleOptions = $selectedRole; $htmlOptions['data-role'] = json_encode($roleOptions); Html::addCssClass($htmlOptions, 'btn btn-default pull-right'); if ($isDisabled) { Html::addCssClass($htmlOptions, 'disabled'); } if (!$editable) { $selectedRole['label'] = 'Inherited ' . $selectedRole['label']; } echo Html::tag('button', Html::tag('span', $selectedRole['label'], ['class' => 'role-label']) . ' ' . Html::tag('span', '', ['class' => 'caret']), $htmlOptions);
/** * [[@doctodo method_description:generate]]. * * @return unknown */ public function generate() { $this->getFields(); $result = []; if (!empty($this->_settings['title'])) { $result[] = Html::beginTag('fieldset'); $result[] = Html::tag('legend', $this->_settings['title']); } $result[] = $this->grid->generate(); if (!empty($this->_settings['title'])) { $result[] = Html::endTag('fieldset'); } return implode("\n", $result); }
/** * @inheritdoc */ public function generateContent() { $parts = []; $instructions = []; $instructions['ajax'] = ['url' => Url::to(['/app/activity'])]; $instructions['scope'] = $this->currentScope; $parts[] = Html::tag('div', '', ['data-activity-feed' => json_encode($instructions), 'data-height' => json_encode(['min' => 1000, 'max' => 'body'])]); $parts[] = Html::tag('div', str_repeat(Html::tag('div', '', ['class' => 'widget-lazy-placeholder']), 30), ['class' => 'activity-feed-thinking']); return implode($parts); }
/** * @var yii\base\View */ use canis\helpers\ArrayHelper; use canis\helpers\Html; use yii\grid\GridView; ArrayHelper::multisort($tasks, 'title'); $this->title = 'Sensor Providers'; $this->params['breadcrumbs'][] = ['label' => 'Administration', 'url' => ['/admin']]; $this->params['breadcrumbs'][] = ['label' => $this->title]; echo Html::beginTag('div', ['class' => 'panel panel-default']); echo Html::beginTag('div', ['class' => 'panel-heading']); echo Html::beginTag('h3', ['class' => 'panel-title']); echo Html::beginTag('div', ['class' => 'btn-group btn-group-sm pull-right']); echo Html::a('Add Provider <span class="caret"></span>', '#', ['class' => 'btn btn-primary dropdown-toggle', 'data-toggle' => 'dropdown']); echo Html::beginTag('ul', ['class' => 'dropdown-menu']); echo Html::tag('li', Html::a('Pull Provider', ['/admin/provider/create', 'type' => 'pull'], ['class' => '', 'data-handler' => 'background'])); echo Html::tag('li', Html::a('Pushing Provider', ['/admin/provider/create', 'type' => 'push'], ['class' => '', 'data-handler' => 'background'])); //echo Html::a('Static Provider', ['/admin/provider/create', 'type' => 'static'], ['class' => '', 'data-handler' => 'background']); echo Html::endTag('ul'); echo Html::endTag('div'); echo 'Sensor Providers'; echo Html::endTag('h3'); echo Html::endTag('div'); echo Html::beginTag('div', ['class' => 'panel-body']); echo GridView::widget(['dataProvider' => $dataProvider, 'columns' => [['class' => 'yii\\grid\\ActionColumn', 'template' => '{update} {delete}', 'buttonOptions' => ['data-handler' => 'background'], 'buttons' => ['delete' => function ($url, $model, $key) { $options = array_merge(['title' => Yii::t('yii', 'Delete'), 'aria-label' => Yii::t('yii', 'Delete'), 'data-confirm' => Yii::t('yii', 'Are you sure you want to delete this item?'), 'data-method' => 'post', 'data-pjax' => '0'], []); return Html::a('<span class="glyphicon glyphicon-trash"></span>', $url, $options); }]], 'name', 'type', 'active', 'last_refresh:datetime', 'created:datetime']]); echo Html::endTag('div'); echo Html::endTag('div');
*/ use canis\helpers\ArrayHelper; use canis\helpers\Html; use canis\daemon\widgets\ExtendedStatus as DaemonStatus; \canis\web\assetBundles\CanisLogViewerAsset::register($this); ArrayHelper::multisort($tasks, 'title'); $this->title = 'Administration'; // $this->params['breadcrumbs'][] = ['label' => 'Administration', 'url' => ['/admin/index']]; $this->params['breadcrumbs'][] = ['label' => $this->title]; echo Html::beginTag('div', ['class' => 'panel panel-default']); echo Html::beginTag('div', ['class' => 'panel-heading']); echo Html::beginTag('h3', ['class' => 'panel-title']); echo Html::beginTag('div', ['class' => 'btn-group btn-group-sm pull-right']); echo Html::endTag('div'); echo 'Administration Tasks'; echo Html::endTag('h3'); echo Html::endTag('div'); echo Html::beginTag('div', ['class' => 'panel-body']); echo Html::beginTag('div', ['class' => 'list-group']); foreach ($tasks as $taskId => $task) { $dataHandler = ''; if (!isset($task['url'])) { $dataHandler = 'background'; $task['url'] = ['/admin/index', 'task' => $taskId]; } echo Html::a(Html::tag('h4', $task['title'], ['class' => 'list-group-item-heading']) . Html::tag('div', $task['description'], ['class' => 'list-group-item-text']), $task['url'], ['class' => 'list-group-item', 'data-handler' => $dataHandler]); } echo Html::endTag('div'); echo Html::endTag('div'); echo Html::endTag('div'); echo DaemonStatus::widget();
<?php use canis\helpers\Html; use yii\helpers\Url; \canis\web\assetBundles\CanisLogViewerAsset::register($this); $this->title = "View Service Log"; //$package = []; echo Html::tag('div', '', ['data-log' => json_encode($package)]);
use canis\helpers\Html; echo Html::beginTag('ul', ['class' => 'list-group']); echo Html::beginTag('li', ['class' => 'list-group-item']); echo Html::tag('span', $stats['total'], ['class' => 'badge']); echo 'Total'; echo Html::endTag('li'); if (!empty($stats['top_contributors'])) { echo Html::beginTag('li', ['class' => 'list-group-item']); echo '<h5>Top Contributors</h5>'; echo Html::beginTag('ul', ['class' => 'list-group']); foreach ($stats['top_contributors'] as $id => $contrib) { echo Html::beginTag('li', ['class' => 'list-group-item']); echo Html::tag('span', $contrib['sum'], ['class' => 'badge']); echo Html::a($contrib['label'], ['/object/view', 'id' => $id, 'p' => Yii::$app->request->object->primaryKey]); echo Html::endTag('li'); } echo Html::endTag('ul'); } if (!empty($stats['month_summary'])) { echo Html::beginTag('li', ['class' => 'list-group-item']); echo '<h5>Month Summaries</h5>'; echo Html::beginTag('ul', ['class' => 'list-group']); foreach ($stats['month_summary'] as $month => $sum) { echo Html::beginTag('li', ['class' => 'list-group-item']); echo Html::tag('span', $sum['sum'], ['class' => 'badge']); echo date('F Y', strtotime($month . '-01')); echo Html::endTag('li'); } echo Html::endTag('ul'); } echo Html::endTag('ul');
<?php use canis\helpers\Html; $this->params['breadcrumbs'][] = ['label' => 'Administration', 'url' => ['/admin/dashboard/index']]; $this->params['breadcrumbs'][] = ['label' => $this->title]; $this->title = 'Interfaces'; echo Html::pageHeader($this->title); echo Html::beginTag('div', ['class' => 'list-group']); foreach (Yii::$app->collectors['dataInterfaces']->getAll() as $interfaceItem) { $interface = $interfaceItem->object; $interfaceModel = $interfaceItem->interfaceObject; $lastLog = $interfaceModel->lastDataInterfaceLog; echo Html::beginTag('div', ['class' => 'list-group-item']); $items = []; $items[] = ['label' => 'Logs', 'url' => ['/admin/interface/view-logs', 'id' => $interfaceModel->primaryKey]]; if (empty($lastLog) || !$lastLog->isActive) { $items[] = ['label' => 'Run', 'url' => ['/admin/interface/run', 'id' => $interfaceModel->primaryKey], 'htmlOptions' => ['data-handler' => 'background']]; } else { $items[] = ['label' => 'View Active Log', 'url' => ['/admin/interface/view-log', 'id' => $lastLog->primaryKey]]; } if (!empty($lastLog)) { $lastRanHtmlOptions = ['class' => 'label label-' . $lastLog->bootstrapState]; $lastRan = Html::a(date("F d, Y h:ia", strtotime($lastLog->created)), ['/admin/interface/view-log', 'id' => $lastLog->primaryKey], $lastRanHtmlOptions); } else { $lastRan = Html::tag('span', 'Never Ran', ['class' => 'label label-warning']); } echo Html::tag('h4', $interface->name . ' ' . $lastRan . Html::buttonGroup($items, ['class' => 'pull-right btn-group-sm'])); echo Html::endTag('div'); } echo Html::endTag('div');