/**
  * Show the board index for the user.
  *
  * @return Response
  */
 public function getContribute()
 {
     $devStart = new Carbon(static::$ContributeProjectStart);
     $devCarbon = new Carbon(static::$ContributePublicStart);
     $devTimeSum = 0;
     $devTimer = "0 hours";
     $donorGroups = Payment::getDonorGroups();
     $donorWeights = ['uber' => 25, 'plat' => 20, 'gold' => 15, 'silver' => 10, 'bronze' => 10];
     foreach ($donorGroups as $donorGroup) {
         foreach ($donorGroup as $donor) {
             // Add the amount to the dev timer.
             $devTimeSum += $donor->amount;
         }
     }
     // Determine the time in a literal string.
     $devHours = 0;
     $devDays = 0;
     $devInflation = static::$ContributeDevInflation;
     // This inflation factor will make the dev timer reflect off hours too, on the assumption of a 40 hour work week.
     $devTime = $devTimeSum / 100 / (double) env('CONTRIB_HOUR_COST', 10) * $devInflation;
     $devCarbon->addHours($devTime);
     $devDays = $devCarbon->diffInDays();
     $devHours = $devCarbon->diffInHours() - $devDays * 24;
     if ($devHours > 0 || $devDays > 0) {
         $devTimer = "";
         if ($devDays > 0) {
             if ($devDays != 1) {
                 $devTimer .= "{$devDays} days";
             } else {
                 $devTimer .= "{$devDays} day";
             }
             if ($devHours > 0) {
                 $devTimer .= " and ";
             }
         }
         if ($devHours > 0) {
             if ($devHours != 1) {
                 $devTimer .= "{$devHours} hours";
             } else {
                 $devTimer .= "{$devHours} hour";
             }
         }
     }
     return $this->view(static::VIEW_CONTRIBUTE, ["devCarbon" => $devCarbon, "devTimer" => $devTimer, "devStart" => $devStart, "donations" => $devTimeSum, "donors" => $donorGroups, "donorWeight" => $donorWeights]);
 }
Example #2
1
 public function show($id)
 {
     $member = Member::find($id);
     $birthDate = $member->birthday;
     $birthDate = explode("-", $birthDate);
     $member->age = Carbon::createFromDate($birthDate[0], $birthDate[1], $birthDate[2])->age;
     $meses = array("Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre");
     $dias = array("Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado");
     $currentdate = Carbon::today();
     $sumaAffiliations = $member->affiliations->sum('price');
     $affiliations = $member->affiliations;
     $affiliationActives = \App\Affiliation::orderBy('finalization', 'DEC')->where('member_id', $member->id)->where('finalization', '>=', $currentdate)->get();
     $affiliationInactives = \App\Affiliation::orderBy('finalization', 'DEC')->where('member_id', $member->id)->where('finalization', '<', $currentdate)->get();
     $member->affiliations = $affiliationActives;
     if ($affiliationActives->first() != null) {
         $memshipactiva = $affiliationActives->last();
         $initiation = new Carbon($memshipactiva->initiation);
         $finalization = new Carbon($memshipactiva->finalization);
         $corrido = $initiation->diffInDays($currentdate);
         if ($initiation->lt($currentdate)) {
             $diference = $initiation->diffInDays($finalization);
             $porcentaje = $corrido / $diference * 100;
         } else {
             $porcentaje = 0;
         }
         $memshipactiva->porcentaje = $porcentaje;
     } else {
         $memshipactiva = null;
     }
     $saldo = $sumaAffiliations - $member->payments->sum('amount');
     $member->saldo = $saldo;
     $member->sumaPagos = $member->payments->sum('amount');
     $member->sumaAffiliations = $sumaAffiliations;
     if ($member->sumaPagos == 0 and $sumaAffiliations == 0) {
         //no tiene pagos ni afiliaciones
         $member->difUltimoPago = -1;
     } elseif ($member->sumaPagos <= 0 and $sumaAffiliations > 0) {
         //no tiene pagos pero si tiene afiliaciones
         $fechaUltimoPago = \App\Affiliation::orderBy('created_at', 'asc')->where('member_id', $member->id)->first();
         $fechaUltimoPago = new Carbon($fechaUltimoPago->created_at);
         $difUltimoPago = $fechaUltimoPago->diffInDays($currentdate);
         $member->difUltimoPago = $difUltimoPago;
     } elseif ($member->sumaPagos > 0 and $sumaAffiliations > 0) {
         // tiene afiliaciones y pagos
         $fechaUltimoPago = new Carbon($member->payments->first()->created_at);
         $difUltimoPago = $fechaUltimoPago->diffInDays($currentdate);
         $member->difUltimoPago = $difUltimoPago;
     }
     return view('member.show', ['member' => $member, 'meses' => $meses, 'dias' => $dias, 'activa' => $memshipactiva, 'inactivas' => $affiliationInactives]);
 }
