PHPackages                             geniv/nette-calendar - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. geniv/nette-calendar

ActiveLibrary[Framework](/categories/framework)

geniv/nette-calendar
====================

Calendar extension for Nette Framework

v1.1.3(7y ago)0201MITPHPPHP &gt;=7.0.0

Since Jan 19Pushed 7y ago2 watchersCompare

[ Source](https://github.com/geniv/nette-calendar)[ Packagist](https://packagist.org/packages/geniv/nette-calendar)[ RSS](/packages/geniv-nette-calendar/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (16)Used By (0)

Nette calendar
==============

[](#nette-calendar)

Installation
------------

[](#installation)

```
$ composer require geniv/nette-calendar
```

or

```
"geniv/nette-calendar": ">=1.0.0"
```

require:

```
"php": ">=7.0.0",
"nette/nette": ">=2.4.0",
"geniv/nette-general-form": ">=1.0.0"
```

Include in application
----------------------

[](#include-in-application)

neon configure:

```
# calendar
calendar:
#   autowired: true
#   processor: Calendar\Processor
    offsetDay: 7    # offset next day
    firstDay: 0     # number first day
    lastDay: 6      # number last day
    fromTime: 11    # number from hour (modify)
    countBlock: 10  # count block hour (modify)
    stepBlock: "+1 hour +30 minute" # offset hour (modify)
```

Logic processor:
----------------

[](#logic-processor)

must implemented interface: `Calendar\IProcessor` with process method for self logic calendar

neon configure extension:

```
extensions:
    calendar: Calendar\Bridges\Nette\Extension
```

callback:
---------

[](#callback)

```
onInactiveDate(DateTime $date)
onSelectDate(DateTime $date)
```

load date:
----------

[](#load-date)

```
$weekCalendar->setLoadData(array $dates);
```

set variable to calendar latte:
-------------------------------

[](#set-variable-to-calendar-latte)

```
$weekCalendar->addVariableTemplate('game', $game);
```

select date:
------------

[](#select-date)

```
$weekCalendar->selectDate($date);
```

usage:

```
protected function createComponentWeekCalendar(WeekCalendar $weekCalendar): WeekCalendar
{
    $dates = $this->reservationModel->getList()->where(['active' => true])->fetchPairs('id', 'date');
    $weekCalendar->setLoadData($dates);

    // setting calendar
    $weekCalendar->setFromTime(11);
    $weekCalendar->setCountBlock(10);
    $weekCalendar->setStepBlock('+2 hour');

    // $weekCalendar->setTemplatePath(__DIR__ . '/templates/WeekCalendar.latte');
    $weekCalendar->onInactiveDate[] = function (DateTime $date) {
        // callback inactive row
    };

    $weekCalendar->onSelectDate[] = function (DateTime $date) {
        $this->template->datum = $date;

        $this['reservationForm']->setDefaults([
            'date' => $date,
        ]);

        if ($this->isAjax()) {
            $this->redrawControl('reservationSnippet');
        }
    };
    return $weekCalendar;
}
```

usage:

```
{control weekCalendar}
...
{snippet reservationSnippet}
    {ifset $datum}
        {$datum|date:'d.m.Y H:i'}
        {control reservationForm}
    {/ifset}
{/snippet}
```

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 98% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~14 days

Recently: every ~39 days

Total

14

Last Release

2897d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/bc7e200eb4e96d99020297684063209160ea1347d8a2a8b4cd769d532204867e?d=identicon)[geniv](/maintainers/geniv)

---

Top Contributors

[![geniv](https://avatars.githubusercontent.com/u/563659?v=4)](https://github.com/geniv "geniv (50 commits)")[![MartinFugess](https://avatars.githubusercontent.com/u/4451137?v=4)](https://github.com/MartinFugess "MartinFugess (1 commits)")

---

Tags

nettecalendargeniv

### Embed Badge

![Health badge](/badges/geniv-nette-calendar/health.svg)

```
[![Health](https://phpackages.com/badges/geniv-nette-calendar/health.svg)](https://phpackages.com/packages/geniv-nette-calendar)
```

###  Alternatives

[vojtech-dobes/nette-ajax-history

Adds History API support for Nette Framework.

30180.8k2](/packages/vojtech-dobes-nette-ajax-history)[flame/modules

Nette modules on the Steroids

1361.8k3](/packages/flame-modules)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
