From 3edf2412e69843fb6a6c27ecf1bfc8d766c8dc71 Mon Sep 17 00:00:00 2001
From: Caesar Schinas <caesar@caesarschinas.com>
Date: Sun, 25 Dec 2022 02:35:04 -1000
Subject: [PATCH] [BRANDING] Custom loading animation for Forgejo

(cherry picked from commit a3b3b8a2dfb31f3b8000f1bfeae63ef3190c211f)
(cherry picked from commit de0fd2d2e459aec24dae1293cc1f8f04069dedac)
(cherry picked from commit e1bf4de211a92a2f4645b3f34039749456a10ea3)
(cherry picked from commit 60ffc88a47a158fe4920f05875ea8d156eecaa70)
(cherry picked from commit f62a7e4975979c53e97f1fff5f657f03d3ab5489)
(cherry picked from commit fdadfb478a7e8e6393f23b0f74ea9bc5903d52d5)
(cherry picked from commit ed68e8622c78118e656145d63530f75b432cb94a)
(cherry picked from commit 34ebbc500d5ed278f6b74fb92cc97902240cbd7b)
(cherry picked from commit 873be0b63c95e0c94ea49947775da0c8a47dbc65)
(cherry picked from commit 5d5b1e5ca496f816f75e4971727f711225d6944a)
---
 public/img/failed.png                 | Bin 11009 -> 0 bytes
 public/img/forgejo-loading.svg        |  14 ++++++++++++++
 public/img/loading.png                | Bin 12629 -> 0 bytes
 templates/install.tmpl                |   2 +-
 templates/post-install.tmpl           |   2 +-
 templates/repo/migrate/migrating.tmpl |   4 ++--
 6 files changed, 18 insertions(+), 4 deletions(-)
 delete mode 100644 public/img/failed.png
 create mode 100644 public/img/forgejo-loading.svg
 delete mode 100644 public/img/loading.png

diff --git a/public/img/failed.png b/public/img/failed.png
deleted file mode 100644
index b37545f90ca3b304357516661efb9e1431fa96aa..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 11009
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

diff --git a/public/img/forgejo-loading.svg b/public/img/forgejo-loading.svg
new file mode 100644
index 0000000000..919552ebb5
--- /dev/null
+++ b/public/img/forgejo-loading.svg
@@ -0,0 +1,14 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 212 212">
+  <style>
+    @keyframes draw-orange{0%{stroke-dashoffset:200}25%{stroke-dashoffset:200;stroke-width:0}50%{stroke-dashoffset:0;stroke-width:25}to{stroke-dashoffset:0}}@keyframes draw-red{0%{stroke-dashoffset:130;stroke-width:0}25%{stroke-dashoffset:0;stroke-width:25}50%,to{stroke-dashoffset:0}}@keyframes red-circle{0%{opacity:0}20%{opacity:0;stroke-width:0}25%{opacity:1;stroke-width:15}to{opacity:1}}@keyframes orange-circle{0%{opacity:0}45%{opacity:0;stroke-width:0}50%{opacity:1;stroke-width:15}to{opacity:1}}@keyframes fade{0%,90%{opacity:1}to{opacity:0}}circle,path{fill:none;stroke:#000;stroke-width:15}path{stroke-width:25}.orange{stroke:#f60}.red{stroke:#d40000}
+  </style>
+  <g transform="translate(6 6)">
+    <g style="animation:fade 2000ms ease-in-out 5ms infinite">
+      <path d="M58 168V70a50 50 0 0 1 50-50h20" class="orange" style="stroke-dasharray:200;stroke-dashoffset:200;animation:draw-orange 2000ms ease-out 5ms infinite"/>
+      <path d="M58 168v-30a50 50 0 0 1 50-50h20" class="red" style="stroke-dasharray:130;stroke-dashoffset:130;animation:draw-red 2000ms ease-out 5ms infinite"/>
+      <circle cx="142" cy="20" r="18" class="orange" style="opacity:0;animation:orange-circle 2000ms ease-out 5ms infinite"/>
+      <circle cx="142" cy="88" r="18" class="red" style="opacity:0;animation:red-circle 2000ms ease-out 5ms infinite"/>
+    </g>
+    <circle cx="58" cy="180" r="18" class="red"/>
+  </g>
+</svg>
diff --git a/public/img/loading.png b/public/img/loading.png
deleted file mode 100644
index c5ba3d9cd79960a3990d5c61fa68c98c632a1a50..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 12629
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
M1x@*SxepQl5Au-}zW@LL

diff --git a/templates/install.tmpl b/templates/install.tmpl
index 2e10b006b2..7d78882b8a 100644
--- a/templates/install.tmpl
+++ b/templates/install.tmpl
@@ -346,5 +346,5 @@
 		</div>
 	</div>
 </div>
-<img class="gt-hidden" src="{{AssetUrlPrefix}}/img/loading.png"/>
+<img class="gt-hidden" src="{{AssetUrlPrefix}}/img/forgejo-loading.svg" width="256" height="256"/>
 {{template "base/footer" .}}
diff --git a/templates/post-install.tmpl b/templates/post-install.tmpl
index f237a6e01b..a1cd4dcd87 100644
--- a/templates/post-install.tmpl
+++ b/templates/post-install.tmpl
@@ -7,7 +7,7 @@
 					<div class="ui stackable middle very relaxed page grid">
 						<div id="repo_migrating" class="sixteen wide center aligned centered column">
 							<div>
-								<img src="{{AssetUrlPrefix}}/img/loading.png"/>
+								<img src="{{AssetUrlPrefix}}/img/forgejo-loading.svg" width="256" height="256" />
 							</div>
 						</div>
 					</div>
diff --git a/templates/repo/migrate/migrating.tmpl b/templates/repo/migrate/migrating.tmpl
index a3552610c4..e108ecc097 100644
--- a/templates/repo/migrate/migrating.tmpl
+++ b/templates/repo/migrate/migrating.tmpl
@@ -9,12 +9,12 @@
 					<div class="ui stackable middle very relaxed page grid">
 						<div id="repo_migrating" class="sixteen wide center aligned centered column" task="{{.MigrateTask.ID}}">
 							<div>
-								<img src="{{AssetUrlPrefix}}/img/loading.png"/>
+								<img src="{{AssetUrlPrefix}}/img/forgejo-loading.svg" width="256" height="256" />
 							</div>
 						</div>
 						<div id="repo_migrating_failed_image" class="sixteen wide center aligned centered column gt-hidden">
 							<div>
-								<img src="{{AssetUrlPrefix}}/img/failed.png"/>
+								<span class="red">{{svg "octicon-git-pull-request-closed" 256 "ui red icon"}}</span>
 							</div>
 						</div>
 					</div>