Example #3
0
 /**
  * Gets the number of days that a date range spans.
  *
  * This is not possible, for obvious reasons, on open ended or open start date ranges.
  *
  * @throws Exception
  *
  * @return int
  */
 public function days()
 {
     if ($this->isOpenEnded() || $this->isOpenStarted()) {
         throw new Exception('The number of days within a range cannot be calculated for ranges that are open ended or open started.');
     }
     return $this->after->diffInDays($this->before);
 }
 public function dateRange()
 {
     $start = new Carbon(Input::get('start'));
     $end = new Carbon(Input::get('end'));
     $diff = $start->diffInDays($end);
     if ($diff > 50) {
         Session::flash('warning', $diff . ' days of data may take a while to load.');
     }
     Session::put('start', $start);
     Session::put('end', $end);
 }
Example #5
0
 public function getProcessDaysAttribute()
 {
     $days = 0;
     if ($this->state === 'PR') {
         $dt = new Carbon($this->updated_at);
         $days = $dt->diffInDays($this->created_at);
     } else {
         $now = new Carbon();
         $days = $now->diffInDays($this->created_at);
     }
     return $days;
 }
Example #6
0
 public function proyectosempresa()
 {
     $proyectos = $this->user->proyectos;
     $now = Carbon::now();
     $i = 0;
     foreach ($proyectos as $proyecto) {
         $proyecto["pruebas"] = Prueba::where('proyecto_id', $proyecto["id"])->get();
         $proyectos[$i]["resultados"] = Resultado::where('proyecto_id', $proyecto["id"])->get();
         $created = new Carbon($proyecto["created_at"]);
         $last = $created->diffInDays($now);
         $i++;
     }
     $personal = Personal::where('user_id', $this->user->id)->get();
     if (count($proyectos) == 0) {
         $last = 10;
     }
     return view('proyectos', compact('proyectos', 'last', 'personal'));
 }
 /**
  * Show the form for creating a new resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function create($member_id)
 {
     $memberships = Membership::all()->lists('description', 'id');
     $membershipsAll = Membership::all();
     $member = Member::find($member_id);
     $rangeArray = array();
     $rangeDates = \App\Affiliation::orderBy('finalization', 'DEC')->where('member_id', $member_id)->where('finalization', '>=', Carbon::now())->get();
     foreach ($rangeDates as $range) {
         $initiationRange = new Carbon($range->initiation);
         $finalizationRange = new Carbon($range->finalization);
         $diference = $initiationRange->diffInDays($finalizationRange);
         for ($i = 0; $i <= $diference; $i++) {
             array_unshift($rangeArray, "'" . $initiationRange->copy()->format('Y-m-d') . "'");
             $initiationRange->addDay();
         }
     }
     return view('affiliation.create')->with('memberships', $memberships)->with('membershipsAll', $membershipsAll)->with('member', $member)->with('affiliationRange', $rangeArray);
 }
Example #8
0
 /**
  * Saves new vacation entry to database and returns status in json response
  *
  * @TODO: move logic out of controller
  *
  * @param Request $request
  * @return array
  */
 public function save(Request $request)
 {
     $employee = $this->employee->find($request->input('employee_id'));
     $vacationStart = new Carbon($request->input('start'));
     $vacationEnd = new Carbon($request->input('end'));
     $duration = $vacationStart->diffInDays($vacationEnd);
     if ($duration > $employee->vacationsLeft || $vacationEnd <= $vacationStart) {
         return ['status' => 403];
     }
     $overlapingVacations = $employee->vacations()->where('end', '>', $vacationStart)->where('start', '<', $vacationEnd)->get();
     if (!$overlapingVacations->isEmpty()) {
         return ['status' => 403];
     }
     $vacation = $this->vacation->create($request->all());
     $vacation->duration = $duration;
     if ($vacation->save()) {
         return ['status' => 200];
     }
     return ['status' => 500];
 }
 /**
  * @param Request $request
  */
 public function dateRange(Request $request)
 {
     $start = new Carbon($request->get('start'));
     $end = new Carbon($request->get('end'));
     $label = $request->get('label');
     $isCustomRange = false;
     Log::debug('Received dateRange', ['start' => $request->get('start'), 'end' => $request->get('end'), 'label' => $request->get('label')]);
     // check if the label is "everything" or "Custom range" which will betray
     // a possible problem with the budgets.
     if ($label === strval(trans('firefly.everything')) || $label === strval(trans('firefly.customRange'))) {
         $isCustomRange = true;
         Log::debug('Range is now marked as "custom".');
     }
     $diff = $start->diffInDays($end);
     if ($diff > 50) {
         Session::flash('warning', strval(trans('firefly.warning_much_data', ['days' => $diff])));
     }
     Session::put('is_custom_range', $isCustomRange);
     Session::put('start', $start);
     Session::put('end', $end);
 }
 /**
  * Statistics for how long the repository has been active
  *
  * @return array
  */
 public function activeFor()
 {
     $firstCommitDate = new Carbon($this->repository->getFirstCommitDate());
     $lastCommitDate = new Carbon($this->repository->getLastCommitDate());
     return array('title' => 'Active for', 'value' => number_format($firstCommitDate->diffInDays($lastCommitDate)) . " days");
 }
 /**
  * Returns an array with the current date and the date minus the number of days specified.
  *
  * @param array $urls
  * @param Carbon $startDate
  * @param Carbon $endDate
  *
  * @return array
  */
 private function getEmptyDateRangeData($urls, $startDate, $endDate)
 {
     $data = [];
     // Difference in days
     $numberOfDays = $startDate->diffInDays($endDate);
     // Create date range array
     $range = [];
     for ($i = 0; $i < $numberOfDays; $i++) {
         $day = $startDate->addDay()->format('U') * 1000;
         $range[$day] = 0;
     }
     // Add ranges to data
     foreach ($urls as $url) {
         $data[$url] = $range;
     }
     return $data;
 }
