Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Aug 20 19:44

    paveljanda on v2.0.0

    (compare)

  • Aug 20 19:44
    paveljanda commented #5
  • Aug 20 19:44

    paveljanda on master

    Upgrade to Nette 3.0 Merge pull request #5 from RiKa… (compare)

  • Aug 20 19:44
    paveljanda closed #5
  • Aug 17 09:19
    RiKap commented #5
  • Jul 18 15:39
    RiKap commented #5
  • Jul 11 15:28
    RiKap opened #5
  • May 09 11:27
    paveljanda commented #13
  • May 09 11:27
    paveljanda closed #12
  • May 09 11:27
    paveljanda commented #12
  • May 09 11:26

    paveljanda on v1.2.0

    (compare)

  • May 09 11:26

    paveljanda on master

    Allow Nette 3.0 stable Update nette/tester & mockery, … Merge pull request #13 from Gap… (compare)

  • May 09 11:26
    paveljanda closed #13
  • May 09 11:25
    paveljanda commented #13
  • May 09 11:22
    Gappa commented #13
  • May 09 11:16
    Gappa synchronize #13
  • May 09 08:55
    Gappa commented #13
  • May 09 08:55
    Gappa commented #13
  • May 09 08:54
    paveljanda commented #13
  • May 09 08:51
    paveljanda commented #13
Pavel Janda
@paveljanda
@chikeet Lze použít například export : )
@chikeet Nebo lze podědit třídu DataGrid a potom vložit vlastní callbacky do eventů $this->dataModel->onBeforeFilter, $this->dataModel->onAfterFilter, $this->dataModel->onAfterPaginated
To je asi lepší přístup.
Zuzana Kreizlova
@chikeet
@paveljanda Díky. Nakonec jsem to vyřešila bez datagridu, protože bylo potřeba při překreslení tabulky překreslovat taky snippet se součty a tam se mi nepodařilo dostat aktuální parametry filtrace z datagridu.
Dominik Harmim
@harmim
@paveljanda Ahoj, používám inlineEdit a inlineAdd v DataGridu. Mám problém s tím, že když některé prvky v tomto inlineEdit/Add kontejneru jsou povinné, tak se mi tyto prvky validují vždy, i když třeba filtruji nebo stránkuji a zrovna nic nepřidávám nebo needituji. Myslíš, že dělám něco špatně nebo je to chyba v DataGridu?
Michal Kral
@kralmichal
Ahoj, je mozne v api-router udelat filtr na parametry jako ma Route z nette? tzn. pouzit neco takoveho
null => [
Route::FILTER_IN => function(array $params) {
// ...
return $params;
},
Route::FILTER_OUT => function(array $params) {
// ...
return $params;
},
],
Michal Šmeidler
@Maisner

Ahoj, prosím vás potřeboval bych poradit jak multiaction tlačítku nastavím text dle hodnoty z aktuálního row. Jedná se samozřejmě o datagrid

$grid->addMultiAction('approvedState', 'MultiAction')
            ->addAction('approve', 'Schválit', 'approve!')
            ->addAction('notApprove', 'Neschválit', 'notApprove!')
            ->addAction('terminate', 'Předčasně ukončit', 'terminate!');

Mám něco takového a místo nápisu name MultiAction bych potřeboval tam dostat hodnotu z $row

Zkoušel jsem něco takové ho, ale to nepomohlo

->setRenderer(function ($row){
                return $row['approvedState'];
            })

Poradil by jste někdo jak na to?

Pavel Janda
@paveljanda
@kralmichal Bohužel není. api-router je jen simple rest router :) Což je i jeho výhoda
@Maisner Asi to teď momentálně nejde, ale můžeš poslat PR. :)
Adam Schubert
@Salamek

Nette\Application\UI\PresenterComponent is renamed to Nette\Application\UI\Component in nette 2.4
used in https://github.com/ublaboo/datagrid/blob/v5.x/src/DataGrid.php#L3446

Are we still targeting Nette 2.3 or i can simply rename it and do PR ?

Pavel Janda
@paveljanda
@Salamek PR would be awesome : )
Mário Čižmárik
@mario-cizmarik
Ahoj, poraďte prosím. Mám vytvorený datagrid, kde mením stavy.
Po zmene stavu sa nový stav do databázy zapíše, ale grid sa redrawne až pri ďalšej zmene stavu rovnakej alebo inej položky.
V @layout.latte mám includnutý nette.ajax.js , aj sa inicializuje, všetko po jquery.
Dáta ťahám cez v moduli cez dibi query.

