less copy protection, more size visualization
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 

916 строки
26 KiB

  1. const attributionData = {
  2. sources: [
  3. {
  4. prefix: "./media/buildings/",
  5. files: [
  6. { name: "house.svg", source: null },
  7. { name: "mailbox.svg", source: null },
  8. { name: "mobile-home.svg", source: null },
  9. ],
  10. authors: [
  11. "chemicalcrux"
  12. ]
  13. },
  14. {
  15. prefix: "./media/buildings/skyscrapers/",
  16. files: [
  17. { name: "wide.svg", source: null },
  18. { name: "medium.svg", source: null },
  19. { name: "slender.svg", source: null },
  20. { name: "narrow.svg", source: null },
  21. ],
  22. authors: [
  23. "chemicalcrux"
  24. ]
  25. },
  26. {
  27. prefix: "./media/characters/abysgar/",
  28. files: [
  29. { name: "front.svg", source: "https://www.furaffinity.net/view/32424108/" }
  30. ],
  31. authors: [
  32. "clown-grin",
  33. "labratkuma"
  34. ],
  35. owners: [
  36. ]
  37. },
  38. {
  39. prefix: "./media/characters/adake/",
  40. files: [
  41. { name: "front-1.svg", source: "https://www.furaffinity.net/view/26253324/" },
  42. { name: "front-2.svg", source: "https://www.furaffinity.net/view/26253324/" },
  43. { name: "back.svg", source: "https://www.furaffinity.net/view/26253324/" },
  44. { name: "kneel.svg", source: "https://www.furaffinity.net/view/26253324/" },
  45. ],
  46. authors: [
  47. "oselotti"
  48. ],
  49. owners: [
  50. "Dialuca01"
  51. ]
  52. },
  53. {
  54. prefix: "./media/characters/aigey/",
  55. files: [
  56. { name: "side.svg", source: "https://www.furaffinity.net/view/12006265/" }
  57. ],
  58. authors: [
  59. "just-a-little-mixed-up"
  60. ],
  61. owners: [
  62. ]
  63. },
  64. {
  65. prefix: "./media/characters/akari/",
  66. files: [
  67. { name: "front.svg", source: "https://www.furaffinity.net/view/21329356/" }
  68. ],
  69. authors: [
  70. "spyropurple"
  71. ],
  72. owners: [
  73. ]
  74. },
  75. {
  76. prefix: "./media/characters/alicia/",
  77. files: [
  78. { name: "anthro.svg", source: "https://www.furaffinity.net/view/31363235/" }
  79. ],
  80. authors: [
  81. "helisa-adopts",
  82. "chesta"
  83. ],
  84. owners: [
  85. "little-big-x110"
  86. ]
  87. },
  88. {
  89. prefix: "./media/characters/alicia/",
  90. files: [
  91. { name: "feral.svg", source: "https://www.furaffinity.net/view/34138885/" }
  92. ],
  93. authors: [
  94. "little-big-x110",
  95. "helisa-adopts",
  96. "chesta"
  97. ],
  98. owners: [
  99. "little-big-x110"
  100. ]
  101. },
  102. {
  103. prefix: "./media/characters/andy/",
  104. files: [
  105. { name: "front.svg", source: null }
  106. ],
  107. authors: [
  108. "cardboardhead"
  109. ],
  110. owners: [
  111. ]
  112. },
  113. {
  114. prefix: "./media/characters/angelpatamon/",
  115. files: [
  116. { name: "front.svg", source: "http://www.furaffinity.net/view/26475369/" }
  117. ],
  118. authors: [
  119. "mallowchu"
  120. ]
  121. },
  122. {
  123. prefix: "./media/characters/appledectomy/",
  124. files: [
  125. { name: "front.svg", source: "https://www.furaffinity.net/view/33002197/" }
  126. ],
  127. authors: [
  128. "stonerabbit"
  129. ],
  130. owners: [
  131. "appledectomy"
  132. ]
  133. },
  134. {
  135. prefix: "./media/characters/archy/",
  136. files: [
  137. { name: "front.svg", source: "https://www.furaffinity.net/view/17286706/" }
  138. ],
  139. authors: [
  140. "twitch-the-dragon"
  141. ],
  142. owners: [
  143. "archy-d"
  144. ]
  145. },
  146. {
  147. prefix: "./media/characters/asana/",
  148. files: [
  149. { name: "front.svg", source: "https://www.furaffinity.net/view/35087729/" },
  150. { name: "back.svg", source: "https://www.furaffinity.net/view/35087729/" },
  151. ],
  152. authors: [
  153. "silverwingink"
  154. ],
  155. owners: [
  156. "aviraptia"
  157. ]
  158. },
  159. {
  160. prefix: "./media/characters/asana/",
  161. files: [
  162. { name: "front.svg", source: "https://www.furaffinity.net/view/35087729/" },
  163. { name: "back.svg", source: "https://www.furaffinity.net/view/35087729/" },
  164. ],
  165. authors: [
  166. "silverwingink"
  167. ],
  168. owners: [
  169. "aviraptia"
  170. ]
  171. },
  172. {
  173. prefix: "./media/characters/asana-mech/",
  174. files: [
  175. { name: "side.svg", source: null }
  176. ],
  177. authors: [
  178. "ashtrek"
  179. ],
  180. owners: [
  181. "aviraptia"
  182. ]
  183. },
  184. {
  185. prefix: "./media/characters/ashtrek/",
  186. files: [
  187. { name: "front.svg", source: null },
  188. { name: "front-armor.svg", source: null },
  189. ],
  190. authors: [
  191. "silverwingink"
  192. ],
  193. owners: [
  194. "ashtrek"
  195. ]
  196. },
  197. {
  198. prefix: "./media/characters/beherit/",
  199. files: [
  200. { name: "front.svg", source: null }
  201. ],
  202. authors: [
  203. "muzz",
  204. ],
  205. owners: [
  206. "beherit"
  207. ]
  208. },
  209. {
  210. prefix: "./media/characters/berri/",
  211. files: [
  212. { name: "front.svg", source: "https://www.furaffinity.net/view/34510917/" }
  213. ],
  214. authors: [
  215. "lynxsprout",
  216. "sugarbeans"
  217. ],
  218. owners: [
  219. "little-big-x110"
  220. ]
  221. },
  222. {
  223. prefix: "./media/characters/blake/",
  224. files: [
  225. { name: "side.svg", source: "https://www.furaffinity.net/view/30676178/" },
  226. { name: "crouched.svg", source: "https://www.furaffinity.net/view/30676178/" },
  227. { name: "bent.svg", source: "https://www.furaffinity.net/view/30676178/" },
  228. ],
  229. authors: [
  230. "zyraxus"
  231. ],
  232. owners: [
  233. "kurrikage"
  234. ]
  235. },
  236. {
  237. prefix: "./media/characters/cibus/",
  238. files: [
  239. { name: "side.svg", source: "https://www.furaffinity.net/view/15534343/" }
  240. ],
  241. authors: [
  242. "jaydom"
  243. ],
  244. owners: [
  245. "movler"
  246. ]
  247. },
  248. {
  249. prefix: "./media/characters/dr-clay/",
  250. files: [
  251. { name: "front.svg", source: "https://www.furaffinity.net/view/15534343/" },
  252. { name: "front-clothed.svg", source: "https://www.furaffinity.net/view/15534343/" }
  253. ],
  254. authors: [
  255. "wonderball"
  256. ],
  257. owners: [
  258. "little-big-x110"
  259. ]
  260. },
  261. {
  262. prefix: "./media/characters/everett/",
  263. files: [
  264. { name: "front.svg", source: null },
  265. { name: "paw.svg", source: null }
  266. ],
  267. authors: [
  268. "beherit",
  269. ],
  270. owners: [
  271. "beherit"
  272. ]
  273. },
  274. {
  275. prefix: "./media/characters/gemini/",
  276. files: [
  277. { name: "front.svg", source: "https://www.furaffinity.net/view/31363584/" },
  278. { name: "back.svg", source: "https://www.furaffinity.net/view/31363584/" },
  279. ],
  280. authors: [
  281. "rebonica"
  282. ],
  283. owners: [
  284. "geminimacro"
  285. ]
  286. },
  287. {
  288. prefix: "./media/characters/gemini/",
  289. files: [
  290. { name: "kneeling.svg", source: "https://www.furaffinity.net/view/31295122/" },
  291. ],
  292. authors: [
  293. "furrypur"
  294. ],
  295. owners: [
  296. "geminimacro"
  297. ]
  298. },
  299. {
  300. prefix: "./media/characters/jaro/",
  301. files: [
  302. { name: "front.svg", source: "https://www.furaffinity.net/view/26084387/" },
  303. { name: "back.svg", source: "https://www.furaffinity.net/view/26084387/" }
  304. ],
  305. authors: [
  306. "mizumisensei"
  307. ],
  308. owners: [
  309. "jaro-the-dragon"
  310. ]
  311. },
  312. {
  313. prefix: "./media/characters/juno/",
  314. files: [
  315. { name: "front.svg", source: "https://toyhou.se/2991942.juno#16906063" },
  316. ],
  317. authors: [
  318. "gaily"
  319. ],
  320. owners: [
  321. "little-big-x110"
  322. ]
  323. },
  324. {
  325. prefix: "./media/characters/lexi/",
  326. files: [
  327. { name: "front.svg", source: "https://www.furaffinity.net/view/32187352/" }
  328. ],
  329. authors: [
  330. ],
  331. owners: [
  332. "little-big-x110"
  333. ]
  334. },
  335. {
  336. prefix: "./media/characters/malfressa/",
  337. files: [
  338. { name: "side.svg", source: "https://www.furaffinity.net/view/25377262/" },
  339. { name: "feral.svg", source: "https://www.furaffinity.net/view/25377262/" }
  340. ],
  341. authors: [
  342. "d-eath-tail"
  343. ],
  344. owners: [
  345. "scareye"
  346. ]
  347. },
  348. {
  349. prefix: "./media/characters/malfressa/",
  350. files: [
  351. { name: "walking.svg", source: "https://www.furaffinity.net/view/23877052/" }
  352. ],
  353. authors: [
  354. "kerneldecoy"
  355. ],
  356. owners: [
  357. "scareye"
  358. ]
  359. },
  360. {
  361. prefix: "./media/characters/martin/",
  362. files: [
  363. { name: "front.svg", source: "https://www.furaffinity.net/view/30066999" }
  364. ],
  365. authors: [
  366. "little-big-x110"
  367. ],
  368. owners: [
  369. "little-big-x110"
  370. ]
  371. },
  372. {
  373. prefix: "./media/characters/nibbles/",
  374. files: [
  375. { name: "front.svg", source: "https://www.furaffinity.net/view/22964778/" },
  376. { name: "side.svg", source: "https://www.furaffinity.net/view/22964778/" },
  377. ],
  378. authors: [
  379. "dragga"
  380. ],
  381. owners: [
  382. "movler"
  383. ]
  384. },
  385. {
  386. prefix: "./media/characters/opal/",
  387. files: [
  388. { name: "front.svg", source: "https://www.furaffinity.net/view/33375219/" },
  389. { name: "front-alt.svg", source: "https://www.furaffinity.net/view/32959775/" },
  390. ],
  391. authors: [
  392. "enormouse"
  393. ],
  394. owners: [
  395. "enormouse"
  396. ]
  397. },
  398. {
  399. prefix: "./media/characters/piper/",
  400. files: [
  401. { name: "front.svg", source: "https://www.furaffinity.net/view/22964778/" }
  402. ],
  403. authors: [
  404. "brit-bork"
  405. ],
  406. owners: [
  407. "flyhar"
  408. ]
  409. },
  410. {
  411. prefix: "./media/characters/regal/",
  412. files: [
  413. { name: "front.svg", source: "https://www.furaffinity.net/view/32825133/" },
  414. { name: "back.svg", source: "https://www.furaffinity.net/view/32825133/" }
  415. ],
  416. authors: [
  417. "sixsydes"
  418. ],
  419. owners: [
  420. "cygil"
  421. ]
  422. },
  423. {
  424. prefix: "./media/characters/rikky/",
  425. files: [
  426. { name: "side.svg", source: null }
  427. ],
  428. authors: [
  429. "ethan64"
  430. ],
  431. owners: [
  432. "quake-yote"
  433. ]
  434. },
  435. {
  436. prefix: "./media/characters/rogue/",
  437. files: [
  438. { name: "front.svg", source: "http://rogue.macrophile.com/ken" }
  439. ],
  440. authors: [
  441. "cougr"
  442. ],
  443. owners: [
  444. "rogue"
  445. ]
  446. },
  447. {
  448. prefix: "./media/characters/rose-lion/",
  449. files: [
  450. { name: "front.svg", source: "https://twitter.com/MewMus" }
  451. ],
  452. authors: [
  453. "enormouse"
  454. ],
  455. owners: [
  456. "enormouse"
  457. ]
  458. },
  459. {
  460. prefix: "./media/characters/rose-lion/",
  461. files: [
  462. { name: "bent.svg", source: "https://www.furaffinity.net/view/34392494/" }
  463. ],
  464. authors: [
  465. "princessrei"
  466. ],
  467. owners: [
  468. "enormouse"
  469. ]
  470. },
  471. {
  472. prefix: "./media/characters/samantha/",
  473. files: [
  474. { name: "front.svg", source: "https://www.furaffinity.net/view/31077914/" },
  475. { name: "front-clothed.svg", source: "https://www.furaffinity.net/view/31077914/" },
  476. { name: "back.svg", source: "https://www.furaffinity.net/view/31077914/" },
  477. ],
  478. authors: [
  479. "wonderball"
  480. ],
  481. owners: [
  482. "little-big-x110"
  483. ]
  484. },
  485. {
  486. prefix: "./media/characters/surgo/",
  487. files: [
  488. { name: "front.svg", source: "https://www.furaffinity.net/view/33348481/" },
  489. { name: "back.svg", source: "https://www.furaffinity.net/view/33348481/" },
  490. { name: "laying.svg", source: "https://www.furaffinity.net/view/33348481/" },
  491. ],
  492. authors: [
  493. "gaiawolfess",
  494. "malakhael"
  495. ],
  496. owners: [
  497. "movler"
  498. ]
  499. },
  500. {
  501. prefix: "./media/characters/tiberius/",
  502. files: [
  503. { name: "front.svg", source: "https://www.furaffinity.net/view/34977812/" },
  504. { name: "back.svg", source: "https://www.furaffinity.net/view/34977812/" }
  505. ],
  506. authors: [
  507. "rebonica"
  508. ],
  509. owners: [
  510. "movler"
  511. ]
  512. },
  513. {
  514. prefix: "./media/characters/vemus/",
  515. files: [
  516. { name: "front.svg", source: "https://www.furaffinity.net/view/31833589/" }
  517. ],
  518. authors: [
  519. "eda"
  520. ],
  521. owners: [
  522. "vemus"
  523. ]
  524. },
  525. {
  526. prefix: "./media/characters/wyvern-ripsnarl/",
  527. files: [
  528. { name: "front.svg", source: "https://www.furaffinity.net/view/15418876/" }
  529. ],
  530. authors: [
  531. "teaselbone"
  532. ],
  533. owners: [
  534. "lobo-raptor-lo"
  535. ]
  536. },
  537. {
  538. prefix: "./media/characters/",
  539. files: [
  540. { name: "", source: "" }
  541. ],
  542. authors: [
  543. ]
  544. },
  545. {
  546. prefix: "./media/naturals/",
  547. files: [
  548. { name: "milky-way.svg", source: null }
  549. ],
  550. authors: [
  551. "chemicalcrux"
  552. ]
  553. },
  554. {
  555. prefix: "./media/objects/",
  556. files: [
  557. { name: "nail-polish.svg", source: null },
  558. { name: "shot-glass.svg", source: null },
  559. { name: "beer-bottle.svg", source: null },
  560. { name: "circle.svg", source: null },
  561. { name: "pencil.svg", source: null },
  562. ],
  563. authors: [
  564. "chemicalcrux"
  565. ]
  566. },
  567. {
  568. prefix: "./media/objects/humans/",
  569. files: [
  570. { name: "woman-1.svg", source: "https://commons.wikimedia.org/wiki/File:1Silhouette_Female.svg" }
  571. ],
  572. authors: [
  573. "phil-bronnery",
  574. "beao"
  575. ]
  576. },
  577. {
  578. prefix: "./media/objects/humans/",
  579. files: [
  580. { name: "man-1.svg", source: "https://commons.wikimedia.org/wiki/File:Silhouette.svg" }
  581. ],
  582. authors: [
  583. ]
  584. },
  585. {
  586. prefix: "./media/vehicles/",
  587. files: [
  588. { name: "titanic.svg", source: "https://creazilla.com/nodes/873-titanic-silhouette" },
  589. { name: "vertical-titanic.svg", source: "https://creazilla.com/nodes/873-titanic-silhouette" }
  590. ],
  591. authors: [
  592. ]
  593. },
  594. {
  595. prefix: "./media/vehicles/",
  596. files: [
  597. { name: "18-wheeler.svg", source: "https://commons.wikimedia.org/wiki/File:Conventional_18-wheeler_truck_diagram.svg" },
  598. { name: "18-wheeler-vertical.svg", source: "https://commons.wikimedia.org/wiki/File:Conventional_18-wheeler_truck_diagram.svg" }
  599. ],
  600. authors: [
  601. "h-padleckas"
  602. ]
  603. },
  604. ],
  605. people: {
  606. "appledectomy": {
  607. name: "Appledectomy",
  608. url: "https://www.furaffinity.net/user/appledectomy"
  609. },
  610. "archy-d": {
  611. name: "ArchyD",
  612. url: "https://www.furaffinity.net/user/ArchyD"
  613. },
  614. "ashtrek": {
  615. name: "Ashtrek",
  616. url: "https://www.furaffinity.net/user/ashtrek/"
  617. },
  618. "aviraptia": {
  619. name: "Aviraptia",
  620. url: "https://www.furaffinity.net/user/aviraptia/"
  621. },
  622. "beao": {
  623. name: "Beao",
  624. url: "https://commons.wikimedia.org/wiki/User:Beao"
  625. },
  626. "beherit": {
  627. name: "Beherit",
  628. url: "https://www.furaffinity.net/user/beherit/"
  629. },
  630. "brit-bork": {
  631. name: "Koijot",
  632. url: "https://twitter.com/Brit_Bork",
  633. },
  634. "cardboardhead": {
  635. name: "cardboardhead",
  636. url: "https://twitter.com/cardboardhead"
  637. },
  638. "chemicalcrux": {
  639. name: "chemicalcrux",
  640. url: "https://www.furaffinity.net/user/chemicalcrux"
  641. },
  642. "chesta": {
  643. name: "Chesta",
  644. url: "https://www.furaffinity.net/user/chesta"
  645. },
  646. "clown-grin": {
  647. name: "clown-grin",
  648. url: "https://www.furaffinity.net/user/clown-grin"
  649. },
  650. "cougr": {
  651. name: "Cougr",
  652. url: "https://www.furaffinity.net/user/cougr"
  653. },
  654. "cygil": {
  655. name: "Cygil",
  656. url: "https://www.furaffinity.net/user/cygil"
  657. },
  658. "d-eath-tail": {
  659. name: "Deathy",
  660. url: "https://www.furaffinity.net/user/d-eath-tail"
  661. },
  662. "Dialuca01": {
  663. name: "Dialuca",
  664. url: "https://www.furaffinity.net/user/dialuca01"
  665. },
  666. "dragga": {
  667. name: "Dragga",
  668. url: "https://www.furaffinity.net/user/dragga"
  669. },
  670. "eda": {
  671. name: "Eda",
  672. url: "https://www.furaffinity.net/user/eda/"
  673. },
  674. "enormouse": {
  675. name: "Enormouse",
  676. url: "https://twitter.com/MewMus"
  677. },
  678. "ethan64": {
  679. name: "Ethan64",
  680. url: "https://www.furaffinity.net/user/ethan64/"
  681. },
  682. "flyhar": {
  683. name: "Flyhar",
  684. url: "https://www.furaffinity.net/user/flyfeline/"
  685. },
  686. "furrypur": {
  687. name: "FurryPur",
  688. url: "https://www.furaffinity.net/user/furrypur/"
  689. },
  690. "gaiawolfess": {
  691. name: "Gaiawolfess",
  692. url: "https://www.furaffinity.net/user/gaiawolfess"
  693. },
  694. "gaily": {
  695. name: "Gaily",
  696. url: "https://www.furaffinity.net/user/gaily/"
  697. },
  698. "geminimacro": {
  699. name: "geminimacro",
  700. url: "https://www.furaffinity.net/user/lajay"
  701. },
  702. "h-padleckas": {
  703. name: "H. Padleckas",
  704. url: "https://commons.wikimedia.org/wiki/User:H_Padleckas"
  705. },
  706. "helisa-adopts": {
  707. name: "Helisa",
  708. url: "https://www.furaffinity.net/user/HelisaAdopts"
  709. },
  710. "jaro-the-dragon": {
  711. name: "Jaro",
  712. url: "https://www.furaffinity.net/user/jarothedragon/"
  713. },
  714. "jaydom": {
  715. name: "Jaydom",
  716. url: "https://www.furaffinity.net/user/jaydom"
  717. },
  718. "just-a-little-mixed-up": {
  719. name: "just-a-little-mixed-up",
  720. url: "https://www.furaffinity.net/user/just-a-little-mixed-up"
  721. },
  722. "kerneldecoy": {
  723. name: "Kernel Decoy",
  724. url: "https://www.furaffinity.net/user/kerneldecoy/"
  725. },
  726. "kurrikage": {
  727. name: "Kurrikage",
  728. url: "https://www.furaffinity.net/user/kurrikage/"
  729. },
  730. "labratkuma": {
  731. name: "labratkuma",
  732. url: "https://www.furaffinity.net/user/labratkuma"
  733. },
  734. "little-big-x110": {
  735. name: "LittleBig",
  736. url: "https://www.furaffinity.net/user/LittlebigX110"
  737. },
  738. "lobo-raptor-lo": {
  739. name: "LoboRaptorLo",
  740. url: "https://www.furaffinity.net/user/loboraptorlo/"
  741. },
  742. "lynxsprout": {
  743. name: "Lynxsprout",
  744. url: "https://lynxsprout.carrd.co/"
  745. },
  746. "malakhael": {
  747. name: "Malakhael",
  748. url: "https://www.furaffinity.net/user/malakhael"
  749. },
  750. "mallowchu": {
  751. name: "Mallowchu",
  752. url: "https://www.furaffinity.net/user/mallowchu"
  753. },
  754. "mizumisensei": {
  755. name: "Mizumisensei",
  756. url: "https://twitter.com/mizumisensei"
  757. },
  758. "movler": {
  759. name: "Movler",
  760. url: "https://www.furaffinity.net/user/movler/"
  761. },
  762. "muzz": {
  763. name: "Muzz",
  764. url: "https://www.furaffinity.net/user/muzz/"
  765. },
  766. "oselotti": {
  767. name: "Oselotti",
  768. url: "https://www.furaffinity.net/user/oselotti"
  769. },
  770. "phil-bronnery": {
  771. name: "Phil Bronnery",
  772. url: "https://www.flickr.com/people/27919241@N02"
  773. },
  774. "princessrei": {
  775. name: "Princess Rei",
  776. url: "https://twitter.com/princessrei"
  777. },
  778. "quake-yote": {
  779. name: "Quake Yote",
  780. url: "https://www.furaffinity.net/user/rokossovskiy"
  781. },
  782. "rebonica": {
  783. name: "Rebonica",
  784. url: "https://www.furaffinity.net/user/rebonica"
  785. },
  786. "rogue": {
  787. name: "Rogue Megawolf",
  788. url: "https://twitter.com/roguemegawolf"
  789. },
  790. "scareye": {
  791. name: "Scareye",
  792. url: "https://www.furaffinity.net/user/scareye/"
  793. },
  794. "silverwingink": {
  795. name: "silverwingink",
  796. url: "https://www.furaffinity.net/user/silverwingink/"
  797. },
  798. "sixsydes": {
  799. name: "sixsydes",
  800. url: "https://www.furaffinity.net/user/sixsydes/"
  801. },
  802. "spyropurple": {
  803. name: "spyropurple",
  804. url: "https://www.furaffinity.net/user/spyropurple/"
  805. },
  806. "stonerabbit": {
  807. name: "stonerabbit",
  808. url: "https://www.furaffinity.net/user/stonerabbit/"
  809. },
  810. "sugarbeans": {
  811. name: "sugarbeans",
  812. url: "https://www.furaffinity.net/user/sugarbeans/"
  813. },
  814. "teaselbone": {
  815. name: "Teaselbone",
  816. url: "https://www.furaffinity.net/user/teaselbone/"
  817. },
  818. "twitch-the-dragon": {
  819. name: "Twitch",
  820. url: "https://www.furaffinity.net/user/twitchthedragon/"
  821. },
  822. "vemus": {
  823. name: "vemus",
  824. url: "https://www.furaffinity.net/user/vemus"
  825. },
  826. "wonderball": {
  827. name: "Wonderball",
  828. url: "https://www.furaffinity.net/user/wonderball"
  829. },
  830. "zyraxus": {
  831. name: "Zyraxus",
  832. url: "https://www.furaffinity.net/user/zyraxus"
  833. }
  834. }
  835. }
  836. const attribution = {};
  837. function prepareAttribution() {
  838. attribution["files"] = {};
  839. attributionData.sources.forEach(citation => {
  840. citation.files.forEach(file => {
  841. attribution.files[citation.prefix + file.name] = {
  842. authors: citation.authors,
  843. owners: citation.owners,
  844. source: file.source
  845. }
  846. })
  847. });
  848. }
  849. function authorsOf(file) {
  850. if (attribution.files[file])
  851. return attribution.files[file].authors;
  852. else
  853. return undefined;
  854. }
  855. function authorsOfFull(file) {
  856. if (attribution.files[file]) {
  857. const result = [];
  858. attribution.files[file].authors.forEach(author => {
  859. result.push(attributionData.people[author]);
  860. });
  861. return result;
  862. }
  863. else
  864. return undefined;
  865. }
  866. function ownersOf(file) {
  867. if (attribution.files[file])
  868. return attribution.files[file].owners;
  869. else
  870. return undefined;
  871. }
  872. function ownersOfFull(file) {
  873. if (attribution.files[file]) {
  874. if (attribution.files[file].owners !== undefined) {
  875. const result = [];
  876. attribution.files[file].owners.forEach(owner => {
  877. result.push(attributionData.people[owner]);
  878. });
  879. return result;
  880. } else {
  881. return [];
  882. }
  883. }
  884. else
  885. return undefined;
  886. }
  887. function sourceOf(file) {
  888. if (attribution.files[file])
  889. return attribution.files[file].source;
  890. else
  891. return undefined;
  892. }
  893. prepareAttribution();