This is an automated email from the ASF dual-hosted git repository.

wanggenhua pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-website.git


The following commit(s) were added to refs/heads/master by this push:
     new 90e2d2d1c4 [Fix] Change `footer` to `Footer`. (#850)
90e2d2d1c4 is described below

commit 90e2d2d1c47a24df6161367dee4cc8d93f4a24ff
Author: Amy0104 <[email protected]>
AuthorDate: Mon Dec 12 16:31:30 2022 +0800

    [Fix] Change `footer` to `Footer`. (#850)
    
    * [Fix] Change `footer` to `Footer`.
    
    * [Fix] Fix dead links.
    
    * [Fix] Fix dead links.
---
 events/en-us/meetup_2019_10_26.md |  10 ++--
 events/zh-cn/meetup_2019_10_26.md |  10 ++--
 src/components/Footer/index.jsx   |  97 ++++++++++++++++++++++++++++++++++
 src/components/Footer/index.scss  | 107 ++++++++++++++++++++++++++++++++++++++
 src/views/Download/Version.jsx    |   9 +++-
 5 files changed, 222 insertions(+), 11 deletions(-)

diff --git a/events/en-us/meetup_2019_10_26.md 
b/events/en-us/meetup_2019_10_26.md
index f947a259ec..36f5f9410d 100644
--- a/events/en-us/meetup_2019_10_26.md
+++ b/events/en-us/meetup_2019_10_26.md
@@ -7,9 +7,9 @@ The meetup was begin at 2:00 pm, and close at about 5:00 pm.
 
 The Agenda is as following:
 
-- Introduction/overview of DolphinScheduler (William-GuoWei 14:00-14:20). 
[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_guowei.pptx)
-- DolphinScheduler internals, fairly technical: how DolphinScheduler works and 
so on (Zhanwei Qiao 14:20-15:00) 
[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_qiaozhanwei.pptx)
-- From open source users to PPMC --- Talking about Me and 
DolphinScheduler(Baoqi Wu from guandata 
15:10-15:50)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/Dolphinescheduler_baoqiwu.pptx)
-- Application and Practice of Dolphin Scheduler in cathay-ins (Zongyao Zhang 
from cathay-ins 
15:50-16:30)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_zhangzongyao.pptx)
-- Recently released features and Roadmap (Lidong Dai 16:30-17:00) 
[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_dailidong.pptx)
+- Introduction/overview of DolphinScheduler (William-GuoWei 14:00-14:20). 
[PPT](/file/2019-10-26/DolphinScheduler_guowei.pptx)
+- DolphinScheduler internals, fairly technical: how DolphinScheduler works and 
so on (Zhanwei Qiao 14:20-15:00) 
[PPT](/file/2019-10-26/DolphinScheduler_qiaozhanwei.pptx)
+- From open source users to PPMC --- Talking about Me and 
DolphinScheduler(Baoqi Wu from guandata 
15:10-15:50)[PPT](/file/2019-10-26/Dolphinescheduler_baoqiwu.pptx)
+- Application and Practice of Dolphin Scheduler in cathay-ins (Zongyao Zhang 
from cathay-ins 
15:50-16:30)[PPT](/file/2019-10-26/DolphinScheduler_zhangzongyao.pptx)
+- Recently released features and Roadmap (Lidong Dai 16:30-17:00) 
[PPT](/file/2019-10-26/DolphinScheduler_dailidong.pptx)
 - Free discussion
diff --git a/events/zh-cn/meetup_2019_10_26.md 
b/events/zh-cn/meetup_2019_10_26.md
index d5e03c2690..02640123db 100644
--- a/events/zh-cn/meetup_2019_10_26.md
+++ b/events/zh-cn/meetup_2019_10_26.md
@@ -7,9 +7,9 @@ Apache Dolphin Scheduler(Incubating) Meetup 会议 2019 年 10 月 26 
日在上
 
 议程如下:
 