Example #12
0
 public function financingSuccess()
 {
     $financeArray = Input::get('financeArray');
     $financingDate = Input::get('financingDate');
     $fundingDate = new Carbon($financingDate);
     $lastBill = Bill::orderBy('bill_date', 'desc')->first();
     if (count($lastBill) > 0) {
         $lastBillCarbon = new Carbon($lastBill->bill_date);
         $diffBillsDate = $lastBillCarbon->diffInDays($fundingDate, false);
     } else {
         $diffBillsDate = 1;
     }
     $messageArray = [];
     foreach ($financeArray as $key) {
         $finance = Finance::find($key);
         $registryDate = new Carbon($finance->date_of_registry);
         $diffDate = $registryDate->diffInDays($fundingDate, false);
         if ($diffBillsDate > 0) {
             if ($diffDate >= 0) {
                 if ($finance->type_of_funding === 'Первый платеж') {
                     $deliveryToFinances = $finance->deliveryToFinance;
                     //проверка лимита
                     $relation = $deliveryToFinances->first()->delivery->relation;
                     $usedLimit = 0;
                     $usedLimit = $relation->deliveries()->where('state', false)->where('status', 'Профинансирована')->sum('balance_owed');
                     $limit = $relation->limit;
                     if ($limit) {
                         $limitValue = $limit->value;
                         $freeLimit = $limitValue - $usedLimit;
                         if ($finance->sum <= $freeLimit) {
                             $finance->date_of_funding = $financingDate;
                             $finance->status = 'Подтверждено';
                             if ($finance->save()) {
                                 foreach ($deliveryToFinances as $deliveryToFinance) {
                                     $delivery = $deliveryToFinance->delivery;
                                     $delivery->date_of_funding = $financingDate;
                                     $delivery->status = 'Профинансирована';
                                     // $delivery->stop_commission = true;
                                     $delivery->save();
                                 }
                             }
                             $callback = 'success';
                             $messageShot = 'Успешно!';
                             $message = 'Финансирование для клиента ' . $finance->client . ' подтверждено';
                             array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot, 'type' => true, 'data' => $key]);
                         } else {
                             $callback = 'danger';
                             $messageShot = 'Ошибка!';
                             $message = 'Превышен лимит для связи. Клиент: ' . $relation->client->name . ' и Дебитор: ' . $relation->debtor->name;
                             array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot]);
                         }
                     } else {
                         $callback = 'danger';
                         $messageShot = 'Ошибка!';
                         $message = 'Лимит для связи не найден. Клиент: ' . $relation->client->name . ' и Дебитор: ' . $relation->debtor->name;
                         array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot]);
                     }
                 } else {
                     $finance->date_of_funding = $financingDate;
                     $finance->status = 'Подтверждено';
                     $finance->save();
                     $callback = 'success';
                     $messageShot = 'Успешно!';
                     $message = 'Финансирование для клиента ' . $finance->client . ' подтверждено';
                     array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot, 'type' => false]);
                 }
             } else {
                 $callback = 'danger';
                 $messageShot = 'Ошибка!';
                 $message = 'Дата реестра превышает дату финансирования';
                 array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot]);
             }
         } else {
             $callback = 'danger';
             $messageShot = 'Ошибка!';
             $message = 'Финансирование поставки в закрытом месяце- запрещено!';
             array_push($messageArray, ['callback' => $callback, 'message' => $message, 'message_shot' => $messageShot]);
         }
     }
     return $messageArray;
 }
