config.html 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639
  1. <!--
  2. This file is part of centurio.work/commands.
  3. centurio.work/commands is free software: you can redistribute it and/or
  4. modify it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 3 of the License, or (at your
  6. option) any later version.
  7. centurio.work/commands is distributed in the hope that it will be useful, but
  8. WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  9. FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
  10. more details.
  11. You should have received a copy of the GNU General Public License along with
  12. centurio.work/commands (file COPYING in the main directory). If not, see
  13. <http://www.gnu.org/licenses/>.
  14. -->
  15. <!DOCTYPE html>
  16. <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  17. <head>
  18. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  19. <title>Design</title>
  20. <!-- libs, do not modify. When local than load local libs. -->
  21. <script type="text/javascript" src="/js_libs/jquery.min.js"></script>
  22. <script type="text/javascript" src="/js_libs/jquery.browser.js"></script>
  23. <script type="text/javascript" src="/js_libs/jquery.svg.min.js"></script>
  24. <script type="text/javascript" src="/js_libs/jquery.svgdom.min.js"></script>
  25. <script type="text/javascript" src="/js_libs/vkbeautify.js"></script>
  26. <script type="text/javascript" src="/js_libs/util.js"></script>
  27. <script type="text/javascript" src="/js_libs/printf.js"></script>
  28. <script type="text/javascript" src="/js_libs/strftime.min.js"></script>
  29. <script type="text/javascript" src="/js_libs/parsequery.js"></script>
  30. <script type="text/javascript" src="/js_libs/underscore.min.js"></script>
  31. <script type="text/javascript" src="/js_libs/jquery.caret.min.js"></script>
  32. <script type="text/javascript" src="/js_libs/jquery.cookie.js"></script>
  33. <script type="text/javascript" src="/js_libs/relaxngui.js"></script>
  34. <script type="text/javascript" src="/js_libs/ui.js"></script>
  35. <script type="text/javascript" src="/js_libs/custommenu.js"></script>
  36. <link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
  37. <link rel="stylesheet" href="/js_libs/ui.css" type="text/css"/>
  38. <link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
  39. <link rel="icon" href="favicon.ico">
  40. <link rel="icon" type="image/png" sizes="96x96" href="favicon-96x96.png">
  41. <style>
  42. :root {
  43. --color: #1e90ff;
  44. --backgroundcolor: fff;
  45. --fontcolor: 000;
  46. }
  47. body {
  48. color: var(--fontcolor);
  49. background-color: var(--backgroundcolor);
  50. }
  51. .lds-ring {
  52. display: inline-block;
  53. position: relative;
  54. width: 80px;
  55. height: 80px;
  56. }
  57. .lds-ring div {
  58. box-sizing: border-box;
  59. display: block;
  60. position: absolute;
  61. width: 64px;
  62. height: 64px;
  63. margin: 8px;
  64. border: 8px solid var(--color) ;
  65. border-radius: 50%;
  66. animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  67. border-color: var(--color) transparent transparent transparent;
  68. }
  69. .lds-ring div:nth-child(1) {
  70. animation-delay: -0.45s;
  71. }
  72. .lds-ring div:nth-child(2) {
  73. animation-delay: -0.3s;
  74. }
  75. .lds-ring div:nth-child(3) {
  76. animation-delay: -0.15s;
  77. }
  78. @keyframes lds-ring {
  79. 0% {
  80. transform: rotate(0deg);
  81. }
  82. 100% {
  83. transform: rotate(360deg);
  84. }
  85. }
  86. .lds-dual-ring {
  87. display: inline-block;
  88. width: 80px;
  89. height: 80px;
  90. }
  91. .lds-dual-ring:after {
  92. content: " ";
  93. display: block;
  94. width: 64px;
  95. height: 64px;
  96. margin: 8px;
  97. border-radius: 50%;
  98. border: 6px solid var(--color);
  99. border-color: var(--color) transparent var(--color) transparent;
  100. animation: lds-dual-ring 1.2s linear infinite;
  101. }
  102. @keyframes lds-dual-ring {
  103. 0% {
  104. transform: rotate(0deg);
  105. }
  106. 100% {
  107. transform: rotate(360deg);
  108. }
  109. }
  110. .lds-facebook {
  111. display: inline-block;
  112. position: relative;
  113. width: 80px;
  114. height: 80px;
  115. }
  116. .lds-facebook div {
  117. display: inline-block;
  118. position: absolute;
  119. left: 8px;
  120. width: 16px;
  121. background: var(--color);
  122. animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite;
  123. }
  124. .lds-facebook div:nth-child(1) {
  125. left: 8px;
  126. animation-delay: -0.24s;
  127. }
  128. .lds-facebook div:nth-child(2) {
  129. left: 32px;
  130. animation-delay: -0.12s;
  131. }
  132. .lds-facebook div:nth-child(3) {
  133. left: 56px;
  134. animation-delay: 0;
  135. }
  136. @keyframes lds-facebook {
  137. 0% {
  138. top: 8px;
  139. height: 64px;
  140. }
  141. 50%, 100% {
  142. top: 24px;
  143. height: 32px;
  144. }
  145. }
  146. .lds-roller {
  147. display: inline-block;
  148. position: relative;
  149. width: 80px;
  150. height: 80px;
  151. }
  152. .lds-roller div {
  153. animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  154. transform-origin: 40px 40px;
  155. }
  156. .lds-roller div:after {
  157. content: " ";
  158. display: block;
  159. position: absolute;
  160. width: 7px;
  161. height: 7px;
  162. border-radius: 50%;
  163. background: var(--color);
  164. margin: -4px 0 0 -4px;
  165. }
  166. .lds-roller div:nth-child(1) {
  167. animation-delay: -0.036s;
  168. }
  169. .lds-roller div:nth-child(1):after {
  170. top: 63px;
  171. left: 63px;
  172. }
  173. .lds-roller div:nth-child(2) {
  174. animation-delay: -0.072s;
  175. }
  176. .lds-roller div:nth-child(2):after {
  177. top: 68px;
  178. left: 56px;
  179. }
  180. .lds-roller div:nth-child(3) {
  181. animation-delay: -0.108s;
  182. }
  183. .lds-roller div:nth-child(3):after {
  184. top: 71px;
  185. left: 48px;
  186. }
  187. .lds-roller div:nth-child(4) {
  188. animation-delay: -0.144s;
  189. }
  190. .lds-roller div:nth-child(4):after {
  191. top: 72px;
  192. left: 40px;
  193. }
  194. .lds-roller div:nth-child(5) {
  195. animation-delay: -0.18s;
  196. }
  197. .lds-roller div:nth-child(5):after {
  198. top: 71px;
  199. left: 32px;
  200. }
  201. .lds-roller div:nth-child(6) {
  202. animation-delay: -0.216s;
  203. }
  204. .lds-roller div:nth-child(6):after {
  205. top: 68px;
  206. left: 24px;
  207. }
  208. .lds-roller div:nth-child(7) {
  209. animation-delay: -0.252s;
  210. }
  211. .lds-roller div:nth-child(7):after {
  212. top: 63px;
  213. left: 17px;
  214. }
  215. .lds-roller div:nth-child(8) {
  216. animation-delay: -0.288s;
  217. }
  218. .lds-roller div:nth-child(8):after {
  219. top: 56px;
  220. left: 12px;
  221. }
  222. @keyframes lds-roller {
  223. 0% {
  224. transform: rotate(0deg);
  225. }
  226. 100% {
  227. transform: rotate(360deg);
  228. }
  229. }
  230. .lds-default {
  231. display: inline-block;
  232. position: relative;
  233. width: 80px;
  234. height: 80px;
  235. }
  236. .lds-default div {
  237. position: absolute;
  238. width: 6px;
  239. height: 6px;
  240. background: var(--color);
  241. border-radius: 50%;
  242. animation: lds-default 1.2s linear infinite;
  243. }
  244. .lds-default div:nth-child(1) {
  245. animation-delay: 0s;
  246. top: 37px;
  247. left: 66px;
  248. }
  249. .lds-default div:nth-child(2) {
  250. animation-delay: -0.1s;
  251. top: 22px;
  252. left: 62px;
  253. }
  254. .lds-default div:nth-child(3) {
  255. animation-delay: -0.2s;
  256. top: 11px;
  257. left: 52px;
  258. }
  259. .lds-default div:nth-child(4) {
  260. animation-delay: -0.3s;
  261. top: 7px;
  262. left: 37px;
  263. }
  264. .lds-default div:nth-child(5) {
  265. animation-delay: -0.4s;
  266. top: 11px;
  267. left: 22px;
  268. }
  269. .lds-default div:nth-child(6) {
  270. animation-delay: -0.5s;
  271. top: 22px;
  272. left: 11px;
  273. }
  274. .lds-default div:nth-child(7) {
  275. animation-delay: -0.6s;
  276. top: 37px;
  277. left: 7px;
  278. }
  279. .lds-default div:nth-child(8) {
  280. animation-delay: -0.7s;
  281. top: 52px;
  282. left: 11px;
  283. }
  284. .lds-default div:nth-child(9) {
  285. animation-delay: -0.8s;
  286. top: 62px;
  287. left: 22px;
  288. }
  289. .lds-default div:nth-child(10) {
  290. animation-delay: -0.9s;
  291. top: 66px;
  292. left: 37px;
  293. }
  294. .lds-default div:nth-child(11) {
  295. animation-delay: -1s;
  296. top: 62px;
  297. left: 52px;
  298. }
  299. .lds-default div:nth-child(12) {
  300. animation-delay: -1.1s;
  301. top: 52px;
  302. left: 62px;
  303. }
  304. @keyframes lds-default {
  305. 0%, 20%, 80%, 100% {
  306. transform: scale(1);
  307. }
  308. 50% {
  309. transform: scale(1.5);
  310. }
  311. }
  312. .lds-ellipsis {
  313. display: inline-block;
  314. position: relative;
  315. width: 80px;
  316. height: 80px;
  317. }
  318. .lds-ellipsis div {
  319. position: absolute;
  320. top: 33px;
  321. width: 13px;
  322. height: 13px;
  323. border-radius: 50%;
  324. background: var(--color);
  325. animation-timing-function: cubic-bezier(0, 1, 1, 0);
  326. }
  327. .lds-ellipsis div:nth-child(1) {
  328. left: 8px;
  329. animation: lds-ellipsis1 0.6s infinite;
  330. }
  331. .lds-ellipsis div:nth-child(2) {
  332. left: 8px;
  333. animation: lds-ellipsis2 0.6s infinite;
  334. }
  335. .lds-ellipsis div:nth-child(3) {
  336. left: 32px;
  337. animation: lds-ellipsis2 0.6s infinite;
  338. }
  339. .lds-ellipsis div:nth-child(4) {
  340. left: 56px;
  341. animation: lds-ellipsis3 0.6s infinite;
  342. }
  343. @keyframes lds-ellipsis1 {
  344. 0% {
  345. transform: scale(0);
  346. }
  347. 100% {
  348. transform: scale(1);
  349. }
  350. }
  351. @keyframes lds-ellipsis3 {
  352. 0% {
  353. transform: scale(1);
  354. }
  355. 100% {
  356. transform: scale(0);
  357. }
  358. }
  359. @keyframes lds-ellipsis2 {
  360. 0% {
  361. transform: translate(0, 0);
  362. }
  363. 100% {
  364. transform: translate(24px, 0);
  365. }
  366. }
  367. .lds-spinner {
  368. color: official;
  369. display: inline-block;
  370. position: relative;
  371. width: 80px;
  372. height: 80px;
  373. }
  374. .lds-spinner div {
  375. transform-origin: 40px 40px;
  376. animation: lds-spinner 1.2s linear infinite;
  377. }
  378. .lds-spinner div:after {
  379. content: " ";
  380. display: block;
  381. position: absolute;
  382. top: 3px;
  383. left: 37px;
  384. width: 6px;
  385. height: 18px;
  386. border-radius: 20%;
  387. background: var(--color);
  388. }
  389. .lds-spinner div:nth-child(1) {
  390. transform: rotate(0deg);
  391. animation-delay: -1.1s;
  392. }
  393. .lds-spinner div:nth-child(2) {
  394. transform: rotate(30deg);
  395. animation-delay: -1s;
  396. }
  397. .lds-spinner div:nth-child(3) {
  398. transform: rotate(60deg);
  399. animation-delay: -0.9s;
  400. }
  401. .lds-spinner div:nth-child(4) {
  402. transform: rotate(90deg);
  403. animation-delay: -0.8s;
  404. }
  405. .lds-spinner div:nth-child(5) {
  406. transform: rotate(120deg);
  407. animation-delay: -0.7s;
  408. }
  409. .lds-spinner div:nth-child(6) {
  410. transform: rotate(150deg);
  411. animation-delay: -0.6s;
  412. }
  413. .lds-spinner div:nth-child(7) {
  414. transform: rotate(180deg);
  415. animation-delay: -0.5s;
  416. }
  417. .lds-spinner div:nth-child(8) {
  418. transform: rotate(210deg);
  419. animation-delay: -0.4s;
  420. }
  421. .lds-spinner div:nth-child(9) {
  422. transform: rotate(240deg);
  423. animation-delay: -0.3s;
  424. }
  425. .lds-spinner div:nth-child(10) {
  426. transform: rotate(270deg);
  427. animation-delay: -0.2s;
  428. }
  429. .lds-spinner div:nth-child(11) {
  430. transform: rotate(300deg);
  431. animation-delay: -0.1s;
  432. }
  433. .lds-spinner div:nth-child(12) {
  434. transform: rotate(330deg);
  435. animation-delay: 0s;
  436. }
  437. @keyframes lds-spinner {
  438. 0% {
  439. opacity: 1;
  440. }
  441. 100% {
  442. opacity: 0;
  443. }
  444. }
  445. .lds-ripple {
  446. display: inline-block;
  447. position: relative;
  448. width: 80px;
  449. height: 80px;
  450. }
  451. .lds-ripple div {
  452. position: absolute;
  453. border: 4px solid var(--color);
  454. opacity: 1;
  455. border-radius: 50%;
  456. animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
  457. }
  458. .lds-ripple div:nth-child(2) {
  459. animation-delay: -0.5s;
  460. }
  461. @keyframes lds-ripple {
  462. 0% {
  463. top: 36px;
  464. left: 36px;
  465. width: 0;
  466. height: 0;
  467. opacity: 0;
  468. }
  469. 4.9% {
  470. top: 36px;
  471. left: 36px;
  472. width: 0;
  473. height: 0;
  474. opacity: 0;
  475. }
  476. 5% {
  477. top: 36px;
  478. left: 36px;
  479. width: 0;
  480. height: 0;
  481. opacity: 1;
  482. }
  483. 100% {
  484. top: 0px;
  485. left: 0px;
  486. width: 72px;
  487. height: 72px;
  488. opacity: 0;
  489. }
  490. }
  491. .center {
  492. margin: 0;
  493. position: absolute;
  494. top: 50%;
  495. left: 50%;
  496. -ms-transform: translate(-50%, -50%);
  497. transform: translate(-50%, -50%);
  498. }}
  499. </style>
  500. </head>
  501. <script>
  502. function newLink() {
  503. //get form element
  504. var formEl = document.forms.config;
  505. var formData = new FormData(formEl);
  506. const formElements = Array.from(formData);
  507. //get current url
  508. var href = window.location.href;
  509. var dir = href.substring(0, href.lastIndexOf('/')) + "/";
  510. var link = dir + "service.html?";
  511. //iterate form eles and build string
  512. formElements.forEach((element, index) => {
  513. if(index!=0){
  514. link+= "&";
  515. }
  516. if(element[0].includes("color")){
  517. link+= element[0] + "=" + element[1].substring(1);
  518. }
  519. else{
  520. link+= element[0] + "=" + element[1];
  521. }
  522. });
  523. //set new link
  524. document.getElementById("showurl").innerText =link;
  525. top.document.getElementById('previewframe').setAttribute("src",link);
  526. }
  527. $(document).ready(function() {
  528. newLink()
  529. });
  530. </script>
  531. <body >
  532. <!-- Animator taken from https://loading.io/css/ -->
  533. <!-- loading icons provided in this page are released under CC0 License -->
  534. <template id="lds-ring">
  535. <div class="lds-ring"><div></div><div></div><div></div><div></div></div>
  536. </template>
  537. <template id="lds-dual-ring">
  538. <div class="lds-dual-ring"></div>
  539. </template>
  540. <template id="lds-facebook">
  541. <div class="lds-facebook"><div></div><div></div><div></div></div>
  542. </template>
  543. <template id="lds-roller">
  544. <div class="lds-roller"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div>
  545. </template>
  546. <template id="lds-default">
  547. <div class="lds-default"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div> </template>
  548. <template id="lds-ellipsis">
  549. <div class="lds-ellipsis"><div></div><div></div><div></div><div></div></div>
  550. </template>
  551. <template id="lds-ripple">
  552. <div class="lds-ripple"><div></div><div></div></div> </template>
  553. <template id="lds-spinner">
  554. <div class="lds-spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div>
  555. </template>
  556. <form action="" id="config">
  557.   <input onchange="newLink()" type="radio" id="lds-ring" name="type" value="lds-ring" checked="checked">
  558.   <label for="lds-ring"> <div class="lds-ring"><div></div><div></div><div></div><div></div></div> </label>
  559.   <input onchange="newLink()" type="radio" id="lds-dual-ring" name="type" value="lds-dual-ring">
  560.   <label for="lds-dual-ring"> <div class="lds-dual-ring"></div> </label>
  561.   <input onchange="newLink()" type="radio" id="lds-facebook" name="type" value="lds-facebook">
  562. <label for="lds-facebook"> <div class="lds-facebook"><div></div><div></div><div></div></div> </label>
  563.   <input onchange="newLink()" type="radio" id="lds-roller" name="type" value="lds-roller">
  564. <label for="lds-roller"> <div class="lds-roller" ><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div></label>
  565.   <input onchange="newLink()" type="radio" id="lds-default" name="type" value="lds-default">
  566. <label for="lds-default"> <div class="lds-default"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div></label>
  567.   <input onchange="newLink()" type="radio" id="lds-ellipsis" name="type" value="lds-ellipsis">
  568. <label for="lds-ellipsis"> <div class="lds-ellipsis"><div></div><div></div><div></div><div></div></div></label>
  569.   <input onchange="newLink()" type="radio" id="lds-ripple" name="type" value="lds-ripple">
  570.   <label for="lds-ripple"> <div class="lds-ripple"><div></div><div></div></div></label>
  571.   <input onchange="newLink()" type="radio" id="lds-spinner" name="type" value="lds-spinner">
  572. <label for="lds-spinner"> <div class="lds-spinner"><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div><div></div></div> </label>
  573. <br>
  574. Spinner Color: <input onchange="newLink()" name="color" type="color" value="#1e90ff" /><br>
  575. Background Color: <input onchange="newLink()" name="backgroundcolor" type="color" value="#ffffff" /><br>
  576. Text: <input onchange="newLink()" name="text" type="text"></input><br>
  577. Font Color: <input onchange="newLink()" name="fontcolor" type="color" value="#000000" /><br>
  578. </form>
  579. <br>
  580. URL:<br>
  581. <span id="showurl"></span>
  582. <br>
  583. Iframe Preview:<br>
  584. <iframe width="500" height="500" id="previewframe" src="https://centurio.evva.com/services/frames_support/spinner/service.html?text=Loading%20Serial%20Number&type=lds-spinner&color=000000&fontcolor=000" title="Spinner"></iframe>
  585. </div>
  586. </body>
  587. </html>