public function sticker($id) { $vehicle = Vehicle::withTrashed()->find($id); if (Vehicle::vehicleStickerPrefix($id)) { $vehicle->sticker_prefix = Vehicle::vehicleStickerPrefix($id); } $registration = $vehicle->registrationTrashed; $vehicle['vehicles_class_name'] = Vehicle::vehicleClassName($id); $owners = $vehicle->owners; $authorizedDr = $vehicle->authorizedDrivers; $documents = $vehicle->documents; $insurance = $vehicle->insurance; $lien = $vehicle->lien; // BEGIN SETTING VEHICLE AND REGISTRATION STATUS /* * Vehicle Status ($registration->veh_status) * Vehicle is new = 1 * Vehicle is old and never transferred = 2 * Vehicle has been transferred = 3 * (And Not currently in use) * Vehicle is old and transferred = 4 * (But currently in use) */ /* * Registration Status ($registration->reg_status) * Sticker Never Generated = 1 * Sticker Expired = 2 */ $vehilceHistory = Vehicle::getVehicleHistory($id); $vehicleHistoryCount = count($vehilceHistory); $registrations_last_renewal = $registration->registrations_last_renewal; // VEHICLE IS NEVER TRANSFERRED AND CURRENTLY IN USE if ($vehicleHistoryCount == 1) { // STICKER HAS BEEN ISSUED BEFORE if ($registrations_last_renewal) { // VEHICLE IS OLD $registration->veh_status = 2; //BEGIN CHECKING IF ROAD TAX EXPIRED $curYear = date("Y"); $roadTaxYear = date("Y", strtotime($registrations_last_renewal)); // NEED TO REGISTER if ($curYear > $roadTaxYear) { $registration->reg_status = 2; } //END CHECKING IF ROAD TAX EXPIRED // STICKER REGISTRATION DATE $registration->sticker_reg_date = date("M dS, Y", strtotime($registrations_last_renewal)); // STICKER EXPIRY DATE $registration->expiry = "Dec 31st, " . date("Y", strtotime($registrations_last_renewal)); } else { $registration->veh_status = 1; $registration->reg_status = 1; // CHECK IF HAS PRE REGISTRATION FINES $vehicleVoilations = $vehicle->voilations; if ($vehicleVoilations->count()) { $vehicleVoilationsIds = $vehicleVoilations->lists('vehicle_fine_id'); $vehicleFines = VehicleFine::find($vehicleVoilationsIds)->sum('vehicle_fine_ammount'); } else { $vehicleFines = 0; } // DRIVER VOILATIONS $driverViolations = $vehicle->driverViolations; if ($driverViolations->count()) { $driverVoilationsIds = $driverViolations->lists('driver_fine_id'); $driverFines = DriverFine::find($driverVoilationsIds)->sum('driver_fine_ammount'); } else { $driverFines = 0; } $fines = $vehicleFines + $driverFines; } } else { $lastTransferredTo = end($vehilceHistory); // VEHICLE IS OLD, TRANSFERRED AND NOT CURRENTLY IN USE if ($lastTransferredTo != $id) { $registration->veh_status = 3; } else { $registration->veh_status = 4; // STICKER WAS ISSUED BEFORE if ($registrations_last_renewal) { //BEGIN CHECKING IF ROAD TAX EXPIRED $curYear = date("Y"); $roadTaxYear = date("Y", strtotime($registrations_last_renewal)); // NEED TO REGISTER if ($curYear > $roadTaxYear) { $registration->reg_status = 2; } //END CHECKING IF ROAD TAX EXPIRED // STICKER REGISTRATION DATE $registration->sticker_reg_date = date("M dS, Y", strtotime($registrations_last_renewal)); // STICKER EXPIRY DATE $registration->expiry = "Dec 31st, " . date("Y", strtotime($registrations_last_renewal)); } else { $registration->reg_status = 1; } } } $data = compact('registration', 'fines', 'vehicle', 'owners', 'authorizedDr', 'documents', 'insurance', 'lien'); return View::make('vehicle.sticker', $data); }