Example #13
0
 /**
  * Calcula o fator vencimento.
  * 
  * @param  Carbon $data
  * @return integer
  */
 public static function fatorVencimento(Carbon $data)
 {
     $dataBase = new Carbon("1997-10-07");
     return $data->diffInDays($dataBase);
 }
Example #14
0
 public function recalculateDailyCharge($repayment, $deliveryId)
 {
     $allDailyArray = [];
     $nds = 18;
     $dateNow = new Carbon(date('Y-m-d'));
     $dateOfRepayment = new Carbon($repayment->date);
     $fixedCharge = false;
     $delivery = Delivery::find($deliveryId);
     $relation = $delivery->relation;
     //связь
     $tariff = $relation->tariff;
     //тарифы
     $dateOfRepaymentClone = clone $dateOfRepayment;
     $dateOfFunding = new Carbon($delivery->date_of_funding);
     $percent_commission = $tariff->commissions->where('type', 'finance')->first();
     $udz_commission = $tariff->commissions->where('type', 'udz')->first();
     $penalty_commission = $tariff->commissions->where('type', 'peni')->first();
     $fixed_commission = $tariff->commissions()->where('type', 'document')->first();
     $dateOfRecourse = new Carbon($delivery->date_of_recourse);
     $dateOfRepaymentDiff = $dateOfRepayment->diffInDays($dateNow, false);
     $dateOfRepaymentFundingDiff = $dateOfFunding->diffInDays($dateOfRepayment, false);
     if ($dateOfRepaymentFundingDiff <= 0) {
         $fixedCharge = true;
     }
     for ($i = 0; $i < $dateOfRepaymentDiff; $i++) {
         $dailyArray = [];
         $dateNowVar = $dateOfRepaymentClone->addDays(1);
         $dateOfFundingDiffTest = $dateOfFunding->diffInDays($dateNowVar, false);
         $daysInYear = date("L", mktime(0, 0, 0, 7, 7, $dateNowVar->year)) ? 366 : 365;
         $actualDeferment = $dateOfRecourse->diffInDays($dateNowVar, false);
         //Фактическая просрочка
         $dailyFixed = 0;
         $dailyFixedNds = 0;
         if ($fixedCharge == true && $i == 0) {
             if ($fixed_commission) {
                 $fixed_charge_w_nds = $fixed_commission->commission_value;
                 $dailyFixed = $fixed_charge_w_nds;
                 if ($fixed_commission->nds == true) {
                     $fixed_charge_nds = $fixed_charge_w_nds / 100.0 * $nds;
                     $dailyFixedNds = $fixed_charge_nds;
                 }
             }
         }
         $dailyPercent = 0;
         $dailyPercentNds = 0;
         //        //Процент
         if ($percent_commission) {
             //Годовые/дни
             $handle = $percent_commission->additional_sum;
             if ($percent_commission->rate_stitching == true) {
                 $percent = $percent_commission->commission_value / $daysInYear;
             } else {
                 $percent = $percent_commission->commission_value;
             }
             //От финансирование либо накладной
             if ($handle == true) {
                 $dailyPercent = $delivery->balance_owed / 100.0 * $percent;
             } else {
                 $dailyPercent = $delivery->remainder_of_the_debt_first_payment / 100.0 * $percent;
             }
             if ($percent_commission->nds == true) {
                 $dailyPercentNds = $dailyPercent / 100.0 * $nds;
             }
         }
         $dailyUdz = 0;
         $dailyUdzNds = 0;
         if ($udz_commission) {
             $dayOrYear = $udz_commission->rate_stitching;
             //Нахождение разницы
             $handle = $udz_commission->additional_sum;
             //проверка накладной и финансирования
             if ($handle == true) {
                 $waybillOrFirstPayment = $delivery->balance_owed;
             } else {
                 $waybillOrFirstPayment = $delivery->remainder_of_the_debt_first_payment;
             }
             $rage = $udz_commission->commissionsRages()->where('min', '<=', $dateOfFundingDiffTest)->where(function ($query) use($dateOfFundingDiffTest) {
                 $query->where('max', '>=', $dateOfFundingDiffTest)->orWhere('max', '=', 0);
             })->first();
             if ($rage) {
                 if ($dayOrYear == true) {
                     $udz = $rage->value / $daysInYear;
                 } else {
                     $udz = $rage->value;
                 }
                 $dailyUdz = $waybillOrFirstPayment / 100.0 * $udz;
                 //Ндс
                 if ($udz_commission->nds == true) {
                     $dailyUdzNds = $dailyUdz / 100.0 * $nds;
                 }
             }
         } else {
             // var_dump('Коммиссии не найдено');
         }
         // //         //Пеня за просрочку
         $dailyDeferment = 0;
         $dailyDefermentNds = 0;
         if ($penalty_commission) {
             $dayOrYear = $penalty_commission->rate_stitching;
             //Нахождение разницы
             if ($actualDeferment > 0) {
                 $rage = $penalty_commission->commissionsRages()->where('min', '<=', $actualDeferment)->where(function ($query) use($actualDeferment) {
                     $query->where('max', '>=', $actualDeferment)->orWhere('max', '=', 0);
                 })->first();
                 if ($rage) {
                     $handle = $penalty_commission->additional_sum;
                     //проверка накладной и финансирования
                     if ($handle == true) {
                         $waybillOrFirstPayment = $delivery->balance_owed;
                     } else {
                         $waybillOrFirstPayment = $delivery->remainder_of_the_debt_first_payment;
                     }
                     if ($dayOrYear == true) {
                         $penalty = $rage->value / $daysInYear;
                     } else {
                         $penalty = $rage->value;
                     }
                     $dailyDeferment = $waybillOrFirstPayment / 100.0 * $penalty;
                     //Ндс
                     if ($penalty_commission->nds == true) {
                         $dailyDefermentNds = $dailyDeferment / 100.0 * $nds;
                     }
                 }
                 //диапазон
             }
             //просрочка меньше нуля
         }
         $daily_without_nds = $dailyFixed + $dailyPercent + $dailyUdz + $dailyDeferment;
         $daily_nds = $dailyFixedNds + $dailyPercentNds + $dailyUdzNds + $dailyDefermentNds;
         $daily_with_nds = $daily_without_nds + $daily_nds;
         $dailyArray = ['dailyFixed' => $dailyFixed, 'dailyFixedNds' => $dailyFixedNds, 'dailyPercent' => $dailyPercent, 'dailyPercentNds' => $dailyPercentNds, 'dailyUdz' => $dailyUdz, 'dailyUdzNds' => $dailyUdzNds, 'dailyDeferment' => $dailyDeferment, 'dailyDefermentNds' => $dailyDefermentNds, 'dailyWithoutNds' => $daily_without_nds, 'dailyNds' => $daily_nds, 'dailyWithNds' => $daily_with_nds, 'dateNow' => $dateNowVar->format('Y-m-d')];
         $this->createDailyCharge($dailyArray, $delivery->id, $repayment->id, false);
     }
     //цикл
 }
