mirror of
https://github.com/Karaka-Management/oms-Calendar.git
synced 2026-01-27 23:18:40 +00:00
Organization + calendar fixes/extensions
This commit is contained in:
parent
6179700b03
commit
3b82c89840
|
|
@ -2,6 +2,21 @@
|
|||
{
|
||||
"id": 1000901001,
|
||||
"pid": "754a08ddf8bcb1cf22f310f09206dd783d42f7dd",
|
||||
"type": 1,
|
||||
"subtype": 1,
|
||||
"name": "Calendar",
|
||||
"uri": "/{/lang}/backend/calendar/dashboard",
|
||||
"target": "self",
|
||||
"icon": "fa fa-calendar",
|
||||
"order": 10,
|
||||
"from": "Calendar",
|
||||
"permission": null,
|
||||
"parent": 1000201001,
|
||||
"children": []
|
||||
},
|
||||
{
|
||||
"id": 1000901002,
|
||||
"pid": "754a08ddf8bcb1cf22f310f09206dd783d42f7dd",
|
||||
"type": 2,
|
||||
"subtype": 1,
|
||||
"name": "Calendar",
|
||||
|
|
|
|||
|
|
@ -15,9 +15,11 @@
|
|||
*/
|
||||
namespace Modules\Calendar;
|
||||
|
||||
use Modules\Calendar\Models\CalendarMapper;
|
||||
use Modules\Navigation\Models\Navigation;
|
||||
use Modules\Navigation\Views\NavigationView;
|
||||
use phpOMS\Contract\RenderableInterface;
|
||||
use phpOMS\Datatypes\SmartDateTime;
|
||||
use phpOMS\Message\RequestAbstract;
|
||||
use phpOMS\Message\RequestDestination;
|
||||
use phpOMS\Message\ResponseAbstract;
|
||||
|
|
@ -117,6 +119,11 @@ class Controller extends ModuleAbstract implements WebInterface
|
|||
$view->setTemplate('/Modules/Calendar/Theme/Backend/calendar-dashboard');
|
||||
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1001201001, $request, $response));
|
||||
|
||||
$mapper = new CalendarMapper($this->app->dbPool->get());
|
||||
$calendar = $mapper->get(1);
|
||||
$calendar->setDate(new SmartDateTime($request->getData('date') ?? 'now'));
|
||||
$view->addData('calendar', $calendar);
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@
|
|||
* @link http://orange-management.com
|
||||
*/
|
||||
namespace Modules\Calendar\Models;
|
||||
|
||||
use phpOMS\Datatypes\SmartDateTime;
|
||||
|
||||
/**
|
||||
|
|
@ -284,4 +285,26 @@ class Calendar
|
|||
{
|
||||
$this->date = $date;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get event by date
|
||||
*
|
||||
* @param \DateTime $date Date of the event
|
||||
*
|
||||
* @return Event[]
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||
*/
|
||||
public function getEventByDate(\DateTime $date) : array
|
||||
{
|
||||
$events = [];
|
||||
foreach ($this->events as $event) {
|
||||
if ($event->getCreatedAt()->format('Y-m-d') === $date->format('Y-m-d')) {
|
||||
$events[] = $event;
|
||||
}
|
||||
}
|
||||
|
||||
return $events;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -121,7 +121,7 @@ class CalendarMapper extends DataMapperAbstract
|
|||
|
||||
$this->db->con->prepare($query->toSql())->execute();
|
||||
} catch (\Exception $e) {
|
||||
var_dump($e);
|
||||
var_dump($e->getMessage());
|
||||
|
||||
return false;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
<?php
|
||||
$calendar = new \Modules\Calendar\Models\Calendar();
|
||||
$calendar = $this->getData('calendar');
|
||||
?>
|
||||
<section class="wf-75 floatLeft">
|
||||
<section class="box w-100">
|
||||
<ul class="btns floatLeft">
|
||||
<li><a href=""><i class="fa fa-arrow-left"></i></a>
|
||||
<li><a href=""><i class="fa fa-arrow-right"></i></a>
|
||||
<li><a href="<?= \phpOMS\Uri\UriFactory::build('/{/lang}/backend/calendar/dashboard?date=' . $calendar->getDate()->createModify(0, -1, 0)->format('Y-m-d')) ?>"><i class="fa fa-arrow-left"></i></a>
|
||||
<li><a href="<?= \phpOMS\Uri\UriFactory::build('/{/lang}/backend/calendar/dashboard?date=' . $calendar->getDate()->createModify(0, 1, 0)->format('Y-m-d')) ?>"><i class="fa fa-arrow-right"></i></a>
|
||||
</ul>
|
||||
<ul class="btns floatRight">
|
||||
<li><a href=""><?= $this->l11n->lang['Calendar']['Day'] ?></a>
|
||||
|
|
@ -16,15 +16,23 @@ $calendar = new \Modules\Calendar\Models\Calendar();
|
|||
</section>
|
||||
<section class="box w-100">
|
||||
<div class="m-calendar-month">
|
||||
<?php for($i = 0; $i < 6; $i++) : ?>
|
||||
<?php $current = new \phpOMS\Datatypes\SmartDateTime($calendar->getDate()->format('Y') . '-' . $calendar->getDate()->format('m') . '-' . '01'); for($i = 0; $i < 6; $i++) : ?>
|
||||
<div class="wf-100">
|
||||
<?php for($j = 0; $j < 7; $j++) : ?>
|
||||
<div contextmenu="calendar-day-menu" style="display: inline-block; box-sizing: border-box; width: 13.0%; height: 100px; border: 1px solid #000; margin: 0; padding: 3px;">
|
||||
<?php if($calendar->getFirstDay() <= $i*7+$j+1 && $calendar->getDaysOfMonth() >= $i*7+$j+1) {
|
||||
<div contextmenu="calendar-day-menu" style="display: inline-block; box-sizing: border-box; width: 13.0%; height: 100px; border: 1px solid #000; margin: 0; padding: 3px; overflow: hidden">
|
||||
<?php if($calendar->getDate()->getFirstDayOfMonth() <= $i*7+$j+1 && $calendar->getDate()->getDaysOfMonth() >= $i*7+$j+1) {
|
||||
echo ($i*7+$j+1) . ' ' . $this->l11n->lang[0][jddayofweek($j, 1)];
|
||||
} else {
|
||||
echo (($i*7+$j+1)-$calendar->getDaysOfMonth());
|
||||
echo (($i*7+$j+1)-$calendar->getDate()->getDaysOfMonth()) . ' ' . $this->l11n->lang[0][jddayofweek($j, 1)];
|
||||
} ?>
|
||||
<ul>
|
||||
<?php
|
||||
$events = $calendar->getEventByDate($current);
|
||||
$current->smartModify(0, 0, 1);
|
||||
foreach($events as $event) : ?>
|
||||
<li><span class="tag purple" style="white-space: nowrap;"><?= $event->getName(); ?></span>
|
||||
<?php endforeach; ?>
|
||||
</ul>
|
||||
</div>
|
||||
<?php endfor; ?>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user