feat: add download card for weather arts

- Create a download card component for weather arts
- Include options for premium purchase, medium quality, and a free WebP version
- Ensure proper layout and styling for the download options

This addition enhances the user experience by providing a clear
and organized way to download various versions of the weather
art. It also includes functionality for both paid and free
options, addressing different user needs.
This commit is contained in:
songtianlun 2025-03-24 17:31:05 +08:00
parent c27bab7dc9
commit 6b3d290c4e
3 changed files with 82 additions and 1 deletions

View File

@ -0,0 +1,78 @@
<!-- app/views/shared/_download_card.html.erb -->
<div class="card bg-base-100 shadow-lg mb-8">
<div class="card-body p-5">
<!-- 标题部分 -->
<h3 class="card-title text-lg font-display mb-4 flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5 text-primary" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4" />
</svg>
<%= t("title.download_options") %>
</h3>
<!-- 下载选项区域 -->
<div class="grid grid-cols-1 sm:grid-cols-3 gap-4">
<!-- 付费高级版本 (放在第一位) -->
<div class="card bg-accent/10 shadow-md">
<div class="card-body p-4">
<h4 class="font-semibold flex items-center justify-between">
<%= t("download.premium") %>
<span class="badge badge-accent"><%= t("download.paid") %></span>
</h4>
<p class="text-sm opacity-70 mt-1 mb-3">
<%= t("download.premium_description") %>
</p>
<%= button_to "https://buy.stripe.com/fZe3eA2Mi5n0eUU002",
params: { weather_art_id: weather_art.id },
method: :get,
#method: :post,
class: "btn btn-accent btn-block btn-sm" do %>
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-1" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z" />
</svg>
<%= t("button.buy_now") %>
<% end %>
</div>
</div>
<!-- 中等品质版本 -->
<div class="card bg-base-200 shadow-md">
<div class="card-body p-4">
<h4 class="font-semibold flex items-center justify-between">
<%= t("download.medium_quality") %>
<span class="badge badge-ghost"><%= t("download.free") %></span>
</h4>
<p class="text-sm opacity-70 mt-1 mb-3">
<%= t("download.medium_quality_description") %>
</p>
<%= link_to rails_blob_path(weather_art.preview_image(:big).processed, disposition: "attachment"),
class: "btn btn-outline btn-block btn-sm" do %>
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-1" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4" />
</svg>
<%= t("button.download") %>
<% end %>
</div>
</div>
<!-- 免费 WebP 压缩版 -->
<div class="card bg-base-200 shadow-md">
<div class="card-body p-4">
<h4 class="font-semibold flex items-center justify-between">
<%= t("download.webp_compressed") %>
<span class="badge badge-ghost"><%= t("download.free") %></span>
</h4>
<p class="text-sm opacity-70 mt-1 mb-3">
<%= t("download.webp_compressed_description") %>
</p>
<%= link_to rails_blob_path(weather_art.webp_image.processed, disposition: "attachment"),
class: "btn btn-outline btn-block btn-sm" do %>
<svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4 mr-1" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-4l-4 4m0 0l-4-4m4 4V4" />
</svg>
<%= t("button.download") %>
<% end %>
</div>
</div>
</div>
</div>
</div>

View File

@ -96,6 +96,9 @@
<%= render 'shared/map', city: @weather_art.city %>
</div>
<!-- 下载选项卡片 -->
<%#= render 'shared/download_card', weather_art: @weather_art %>
<!-- 广告区域 -->
<div class="card bg-base-100 shadow-lg mb-8">
<%= render 'shared/auto_ad' %>

View File

@ -1 +1 @@
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--cvFaNt6Zn7ulneMb--D1XmO9xwzRbWSGt4LFCuag==
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--NoWqPB3RsXQtcokp--t2ygZml0sjj/3J3lrKsguQ==