Example #15
0
 public function scopeCalcDaysOpen($query, $created)
 {
     $created = new Carbon($created);
     $now = Carbon::now();
     if ($created->diff($now, false)->days < 0) {
         return 1;
     } else {
         //return "?";
         //return $created->diffInDays($now, false);
         return $created->diff($now, false)->days < 1 ? '1' : $created->diffInDays($now);
     }
     //return ($created->diff($now, false)->days < 0)	? '1' : $created->diffInDays($now);
 }
Example #16
0
 public function getDeadLineDifference(Info $info, Carbon $f_deadline, Carbon $l_deadline)
 {
     // Get first and last deadlines difference in days
     $days = $f_deadline->diffInDays($l_deadline);
     $c = 0;
     for ($m = 0; $m < $days; $m++) {
         $current = $f_deadline->addDay(1);
         // If the day after first deadline is not Saturday or Sunday, count as 1 working day
         if ($current->dayOfWeek != Carbon::SATURDAY && $current->dayOfWeek != Carbon::SUNDAY) {
             $c += 1;
         }
     }
     return $c;
 }
Example #17
0
 public function sendEmailContact(Request $request)
 {
     $email = userAdmin::where('identidad', $request->identidad)->first();
     $ent = entidadTuristica::where('rif', $request->identidad)->first();
     $camas = new camas();
     $hab = new habitacion();
     $email = $email->email;
     // Buscando habitaciones para el email de respaldo de la persona
     // todo este codigo deberia estar en una función aparte -- mejorar modularidad en codigo para futuros proyectos.
     $legalMessage = "";
     $f = "";
     $f2 = "";
     if ($ent->tipoentidad == "Hotel") {
         $habitaciones = habitacion::where('identidad', $request->identidad)->get();
         $camas = $camas->camasPorHabitacion($habitaciones);
         $habitaciones = $hab->serviciosOrdenados($habitaciones);
         $desde = Carbon::now();
         $desdeInicio = Carbon::create($desde->year, $desde->month, 1);
         $desdeFin = Carbon::create($desde->year, $desde->month, $desde->daysInMonth);
         $desdeInicio = $desdeInicio->toDateString();
         $desdeFin = $desdeFin->toDateString();
         $dias = 1;
         $legalMessage = "NOTA: Las tarifas son validas desde el " . $desdeInicio . " hasta el " . $desdeFin . " y las mismas estan sujetas a cambios.";
         if (Session::has('fecha')) {
             $fecha = explode(" - ", Session::get('fecha'));
             $f = new Carbon($fecha[0]);
             $f2 = new Carbon($fecha[1]);
             $dias = $f->diffInDays($f2);
             $query = " SELECT idperfilhabitacion FROM habitacionesperfil WHERE id NOT IN ( SELECT disponibilidad.idhabitacion from disponibilidad WHERE (estado = 'Habilitado')\n                AND ((disponibilidad.fecha_inicio BETWEEN '" . $fecha[0] . "' AND '" . $fecha[1] . "')\n                OR (disponibilidad.fecha_fin BETWEEN '" . $fecha[0] . "' AND '" . $fecha[1] . "')\n                OR ( ('" . $fecha[0] . "' >= disponibilidad.fecha_inicio) AND ('" . $fecha[1] . "' <= disponibilidad.fecha_fin) ) ) ) ";
             $search = DB::select(DB::raw($query));
             $arraySearch = [];
             foreach ($search as $s) {
                 array_push($arraySearch, $s->idperfilhabitacion);
             }
             foreach ($habitaciones as $h) {
                 $h['disponible'] = in_array($h->id, $arraySearch);
             }
         }
         foreach ($habitaciones as $h) {
             $h['total'] = $dias * $h['tarifa'];
         }
     } else {
         $habitaciones = null;
     }
     $data = ['nombre' => $request->nombre, "email" => $request->email, "telefono" => $request->telefono, "mensaje" => $request->mensaje];
     $data2 = ['habitaciones' => $habitaciones, 'legalMessage' => $legalMessage, 'nombreEntidad' => $ent->nombre, 'f' => $f->toDateString(), 'f2' => $f2->toDateString()];
     $response;
     $statusCode;
     try {
         Mail::send('emails.contacto', $data, function ($message) use($email) {
             $message->from(env('MAIL_USERNAME'), 'AppHoteles');
             $message->subject('Contacto - AppHoteles');
             // Aqui iria el titulo...
             $message->to($email);
         });
         Mail::send('emails.usuarioContacto', $data2, function ($message) use($request) {
             $message->from(env('MAIL_USERNAME'), 'AppHoteles');
             $message->subject('Contacto - AppHoteles');
             // Aqui iria el titulo...
             $message->to($request->email);
         });
         $response = ['success' => true, 'message' => 'Email enviado.'];
         $statusCode = 200;
     } catch (Exception $e) {
         $response = ["error" => $e->getMessage()];
         $statusCode = 400;
     } finally {
         return Response::json($response, $statusCode);
     }
 }
 public function setDeliveries($dateNowVar)
 {
     $deliveries = Delivery::where('state', false)->get();
     foreach ($deliveries as $delivery) {
         //Сегодняшнее число
         $dateOfRecourse = new Carbon($delivery->date_of_recourse);
         $actualDeferment = $dateOfRecourse->diffInDays($dateNowVar, false);
         //Фактическая просрочка
         $delivery->the_actual_deferment = $actualDeferment;
         $delivery->save();
     }
 }
