Closed CrazyRedScorp closed 8 years ago
Желательно описать функционал добавления ярлыков при использовании "конфигурации моделей через сервис провайдер", т.е. в методе:
public function initialize()
{
app()->booted(function() {
\AdminNavigation::getPages()->findById('menuId')
->addPage(new Page(\App\MyModels::class))
->setIcon('fa fa-fax')
->setPriority(0)
->addBadge(function() {
А еще хотелось бы иметь возможность по разному раскрашивать ярлыки типа так:
Метод addBadge
на входе ожидает класс реализующий интерфейс KodiComponents\Navigation\BadgeInterface
. Т.е. тебе необходимо создать свой класс, который реализует данный интерфейс и в нем может реализовать вывод бейджев так как тебе угодно.
сразу в доку решения складывать или завести раздел tips and tricks
Все руки ~мозги~ не доходят сделать по уму, однако что есть. Скажу сразу, как всегда, делалось на скорую руку (еще в августе по совету Павла) и мое решение грубо говоря притянуто за уши. Итак:
/vendor/laravelrus/sleepingowl/resources/views/default/_partials/navigation/badge.blade.php
и пришлось его целиком заменить просто на:
{!! $value !!}
Из косяков:
vendor
~по рукам был бит и не один раз~ жескач еще тот, но, увы не знаю как отцепиться от него. Планировалось чтобы все варилось на уровне моих шаблонов из моей папки /resources/views/
. Пробовал по разному подкладывать шаблоны в /resources/views/vendor/sleepingowl/.....
и играться с их подключением в $view = config('navigation.view.badge', 'navigation::badge');
и выводом через return
, но не получилось, упорно тянет из vendor
.[11, 'danger'],[22, 'info'],....
Хотя если посмотреть что на выхлопе в html, то будет http://laravel.io/bin/eDz1B А хотелось бы получить вот так http://laravel.io/bin/MkaV8 Почему хотелось бы:
a. во-первых, чтобы со временем засунуть туда еще и hint всплывающий (и передавать его третьим параметром)
b. во-вторых, если у спана убрать position: absolute;
в стиле:
то получим практически что и хотелось:
Хотелки юзались на прямую в браузере Chrome, до реализации на уровне своего класса - не дополз. В связи с чем, многоуважаемые гуру, может возьметесь за реализацию правильного решения или как-то докостылить/~улучшить~/~отпимизировать~/~свое мнение~ это?
Просто пишу сообщить, что вот эта проблема при использовании addBadge() все еще актуальна:
В принципе решается созданием объекта бейджа, вызовом у него setHtmlAttributes с нужным классом и добавлением через setBadge().
@sngrl Код пожалуйста.
При вот таком коде получаем абракадабру:
->addBadge(new Badge(55), ['class' => 'label-primary'])
А так все ок:
->setBadge((new Badge(55))->setHtmlAttributes(['class' => 'label-primary']))
@sngrl значит нужно выпилять - либо стандартизировать.
Доброго времени суток. Подскажите, как добавить два ярлыка
Badge
на пункт меню, если такое вообще возможно?При попытке вызвать два раза подряд метод
AddBadge
- в меню будет высвечиваться только последний. А при попытке передать массив/набор получаем ошибку: