Compare commits
	
		
			3 Commits
		
	
	
		
			#152-dashb
			...
			9dc98d386c
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 9dc98d386c | |||
| 0040dc47a5 | |||
| 4516df29d9 | 
| @@ -67,3 +67,9 @@ SLACK_ENABLED=true | ||||
| SLACK_CLIENT_TOKEN= | ||||
| SLACK_SIGNING_SECRET= | ||||
| SLACK_DEFAULT_CHANNEL="#general" | ||||
|  | ||||
| HEROKU_RELEASE_VERSION=v01 | ||||
| HEROKU_SLUG_DESCRIPTION="Dev 643f546" | ||||
| HEROKU_RELEASE_CREATED_AT=2022-07-04T18:05:46Z | ||||
| HEROKU_SLUG_COMMIT=643f546142b8a2db342f0ae46f01e61dce03e97c | ||||
| GITHUB_REPO_URL=https://github.com/blumilksoftware/toby/ | ||||
|   | ||||
| @@ -25,6 +25,7 @@ class HandleInertiaRequests extends Middleware | ||||
|             "flash" => $this->getFlashData($request), | ||||
|             "years" => $this->getYearsData($request), | ||||
|             "vacationRequestsCount" => $this->getVacationRequestsCount($request), | ||||
|             "deployInformation" => $this->getDeployInformation(), | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
| @@ -71,4 +72,15 @@ class HandleInertiaRequests extends Middleware | ||||
|             ->count() | ||||
|         : null; | ||||
|     } | ||||
|  | ||||
|     protected function getDeployInformation(): Closure | ||||
|     { | ||||
|         return fn() => [ | ||||
|             "release_version" => config("heroku.release_version"), | ||||
|             "slug_description" => config("heroku.slug_description"), | ||||
|             "release_created_at" => config("heroku.release_created_at"), | ||||
|             "slug_commit" => config("heroku.slug_commit"), | ||||
|             "github_url" => preg_replace("/\/$/i", "", config("heroku.github_url", "")), | ||||
|         ]; | ||||
|     } | ||||
| } | ||||
|   | ||||
							
								
								
									
										11
									
								
								config/heroku.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								config/heroku.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | ||||
| <?php | ||||
|  | ||||
| declare(strict_types=1); | ||||
|  | ||||
| return [ | ||||
|     "release_version" => env("HEROKU_RELEASE_VERSION"), | ||||
|     "slug_description" => env("HEROKU_SLUG_DESCRIPTION"), | ||||
|     "release_created_at" => env("HEROKU_RELEASE_CREATED_AT"), | ||||
|     "slug_commit" => env("HEROKU_SLUG_COMMIT"), | ||||
|     "github_url" => env("GITHUB_REPO_URL"), | ||||
| ]; | ||||
							
								
								
									
										67
									
								
								resources/js/Shared/DeployInfo.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								resources/js/Shared/DeployInfo.vue
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,67 @@ | ||||
| <template> | ||||
|   <div | ||||
|     :class="{ 'flex-col': isVertical(), 'flex-row': isHorizontal() }" | ||||
|     class="min-w-full p-4 text-xs text-gray-500 flex gap-x-1" | ||||
|   > | ||||
|     <p class="flex flex-row gap-x-1"> | ||||
|       <strong>Wydanie:</strong> | ||||
|       <a | ||||
|         v-if="deployInformation.github_url" | ||||
|         class="text-blumilk-600 hover:underline hover:text-blumilk-500" | ||||
|         :href="`${deployInformation.github_url}/commit/${deployInformation.slug_commit}`" | ||||
|         target="_blank" | ||||
|         rel="noopener nofollow noreferrer" | ||||
|         :title="`Commit: ${deployInformation.slug_commit ?? 'unset'}`" | ||||
|       > | ||||
|         {{ deployInformation.slug_description ?? 'unset' }} ({{ deployInformation.release_version }}) | ||||
|       </a> | ||||
|       <span | ||||
|         v-else | ||||
|         :title="`Commit: ${deployInformation.slug_commit ?? 'unset'}`" | ||||
|       > | ||||
|         {{ deployInformation.slug_description ?? 'unset' }} ({{ deployInformation.release_version ?? 'unset' }}) | ||||
|       </span> | ||||
|     </p> | ||||
|     <p | ||||
|       v-if="deployInformation.release_created_at" | ||||
|       class="flex flex-row gap-x-1" | ||||
|       :class="{ 'border-l-2 border-gray-300 pl-1': isHorizontal() }" | ||||
|     > | ||||
|       <strong>Data wydania:</strong> | ||||
|       <span>{{ DateTime.fromISO(deployInformation.release_created_at).toLocaleString(DateTime.DATETIME_SHORT) }}</span> | ||||
|     </p> | ||||
|     <p | ||||
|       v-if="deployInformation.github_url" | ||||
|       :class="{ 'border-l-2 border-gray-300 pl-1': isHorizontal(), 'flex flex-row gap-x-1': isVertical() }" | ||||
|     > | ||||
|       <strong v-if="isVertical()">Repozytorium:</strong> | ||||
|       <a | ||||
|         v-if="deployInformation.github_url" | ||||
|         class="text-blumilk-600 hover:underline hover:text-blumilk-500" | ||||
|         :href="deployInformation.github_url" | ||||
|         target="_blank" | ||||
|         rel="noopener nofollow noreferrer" | ||||
|       >GitHub</a> | ||||
|     </p> | ||||
|   </div> | ||||
| </template> | ||||
|  | ||||
| <script setup> | ||||
| import { DateTime } from 'luxon' | ||||
|  | ||||
| let props = defineProps({ | ||||
|   deployInformation: Object, | ||||
|   layout: { | ||||
|     type: String, | ||||
|     default: 'horizontal', | ||||
|   }, | ||||
| }) | ||||
|  | ||||
| function isVertical() { | ||||
|   return props.layout === 'vertical' | ||||
| } | ||||
|  | ||||
| function isHorizontal() { | ||||
|   return props.layout === 'horizontal' | ||||
| } | ||||
| </script> | ||||
| @@ -9,6 +9,9 @@ | ||||
|       <div class="lg:px-4"> | ||||
|         <slot /> | ||||
|       </div> | ||||
|       <DeployInfo | ||||
|         :deploy-information="deployInformation" | ||||
|       /> | ||||
|     </main> | ||||
|   </div> | ||||
| </template> | ||||
| @@ -17,12 +20,14 @@ | ||||
| import MainMenu from '@/Shared/MainMenu' | ||||
| import { useToast } from 'vue-toastification' | ||||
| import { watch } from 'vue' | ||||
| import DeployInfo from '@/Shared/DeployInfo' | ||||
|  | ||||
| const props = defineProps({ | ||||
|   flash: Object, | ||||
|   auth: Object, | ||||
|   years: Object, | ||||
|   vacationRequestsCount: Number, | ||||
|   deployInformation: Object, | ||||
| }) | ||||
|  | ||||
| const toast = useToast() | ||||
|   | ||||
| @@ -1,5 +1,18 @@ | ||||
| <template> | ||||
|   <div class="flex flex-col justify-center py-12 min-h-screen bg-blumilk-25 sm:px-6 lg:px-8"> | ||||
|   <div class="relative flex flex-col justify-center py-12 min-h-screen bg-blumilk-25 sm:px-6 lg:px-8"> | ||||
|     <slot /> | ||||
|     <DeployInfo | ||||
|       :deploy-information="deployInformation" | ||||
|       layout="vertical" | ||||
|       class="absolute right-0 bottom-0" | ||||
|     /> | ||||
|   </div> | ||||
| </template> | ||||
|  | ||||
| <script setup> | ||||
| import DeployInfo from '@/Shared/DeployInfo' | ||||
|  | ||||
| defineProps({ | ||||
|   deployInformation: Object, | ||||
| }) | ||||
| </script> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user