-- DolphinScheduler 简介/概述(易观 CTO-郭炜 
14:00-14:20)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_guowei.pptx)
-- DolphinScheduler 内部原理和架构设计(易观-乔占卫 
14:20-15:00)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_qiaozhanwei.pptx)
-- 从开源用户到 PPMC——谈我和 DolphinScheduler(观远数据-吴宝琪 
15:10-15:50)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/Dolphinescheduler_baoqiwu.pptx)
-- DolphinScheduler 在国泰产险的应用与实践 (张宗耀 
15:50-16:30)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_zhangzongyao.pptx)
-- 即将发布的特性和路线图(易观-代立冬 
16:30-17:00)[PPT](https://github.com/apache/dolphinscheduler-website/tree/master/file/2019-10-26/DolphinScheduler_dailidong.pptx)
+- DolphinScheduler 简介/概述(易观 CTO-郭炜 
14:00-14:20)[PPT](/file/2019-10-26/DolphinScheduler_guowei.pptx)
+- DolphinScheduler 内部原理和架构设计(易观-乔占卫 
14:20-15:00)[PPT](/file/2019-10-26/DolphinScheduler_qiaozhanwei.pptx)
+- 从开源用户到 PPMC——谈我和 DolphinScheduler(观远数据-吴宝琪 
15:10-15:50)[PPT](/file/2019-10-26/Dolphinescheduler_baoqiwu.pptx)
+- DolphinScheduler 在国泰产险的应用与实践 (张宗耀 
15:50-16:30)[PPT](/file/2019-10-26/DolphinScheduler_zhangzongyao.pptx)
+- 即将发布的特性和路线图(易观-代立冬 
16:30-17:00)[PPT](/file/2019-10-26/DolphinScheduler_dailidong.pptx)
 - 自由讨论
diff --git a/src/components/Footer/index.jsx b/src/components/Footer/index.jsx
new file mode 100644
index 0000000000..8e1c01abde
--- /dev/null
+++ b/src/components/Footer/index.jsx
@@ -0,0 +1,97 @@
+import { Link } from "react-router-dom";
+import { Divider, Button, Space } from "antd";
+import {
+  GithubOutlined,
+  SlackOutlined,
+  TwitterOutlined,
+} from "@ant-design/icons";
+import { useTranslation } from "../../hooks";
+import { GITHUB_LINK, TWITTER_LINK, SLACK_LINK } from "../../config";
+import "./index.scss";
+
+const Footer = () => {
+  const { locale, t } = useTranslation();
+  return (
+    <footer className="footer">
+      <section className="footer-content">
+        <div className="footer-links">
+          <Link className="footer-link" to={`/${locale}/download`}>
+            {t("download")}
+          </Link>
+          <Divider type="vertical" />
+          <Link className="footer-link" to={`/${locale}/docs`}>
+            {t("doc")}
+          </Link>
+          <Divider type="vertical" />
+          <Link className="footer-link" to={`/${locale}/community`}>
+            {t("community")}
+          </Link>
+          <Divider type="vertical" />
+          <Link className="footer-link" to={`/${locale}/events`}>
+            {t("events")}
+          </Link>
+          <Divider type="vertical" />
+          <Link className="footer-link" to={`/${locale}/blog`}>
+            {t("blog")}
+          </Link>
+          <Divider type="vertical" />
+          <Link className="footer-link" to={`/${locale}/use_case`}>
+            {t("use_case")}
+          </Link>
+          <Divider type="vertical" />
+          <Link className="footer-link" to={`/${locale}/support`}>
+            {t("support")}
+          </Link>
+        </div>
+        <div className="footer-desc">
+          <div className="footer-left">
+            <div className="footer-logo">
+              <div className="footer-logo-white"></div>
+            </div>
+            <div className="footer-copyright">
+              Copyright © 2019-{new Date().getFullYear()} The Apache Software
+              Foundation. Apache DolphinScheduler, DolphinScheduler, and its
+              feather logo are trademarks of The Apache Software Foundation.
+            </div>
+          </div>
+          <div className="footer-right">
+            <div className="footer-contacts">
+              <div className="footer-contacts-label">Contacts</div>
+              <Space>
+                <Button
+                  icon={<GithubOutlined />}
+                  type="text"
+                  size="large"
+                  shape="circle"
+                  href={GITHUB_LINK}
+                  target="_blank"
+                />
+                <Button
+                  icon={<SlackOutlined />}
+                  type="text"
+                  size="large"
+                  shape="circle"
+                  href={SLACK_LINK}
+                  target="_blank"
+                />
+                <Button
+                  icon={<TwitterOutlined />}
+                  type="text"
+                  size="large"
+                  shape="circle"
+                  href={TWITTER_LINK}
+                  target="_blank"
+                />
+              </Space>
+            </div>
+            <div className="footer-email">
+              {`${t("email")}: [email protected]`}
+            </div>
+          </div>
+        </div>
+      </section>
+    </footer>
+  );
+};
+
+export default Footer;
diff --git a/src/components/Footer/index.scss b/src/components/Footer/index.scss
new file mode 100644
index 0000000000..66c8ebf9e8
--- /dev/null
+++ b/src/components/Footer/index.scss
@@ -0,0 +1,107 @@
+@import "../../styles/size.scss";
+@import "../../styles/mixin.scss";
+
+.footer {
+  width: 100%;
+  height: $footer-height;
+  background-color: rgba(14, 66, 183, 1);
+  display: flex;
+  justify-content: center;
+  color: #fff;
+  box-sizing: border-box;
+
+  @media screen and (max-width: 640px) {
+    padding-top: 40px;
+  }
+
+  &-content {
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+
+    @include content-width;
+  }
+
+  &-links {
+    height: 108px;
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+    width: 100%;
+
+    @media screen and (max-width: 640px) {
+      display: none;
+    }
+  }
+
+  &-link {
+    color: var(--white);
+    font-size: 22px;
+    font-weight: bold;
+    text-align: center;
+    text-decoration: none;
+    // &:not(:first-child) {
+    //   padding-left: 55px;
+    // }
+    &:hover {
+      opacity: 0.6;
+    }
+
+    @media screen and (max-width: 640px) {
+      font-size: 12px;
+    }
+  }
+
+  .ant-divider {
+    background-color: var(--white);
+    // margin-right: 55px;
+  }
+
+  &-desc {
+    display: flex;
+    justify-content: space-between;
+    width: 100%;
+  }
+  &-logo-white {
+    width: 244px;
+    height: 48.67px;
+    background-image: url("../../images/logo_white.webp");
+    @include bg-100;
+  }
+  &-copyright {
+    width: 647px;
+    margin-top: 10px;
+
+    @media screen and (max-width: 640px) {
+      width: 100%;
+      font-size: 12px;
+    }
+  }
+  &-right {
+    @media screen and (max-width: 640px) {
+      display: none;
+    }
+  }
+  &-copyright,
+  &-email {
+    color: #ffffff;
+    font-size: 16px;
+    line-height: 30px;
+  }
+  &-email {
+    margin-top: 18px;
+  }
+  &-contacts {
+    display: flex;
+    align-items: center;
+    &-label {
+      font-size: 22px;
+      font-weight: bold;
+      margin-right: 20px;
+    }
+    .anticon {
+      font-size: 26px;
+      color: #fff;
+    }
+  }
+}
diff --git a/src/views/Download/Version.jsx b/src/views/Download/Version.jsx
index 612b1dfd36..7e76363277 100644
--- a/src/views/Download/Version.jsx
+++ b/src/views/Download/Version.jsx
@@ -182,7 +182,14 @@ export const Version = () => {
                 .filter((item, i) => (more ? true : i < 3))
                 .map((item, i) => (
                   <li key={i}>
-                    <Button type="link">v{item}</Button>
+                    <Button
+                      type="link"
+                      onClick={() => {
+                        navigate(`/${params.locale}/download/${item}`);
+                      }}
+                    >
+                      v{item}
+                    </Button>
                   </li>
                 ))}
             </ul>

Reply via email to