Example #19
0
<?php

require_once 'vendor/autoload.php';
use Carbon\Carbon;
use Citco\Carbon as CitcoCarbon;
use CarbonExt\FiscalYear\Calculator;
// Object Instantiation
$brisbane = new Carbon('2015-12-01', 'Australia/Brisbane');
$newYorkCity = new Carbon('2015-12-01', 'America/New_York');
$dtBerlin = new Carbon('2015-12-01', 'Europe/Berlin');
$outputString = "Time difference between %s & %s: %s hours.\n";
// Date difference
printf($outputString, "Berlin", "Brisbane, Australia", $dtBerlin->diffInHours($brisbane, false));
printf($outputString, "Berlin", "New York City, America", $dtBerlin->diffInHours($newYorkCity, false));
$septEighteen2014 = Carbon::createFromDate(2014, 9, 18, $dtBerlin->getTimezone());
printf("difference between now and %s in \n\thours: %d, \n\tdays: %d, \n\tweeks: %d, \n\tweekend days: %d, \n\tweek days: %s, \n\thuman readable: %s\n", $septEighteen2014->toFormattedDateString(), $dtBerlin->diffInHours($septEighteen2014), $dtBerlin->diffInDays($septEighteen2014), $dtBerlin->diffInWeeks($septEighteen2014), $dtBerlin->diffInWeekendDays($septEighteen2014), $dtBerlin->diffInWeekDays($septEighteen2014), $dtBerlin->diffForHumans($septEighteen2014));
// Date formatting
echo $dtBerlin->toDateString() . "\n";
echo $dtBerlin->toFormattedDateString() . "\n";
echo $dtBerlin->toTimeString() . "\n";
echo $dtBerlin->toDateTimeString() . "\n";
echo $dtBerlin->toDayDateTimeString() . "\n";
echo $dtBerlin->toRfc1036String() . "\n";
echo $dtBerlin->toAtomString() . "\n";
echo $dtBerlin->toCookieString() . "\n";
echo $dtBerlin->toRssString() . "\n";
$dtBerlin->setToStringFormat('l jS \\of F Y');
echo $dtBerlin . "\n";
echo (int) $dtBerlin->isLeapYear() . "\n";
// is* range of functions test
printf("Is yesterday? %s\n", $dtBerlin->isYesterday() ? "yes" : "no");
 /**
  * Update the specified transaction in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id)
 {
     $transaction = Transaction::find($id);
     $transactions = $transaction->getRecurringTransactions;
     $validator = Validator::make($data = Input::all(), Transaction::$rules);
     if ($validator->fails()) {
         $alert[] = ['class' => 'alert-danger', 'message' => '<strong><i class="fa fa-warning"></i></strong> Erro!'];
         Session::flash('alerts', $alert);
         return Redirect::back()->withErrors($validator)->withInput();
     }
     // DONE (bug fix)
     if (isset($data['done']) and !empty($data['done'])) {
         $data['done'] = 1;
     } else {
         $data['done'] = 0;
     }
     // AMOUNT Format
     if (!isset($data['amount'])) {
         $data['amount'] = $transaction->amount;
     } else {
         $data['amount'] = number_format($data['amount'], '2', '.', '');
         // $data['amount'] = str_replace('.', '', $data['amount'] );
         // $data['amount'] = str_replace(',', '.', $data['amount'] );
         // $data['amount'] = str_replace('-', '', $data['amount'] );	// TIRA O "-"
     }
     if ($data['type'] == 'despesa') {
         if (@$data['amount'] > 0) {
             $data['amount'] = 0 - $data['amount'];
             // Deixa o número negativo
         }
     }
     /**
      * 	APLLY CHANGES TO...
      */
     // CATEGORIA
     $category = Category::where('name', '=', @$data['category'])->first();
     if (!$category) {
         // cria se não existir
         $category = Category::create(['name' => isset($data['category']) ? ucfirst($data['category']) : "", 'owner_type' => 'transaction']);
     }
     $data['apply_changes_to'] = isset($data['apply_changes_to']) ? $data['apply_changes_to'] : 'this';
     switch ($data['apply_changes_to']) {
         case 'next':
             /**
              * SOMENTE PRÓXIMOS
              * @var [type]
              */
             $transactions = $transactions->filter(function ($t) use($transaction) {
                 if ($t->date >= $transaction->date) {
                     return $t;
                 }
             });
             break;
         case 'unpaid':
             $transactions = $transactions->filter(function ($t) use($transaction) {
                 if ($t->done != 1) {
                     return $t;
                 }
             });
             break;
         case 'all':
             break;
         default:
             // THIS
             $transactions = $transactions->filter(function ($t) use($transaction) {
                 if ($t->id == $transaction->id) {
                     return $t;
                 }
             });
             // IF NO RECURRING
             $transaction->description = $data['description'];
             $transaction->amount = $data['amount'];
             $transaction->date = $data['date'];
             $transaction->type = $data['type'];
             $transaction->done = $data['done'];
             $transaction->category_id = $category->id;
             $transaction->save();
             break;
     }
     // echo "<pre>Data:";
     // print_r($data);
     // echo "</pre>";
     // echo "<pre>Current transaction:";
     // print_r($transaction->toArray());
     // echo "</pre>";
     // echo "<pre>Alterar:";
     // print_r($transactions->toArray());
     // echo "</pre>";
     // exit;
     /**
      *  APLICA ALTERAÇÔES EM TODOS ITENS JA FILTRADOS
      */
     $transaction_date = new Carbon($transaction->date);
     $new_date = new Carbon($data['date']);
     $diff_in_days = $transaction_date->diffInDays($new_date, false);
     foreach ($transactions as $t) {
         $t->description = $data['description'];
         $t->amount = $data['amount'];
         $t->type = $data['type'];
         $t->done = $data['done'];
         $t->category_id = $category->id;
         $t->date = (new Carbon($t->date))->addDays($diff_in_days)->format('Y-m-d');
         $t->recurring_times = $transactions->count();
         $t->category_id = $category->id;
         $t->save();
     }
     $alert[] = ['class' => 'alert-success', 'message' => '<strong><i class="fa fa-check"></i></strong> Lançamento atualizado!'];
     Session::flash('alerts', $alert);
     return Redirect::to(URL::previous());
 }
 /**
  * Get the difference between start and end dates of the period in days.
  *
  * @return int
  */
 public function lengthInDays()
 {
     return $this->startDate->diffInDays($this->endDate);
 }
