<?php $filter_active = isset($_GET['department']) && $_GET['department'] != '-1' || isset($_GET['designation']) && $_GET['designation'] != '-1' ? $_GET : false; $leave_requests = erp_hr_get_calendar_leave_events($filter_active); $events = []; foreach ($leave_requests as $key => $leave_request) { $events[] = array('id' => $leave_request->id, 'title' => $leave_request->display_name, 'start' => $leave_request->start_date, 'end' => $leave_request->end_date, 'url' => erp_hr_url_single_employee($leave_request->user_id), 'color' => $leave_request->color, 'img' => get_avatar($leave_request->user_id, 16)); } ?> <style> .fc-time { display:none; } .erp-leave-avatar img { border-radius: 50%; margin: 3px 7px 0 0; } .erp-calendar-filter { margin: 15px 0px; } .fc-title { position: relative; top: -4px; } </style> <div class="wrap erp-hr-calendar-wrap"> <h1><?php _e('Calendar', 'wp-erp');
/** * ERP dashboard leave calendar widget * * @since 0.1 * * @return void */ function erp_hr_dashboard_widget_leave_calendar() { $user_id = get_current_user_id(); $leave_requests = erp_hr_get_calendar_leave_events(false, $user_id); $holidays = erp_array_to_object(\WeDevs\ERP\HRM\Models\Leave_Holiday::all()->toArray()); $events = []; $holiday_events = []; $event_data = []; foreach ($leave_requests as $key => $leave_request) { $events[] = array('id' => $leave_request->id, 'title' => $leave_request->display_name, 'start' => $leave_request->start_date, 'end' => $leave_request->end_date, 'url' => erp_hr_url_single_employee($leave_request->user_id), 'color' => $leave_request->color, 'img' => get_avatar($leave_request->user_id, 16)); } foreach ($holidays as $key => $holiday) { $holiday_events[] = ['id' => $holiday->id, 'title' => $holiday->title, 'start' => $holiday->start, 'end' => $holiday->end, 'color' => '#FF5354', 'img' => '', 'holiday' => true]; } $event_data = array_merge($events, $holiday_events); ?> <style> .fc-time { display:none; } .erp-leave-avatar img { border-radius: 50%; margin: 3px 7px 0 0; } .erp-calendar-filter { margin: 15px 0px; } .fc-title { position: relative; top: -4px; } </style> <?php if (erp_hr_get_assign_policy_from_entitlement($user_id)) { ?> <div class="erp-hr-new-leave-request-wrap"> <a href="#" class="button button-primary" id="erp-hr-new-leave-req"><?php _e('Take a Leave', 'wp-erp'); ?> </a> </div> <?php } ?> <div id="erp-hr-calendar"></div> <script> ;jQuery(document).ready(function($) { $('#erp-hr-calendar').fullCalendar({ header: { left: 'prev,next today', center: 'title', right: 'month,agendaWeek,agendaDay' }, editable: false, eventLimit: true, // allow "more" link when too many events events: <?php echo json_encode($event_data); ?> , eventRender: function(event, element, calEvent) { if ( event.holiday ) { element.find('.fc-content').find('.fc-title').css({ 'top':'0px', 'left' : '3px', 'fontSize' : '13px', 'padding':'2px' }); }; if( event.img != 'undefined' ) { element.find('.fc-content').find('.fc-title').before( $("<span class=\"fc-event-icons erp-leave-avatar\">"+event.img+"</span>") ); } }, }); }); </script> <?php }