`
public function createComponentBreweryGrid($name)
{
$idexhibition = (int)$this->getParameter('idexhibition');

    $grid = new DataGrid($this, $name);
    $grid->setSortable();
    $grid->setSortableHandler('sortBrewery!');
    $grid->setDataSource($this->vystavaManager->getAll('brewery', $idexhibition)->fetchAll());

    //$grid->addColumnText('exhibition_has_brewery.ord', 'ord');
    $grid->addColumnText('brewery.name', 'Pivovar');
    $grid->addColumnStatus('exhibition_has_brewery.special', 'Špeciálny hosť?')
        ->setCaret(FALSE)
        ->addOption(1, 'áno')
            ->setIcon('check')
            ->setClass('ajax btn btn-default btn-fill')
            ->endOption()
        ->addOption(0, 'nie')
            ->setIcon('times')
            ->setClass('ajax btn btn-default btn-fill')
            ->endOption()
        ->onChange[] = [$this, 'changeSpecialBrewery'];
    $grid->addColumnStatus('exhibition_has_brewery.enabled', 'Na výstave?')
        ->setCaret(FALSE)
        ->addOption(1, 'áno')
            ->setIcon('check')
            ->setClass('ajax btn btn-success btn-fill')
            ->endOption()
        ->addOption(0, 'nie')
            ->setIcon('times')
            ->setClass('ajax btn btn-danger btn-fill')
            ->endOption()
        ->onChange[] = [$this, 'changeEnabledBrewery'];

    $grid->addExportCsv( 'Csv export', 'zoznam_pivovarov.csv', 'windows-1250')
         ->setTitle('Zoznam pivovarov');
    $grid->setPagination(FALSE);
}

public function changeEnabledBrewery($id, $status)
{
    $this->vystavaManager->setGridItem($id, $status, $col='enabled', $type = "brewery", (int)$this->getParameter('idexhibition'));

    $status_text = ['vypnutý', 'zapnutý'][$status];
    $this->flashMessage("Pivovar je [$status_text].", 'info');

    if ($this->isAjax()) {
        $this->redrawControl('flashes');
        //$this['breweryGrid']->redrawItem($id);
        $this['breweryGrid']->reload();
    }
}

public function changeSpecialBrewery($id, $status)
{
    $this->vystavaManager->setGridItem($id, $status, $col='special', $type = "brewery", (int)$this->getParameter('idexhibition'));

    $status_text = ['obyčajný', 'špeciálny'][$status];
    $this->flashMessage("Pivovar nastavený ako [$status_text].", 'info');

    if ($this->isAjax()) {
        $this->redrawControl('flashes');
        //$this['breweryGrid']->redrawItem($id);
        $this['breweryGrid']->reload();
    }
}

`

Pavel Janda
@paveljanda
@mario-cizmarik A když to uděláš klasicky? $this->redrawControl('breweryGrid');
Mário Čižmárik
@mario-cizmarik
@paveljanda V tom prípade zostane drop down menu otvorené, no grid sa neprekreslí.
Petr Parolek
@petrparolek
Ahoj, jak mám prosím udělat v CSS nebo JS, aby mi při větším počtu řádků v ublaboo gridu zůstala vidět hlavička tabulky s názvy sloupců? Díky moc.
Mário Čižmárik
@mario-cizmarik
posli screen, ako sa to chova
Petr Parolek
@petrparolek
datagrid.jpg
Mário Čižmárik
@mario-cizmarik
v thead mas viac stlpcov ako v tbody?
Petr Parolek
@petrparolek
ne
Mário Čižmárik
@mario-cizmarik
každopádne by som si spustil Firebug a zistil, čo v css rozbíja tú tabuľku.
Petr Parolek
@petrparolek
toto jsem zkoušrl
sorry, to byl jiný pokus
table {
            width: 100%;
        }

        thead, tbody, tr, td, th { display: block; }

        tr:after {
            content: ' ';
            display: block;
            visibility: hidden;
            clear: both;
        }

        thead th {
            height: 30px;

            /*text-align: left;*/
        }

        tbody {
            height: 400px;
            overflow-y: auto;
        }

        thead {
            /* fallback */
        }


        tbody td, thead th {
            width: 12.5%;
        }
Mário Čižmárik
@mario-cizmarik
Podľa mňa to bude vec css. Možno máš definované štýly pre tabuľky vo viacerých súboroch.

keď tak vyskúšaj

<style>
table {
border-collapse: collapse;
border-spacing: 0;
width: 100%;
border: 1px solid #ddd;
}

th, td {
text-align: left;
padding: 8px;
}

