price > 0 ? true : false; break; case 'confirmation': return $booking->hasDocument('registration') > 0 ? true : false; break; case 'storno': return $booking->hasDocument('confirmation') > 0 ? true : false; break; case 'coupon': return $booking->hasDocument('confirmation') > 0 ? true : false; case 'voucher': return $booking->hasDocument('confirmation') > 0 ? true : false; case 'voucher_agency': return $booking->hasDocument('confirmation') > 0 ? true : false; } return false; } /* functions to make the html table for the booking documents */ public static function getFilesCount(){ return self::$files_count++; } public static function getBookingDocumentsHTMLTable($identifier, Booking $booking, $look = 'show'){ $ret = ""; $files = self::getBookingDocuments($identifier, $booking->id); if($files && $files->count() > 0){ $ret .= self::makeHTMLTable($files, $identifier, 'v3', $look); } $files = self::getV2BookingDocuments($identifier, $booking); if($files && $files->count() > 0){ $ret .= self::makeHTMLTable($files, $identifier, 'v2', $look); } return $ret; } public static function getBookingDocuments($identifier, $booking_id){ switch($identifier){ case 'registration': $files = BookingDocumentModel::where('booking_id', $booking_id)->where('identifier', 'registration')->get(); break; case 'confirmation': $files = BookingDocumentModel::where('booking_id', $booking_id)->where('identifier', 'confirmation')->get(); break; case 'storno': $files = null; //BookingDocumentModel::where('booking_id', $booking_id)->where('identifier', 'storno')->get(); break; case 'coupon': $files = null; //BookingDocumentModel::where('booking_id', $booking_id)->where('identifier', 'coupon')->get(); break; case 'voucher': $files = BookingDocumentModel::where('booking_id', $booking_id)->where('identifier', 'voucher')->get(); break; case 'voucher_agency': $files = BookingDocumentModel::where('booking_id', $booking_id)->where('identifier', 'voucher_agency')->get(); break; default: $files = null; } return $files; } public static function getV2BookingDocuments($identifier, Booking $booking){ switch($identifier){ case 'registration': $files = $booking->booking_applications; break; case 'confirmation': $files = $booking->booking_confirmations; break; case 'storno': $files = $booking->booking_stornos; break; case 'coupon': $files = $booking->coupons; break; case 'voucher': $files = $booking->booking_vouchers; break; case 'voucher_agency': $files = $booking->booking_voucher_agencys; break; default: $files = null; } return $files; } private static function makeHTMLTable($files, $identifier, $version, $look){ $ret = ""; foreach($files as $file){ ; if($version === 'v2'){ $file_details = self::getV2FileDetails($file, $identifier, $look); } if($version === 'v3'){ $file_details = self::getV3FileDetails($file, $identifier, $look); } if(isset($file_details)){ $ret .= ""; $ret .= "".self::getFilesCount().""; $ret .= ""; $ret .= ""; $ret .= " ".$file_details->name; $ret .= ""; $ret .= ""; $ret .= "".$file_details->cell.""; $ret .= "".$file_details->date.""; $ret .= ""; if($look === 'show'){ $ret .= ""; $ret .= ""; $ret .= ""; } if($look === 'mail'){ $ret .= "