Ejemplo n.º 1
0
 /**
  * @param $object
  * @return array
  */
 public function transformDataToGraph($object)
 {
     $return = [];
     foreach ($object as $date) {
         $return['hours'][] = $date->hours;
         $return['hoursPending'][] = $date->hoursPending;
         $return['date'][] = substr(Date::conversion($date->date), 0, 5);
     }
     return $return;
 }
Ejemplo n.º 2
0
 private function process($password)
 {
     $processor = new TaskProcessor($password);
     $result = $processor->process($this->bar);
     if ($result) {
         $tasksProcesseds = $processor->getTasksProcessed();
         foreach ($tasksProcesseds as $task) {
             $this->tasksProcesseds[] = [$task->task, Date::conversion($task->date), $task->time, $task->description, $task->status];
         }
     }
 }
Ejemplo n.º 3
0
 public function saveAction(Request $request)
 {
     $params = $request->all();
     $params['date'] = Date::conversion($params['date']);
     $request->replace($params);
     unset($params['_token'], $params['q']);
     $routeBack = $request->get('redirect', false);
     if (!$routeBack) {
         $routeBack = 'tasks.new';
         if (isset($params['id']) && (int) $params['id'] > 0) {
             $routeBack = 'tasks.edit';
         }
     }
     if ($request->getMethod() == 'POST') {
         // saving data!
         $isValid = $this->repository->validateRequest($request);
         if (!is_bool($isValid)) {
             $request->session()->flash('message', "Invalid data, please check the following errors: ");
             $request->session()->flash('validationErrros', $isValid);
             $formattedDate = \Datetime::createFromFormat('Y-m-d', $request->get('date'));
             $request->replace(['date' => $formattedDate->format('d/m/Y')]);
             return redirect()->route($routeBack, [$routeBack == 'tasks.edit' ? $params['id'] : null])->withInput()->with('validationErros', $isValid);
         }
         //update
         if ($routeBack == 'tasks.edit') {
             $task = $this->repository->findById($params['id']);
             if (!$task) {
                 $request->session()->flash('message', "Task [{$params['id']}] not found");
                 return redirect('tasks');
             }
             $task = Tasks::findOrNew($params['id']);
             $task->fill($params);
             $task->update();
             $request->session()->flash('message', "Task [{$task->task}] updated successfully!");
             $request->session()->flash('success', true);
             return redirect('tasks');
         }
         //insert
         $tasks = new Tasks();
         $tasks->create($params);
         $request->session()->flash('message', "Successfully created task");
         $request->session()->flash('success', true);
         $redirect = $request->get('redirect', false) != false ? $request->get('redirect') : 'tasks';
         return redirect()->route($redirect);
     }
     $request->session()->flash('message', "Method not allowed");
     return redirect('tasks');
 }
Ejemplo n.º 4
0
 protected function calculateBalance($groupedHours)
 {
     $total = 0;
     foreach ($groupedHours as $date => $arrayDays) {
         foreach ($arrayDays as $day) {
             $dayBalance = $this->calculateBalanceByDay($day);
             $groupedHours[$date]['working_hours'] = gmdate("H:i:s", $dayBalance);
             $groupedHours[$date]['balance'] = $this->getFinalBalanceByDay($dayBalance);
             $groupedHours[$date]['class'] = $dayBalance >= HoursControlModel::WORKING_HOURS_SECONDS ? 'success' : 'danger';
             $total += $dayBalance;
         }
     }
     $result['days'] = $groupedHours;
     $result['totalWorkedHours'] = Date::convertSecondsToTime($total);
     return $result;
 }
Ejemplo n.º 5
0
 protected function _initStatus()
 {
     $today = DateHelper::now();
     if ($today >= $this->_dateStart && $today <= $this->_dateEnd) {
         $this->_status = self::STATUS_CURRENT;
         $this->_daysElapsed = DateHelper::now()->format('d');
         $this->_daysLeft = $this->getDaysCount() - $this->_daysElapsed;
     } else {
         if ($today < $this->_dateStart) {
             $this->_status = self::STATUS_FUTURE;
             $this->_daysElapsed = 0;
             $this->_daysLeft = $this->getDaysCount();
         } else {
             $this->_status = self::STATUS_PAST;
             $this->_daysElapsed = $this->_dateEnd->format('d');
             $this->_daysLeft = 0;
         }
     }
 }
 public function reportAction(Request $request)
 {
     $hours = [];
     $startDate = Carbon::now()->firstOfMonth()->format('Y-m-d');
     $endDate = Carbon::now()->endOfMonth()->format('Y-m-d');
     if ($request->input('startDate') && $request->input('endDate')) {
         $startDate = Date::conversion($request->input('startDate'));
         $endDate = Date::conversion($request->input('endDate'));
         $service = new HoursControlService();
         $reports = new Reports();
         $hours = $service->getHoursByDate($startDate, $endDate);
         $hours['workingHours'] = $reports->getTotalWorkingHoursByDate($startDate, $endDate);
     }
     return view('hours-control.report', ['hours' => $hours, 'startDate' => Date::conversion($startDate), 'endDate' => Date::conversion($endDate)]);
 }
Ejemplo n.º 7
0
 public function __construct($data)
 {
     $this->data = (array) $data;
     $this->data['post_date'] = DateHelper::createDate($this->data['post_date']);
 }
Ejemplo n.º 8
0
 public function setIntervalCode($intervalCode)
 {
     if ($interval = DateHelper::decode($intervalCode)) {
         $this->interval = $this->createInterval(DateHelper::createDate($interval->from), DateHelper::createDate($interval->to));
     }
 }
Ejemplo n.º 9
0
<?php

use app\helpers\Date;
$date = new Date();
$year = date('Y');
$events = $date->getEvents($year);
$dates = $date->getAll($year);
?>
<div class="periods">
    <div class="year"><?php 
echo $year;
?>
</div>
    <div class="months">
        <ul>
            <?php 
foreach ($date->months as $id => $m) {
    ?>
                <li><a href="#" id="linkMonth<?php 
    echo $id + 1;
    ?>
"><?php 
    echo utf8_encode(substr(utf8_decode($m), 0, 3));
    ?>
</a></li>
            <?php 
}
?>
        </ul>
    </div>
    <div class="clear"></div>
Ejemplo n.º 10
0
 private function applyTimeConstraints($query, $mixed)
 {
     if ($mixed instanceof TimeInterval) {
         $query->whereBetween('post_date', [DateHelper::formatForSql($mixed->getStartDate()), DateHelper::formatForSql($mixed->getEndDate())]);
     } else {
         if ($mixed instanceof DateTime) {
             $query->where('post_date', '<=', DateHelper::formatForSql($mixed));
         }
     }
     return $query;
 }