tr:nth-child(even){background-color: #f2f2f2}
</style>

Petr Parolek
@petrparolek
nefunguje
hlavička nezůstává
Mário Čižmárik
@mario-cizmarik
@paveljanda aj som prepísal dotaz z query na fluent a nič sa nezmenilo :/
Mário Čižmárik
@mario-cizmarik
aha este som vyhodil fetchAll() z datasource na co som zabudol a uz to ide!
tento datagrid je uzasny :)
Pavel Janda
@paveljanda
Aha. No ten fetchAll z toho udělá pole, které se netahá lazy až při renderingu, ale už při vytváření komponenty a nastavování data sourcu.. Jasně no. :)
Mário Čižmárik
@mario-cizmarik
uz mi je to jasne :)
markosko
@markosko
@paveljanda ahoj, je normalne aby pri NetteDatabaseDataSource a parametroch, kde vysledok je 0 riadkov, datagrid pytal 3 dotazy ? Prvy je COUNT(*), druhy moje sql s LIMITOM a treti znova moje sql ale tentokrat bez LIMIT ?
v pripade ak je aspon jeden riadok tak sa pyta len na 2 count + sql s limit
David Skála
@Griston2524_twitter

Ahoj, nevěděl by někdo nebo @paveljanda jak zprovoznit https://ublaboo.org/datagrid/tree-view pro doctrine?

$join = $this->entityManager
->createQueryBuilder()
->select('COUNT(a.id) AS count', 'IDENTITY(a.superNavigationItem) AS superNavigationItem')
->from($this->tableNavigationItem, 'a')
->groupBy('superNavigationItem');

$fluent = $this->entityManager
->createQueryBuilder()
->select('b')
->from($this->tableNavigationItem, 'b')
->leftJoin(sprintf('(%s)', $join), 'c', \Doctrine\ORM\Query\Expr\Join::ON, 'c.superNavigationItem = b.id');

vrátí JOIN (SELECT': Error: Subquery is not supported here

slownet
@slownet
cau :smile:
mam skoro stejny problem jako @mario-cizmarik (statusy), pri prvnim klikani statusu nic se nestane, ale zmeny v db jsou. Po kazdym dalsim klikani status funguje v pohode. U datasource nemam zadny fetch
Nevite co s tim muze byt vubec?
David Skála
@Griston2524_twitter
@slownet už jsi na to přišel?
slownet
@slownet

@Griston2524_twitter jj, mel jsem takovy javascript:

$.nette.ext('snippets').after(function (element) {
                loadJsInit();
            });

loadJsInit nacte vsechny scripty znovu. Kdyz zakomentuju tento kus kodu, tak vsechno funguje jak ma.

Mário Čižmárik
@mario-cizmarik
ahojte, chcem sa spýtať, používam nette 2.4, datagrid 5.6. Konflikt v JS žiaden. Prejavuje sa to aj na BS3 aj na BS4.. Inline-add sa mi neustále zobrazuje, po kliknutí na tlačidlo +, inline edit nezmizne.. Viete mi prosím poradiť, v čom môže byť problém?Ďakujem.
halaxa-roman
@halaxa-roman
Zdravím. Potřeboval bych přiohnout filtrování v ublaboo datagrid. Zatím jsem vyčetl že to asi půjde udělat pomocí setCondition() Ale úplně nevím jak by to mělo fungovat...
Peta
@PetaKroutil_twitter

Zdravím, chci v ublaboo datagrid používat multiple select viz i podle dokumentace

    $grid->addColumnText('status', 'Status2', 'status')
        ->setFilterMultiSelect([0, 1, 2]);

Ale když to udělám tak se mi nad ten sloupec použije select kterej je disabled, už jsem zkoušel snad vše. Boostrap select JS používám a mám připojený, stejně jako datagrid.js atd.
Disabled select viz obr.
https://gyazo.com/5bb67017b9811139e88bed102924a3e5

Nevíte někdo co s tím?

markosko
@markosko
@PetaKroutil_twitter mas multiselect kniznixu?
Peta
@PetaKroutil_twitter
@markosko Mám podle dokumentace tuto
<!-- Include bootstrap-select.js when using FilterMultiSelect (silviomoreto.github.io/bootstrap-select) -->
<script src="../bower_components/bootstrap-select/dist/js/bootstrap-select.js"></script>
markosko
@markosko
@PetaKroutil_twitter nemas nieco v konzole ? nejaky error ?
Peta
@PetaKroutil_twitter
@markosko Právě že nic, vše se tváří jako že to funguje jen je ten multi select disabled, i v html vidim že se načetly do multi selectu všechna data.
Kristián Bukva
@suweb
Ahojte chcel by som sa opýtať či ste niekto neriešili respo pri datagride potrebujem podla rozlíženia obmedzovať poveť stlpcov .
Petr Parolek
@petrparolek
ahoj, proč jsi Pavle zrušil starýž web http://ublaboo.org/datagrid/ ??? Je podle mě mnoho lidí jako já, kteří používají verzi 5.x a dokumentace byla moc hezká, přehledná, s živou ukázkou datagridu
Petr Parolek
@petrparolek
ani na archive.org nic současného nezůstalo! https://web.archive.org/web/20190615000000*/https://ublaboo.org/datagrid/ Jsi jejich robota blokoval nebo co?