Example #22
-1
 public static function date(Carbon $date)
 {
     if ($date->diffInDays(Carbon::now()) < 7) {
         return $date->diffForHumans();
     } else {
         return $date->toFormattedDateString();
     }
 }
Example #23
-3
 public function getProfile($userid)
 {
     $user = User::find($userid);
     if (count($user) >= 1) {
         $updated = new Carbon($user->updated_at);
         $now = Carbon::now();
         if ($updated->diff($now)->m < 1) {
             $lastOnline = "Last seen less than a minute ago";
         } elseif ($updated->diff($now)->h < 1) {
             $lastOnline = $updated->diffInMinutes($now) > 1 ? sprintf("Last seen %d minutes ago", $updated->diffInMinutes($now)) : sprintf("Last seen %d minute ago", $updated->diffInMinutes($now));
         } elseif ($updated->diff($now)->d < 1) {
             $lastOnline = $updated->diffInHours($now) > 1 ? sprintf("Last seen %d hours ago", $updated->diffInHours($now)) : sprintf("Last seen %d hour ago", $updated->diffInHours($now));
         } elseif ($updated->diff($now)->d < 7) {
             $lastOnline = $updated->diffInDays($now) > 1 ? sprintf("Last seen %d days ago", $updated->diffInDays($now)) : sprintf("Last seen %d day ago", $updated->diffInDays($now));
         } elseif ($updated->diff($now)->m < 1) {
             $lastOnline = $updated->diffInWeeks($now) > 1 ? sprintf("Last seen %d weeks ago", $updated->diffInWeeks($now)) : sprintf("Last seen %d week ago", $updated->diffInWeeks($now));
         } elseif ($updated->diff($now)->y < 1) {
             $lastOnline = $updated->diffInMonths($now) > 1 ? sprintf("Last seen %d months ago", $updated->diffInMonths($now)) : sprintf("Last seen %d month ago", $updated->diffInMonths($now));
         } else {
             $lastOnline = $updated->diffInYears($now) > 1 ? sprintf("Last seen %d years ago", $updated->diffInYears($now)) : sprintf("Last seen %d year ago", $updated->diffInYears($now));
         }
         return view('dashboard.userProfile', ['user' => $user, 'lastOnline' => $lastOnline]);
     } else {
         return view('dashboard.userProfile');
     }
 }