|
9 | 9 | {{ $dbApiUrl = "https://neodb.social/api/catalog/fetch?url=" }} |
10 | 10 | {{ end }} |
11 | 11 |
|
12 | | -{{ $dbFetch := getJSON $dbApiUrl $dbType }} |
13 | 12 |
|
14 | | -{{ if $dbFetch }} |
15 | | - {{ $itemRating := 0 }}{{ with $dbFetch.rating }}{{ $itemRating = . }}{{ end }} |
16 | | - <div class="db-card"> |
17 | | - <div class="db-card-subject"> |
18 | | - <div class="db-card-post"><img loading="lazy" decoding="async" referrerpolicy="no-referrer" src="{{ $dbFetch.cover_image_url }}"></div> |
19 | | - <div class="db-card-content"> |
20 | | - <div class="db-card-title"><a href="{{ $dbUrl }}" class="cute" target="_blank" rel="noreferrer">{{ $dbFetch.title }}</a></div> |
21 | | - <div class="rating"><span class="allstardark"><span class="allstarlight" style="width: {{ mul 10 $itemRating }}%"></span></span><span class="rating_nums">{{ $itemRating }}</span></div> |
22 | | - <div class="db-card-abstract">{{ $dbFetch.brief }}</div> |
| 13 | +{{ $url := printf "%s%s" $dbApiUrl $dbType }} |
| 14 | +{{ $data := dict }} |
| 15 | + |
| 16 | +{{ with resources.GetRemote $url }} |
| 17 | + {{ with .Err }} |
| 18 | + {{ errorf "%s" . }} |
| 19 | + {{ else }} |
| 20 | + {{ $data = . | transform.Unmarshal }} |
| 21 | + {{ if $data }} |
| 22 | + {{ $itemRating := 0 }}{{ with $data.rating }}{{ $itemRating = . }}{{ end }} |
| 23 | + <div class="db-card"> |
| 24 | + <div class="db-card-subject"> |
| 25 | + <div class="db-card-post"><img loading="lazy" decoding="async" referrerpolicy="no-referrer" src="{{ $data.cover_image_url }}"></div> |
| 26 | + <div class="db-card-content"> |
| 27 | + <div class="db-card-title"><a href="{{ $dbUrl }}" class="cute" target="_blank" rel="noreferrer">{{ $data.title }}</a></div> |
| 28 | + <div class="rating"><span class="allstardark"><span class="allstarlight" style="width: {{ mul 10 $itemRating }}%"></span></span><span class="rating_nums">{{ $itemRating }}</span></div> |
| 29 | + <div class="db-card-abstract">{{ $data.brief }}</div> |
| 30 | + </div> |
| 31 | + <div class="db-card-cate">{{ $data.category }}</div> |
| 32 | + </div> |
23 | 33 | </div> |
24 | | - <div class="db-card-cate">{{ $dbFetch.category }}</div> |
25 | | - </div> |
26 | | - </div> |
27 | | -{{else}} |
| 34 | + {{ end }} |
| 35 | + {{ end }} |
| 36 | +{{ else }} |
28 | 37 | <p style="text-align: center;"><small>远程获取内容失败,请检查 API 有效性。</small></p> |
29 | | -{{end}} |
| 38 | + {{ errorf "Unable to get remote resource %q" $url }} |
| 39 | +{{ end }} |
0 commit comments