SyuanYu 1 年之前
父節點
當前提交
dd02172510

+ 1 - 1
src/components/ArticleCard.vue

@@ -25,7 +25,7 @@ const props = defineProps({
   </section>
   <v-card
     variant="outlined"
-    class="d-flex flex-md-row flex-column align-center pa-5"
+    class="d-flex flex-md-row flex-column align-center pa-3 pa-md-5"
   >
     <v-row class="align-center">
       <v-col cols="12" sm="4" v-if="type === 'article'">

+ 1 - 1
src/components/CoursesTutorial.vue

@@ -192,7 +192,7 @@ const navigation = ref({
     </div>
 
     <div class="create-link">
-      <router-link to="/setup-courses/create">
+      <router-link to="/setup-courses">
         {{ t("tutorial.create") }}
       </router-link>
     </div>

+ 1 - 1
src/components/HomeList.vue

@@ -25,7 +25,7 @@ const props = defineProps({
   </section>
   <v-card
     variant="outlined"
-    class="d-flex flex-md-row flex-column align-center pa-5"
+    class="d-flex flex-md-row flex-column align-center pa-3 pa-md-5"
   >
     <v-row class="align-center">
       <!-- <v-col cols="12" sm="4">

+ 131 - 78
src/views/Achievement.vue

@@ -215,89 +215,136 @@ getClass();
         </v-breadcrumbs>
 
         <!-- 生活工藝 -->
-        <v-container class="pa-0 life-list">
+        <v-container class="pa-0 achievement-list">
           <router-link to="/college-group/life/shop">
-            <v-row>
-              <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
-                <img
-                  src="@/assets/img/college-group/life/cover-01.png"
-                  alt="臺灣工藝學習平台"
-                />
-              </v-col>
-              <v-col cols="12" md="8" lg="7" class="content">
-                <h3 class="mb-5">旅物 SHOP</h3>
-                <p>
-                  《旅物 •
-                  SHOP》位於自然生態豐富的臺灣工藝文化園區,明亮穿透的空間設計,連結窗外工藝植物園,到室內的生活工藝選物,這是一間由土地孕育而生的工藝選品店,從採擷、手作,到用物於生活,是材料與手、物與物、人與物、人與人彼此流動交會,共度美好日常的店頭。包含崇尚自然循環,創造生活風格的臺灣在地「臺灣綠工藝」品牌、扶植青年創業的「青年孵化器」、工藝中心開發的周邊商品「品工藝」以及在地咖啡品牌「一日咖啡」等四個子品牌,推廣「自然、循環、平衡、寬容、生命力」的綠工藝精神,更是鼓勵青年實驗開店、青年工藝教育者的孵化平臺。
-                </p>
-              </v-col>
-            </v-row>
+            <div class="item">
+              <v-row>
+                <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
+                  <img
+                    src="@/assets/img/college-group/life/cover-01.png"
+                    alt="旅物 SHOP"
+                  />
+                </v-col>
+                <v-col cols="12" md="8" lg="7">
+                  <section
+                    class="pa-2 pa-sm-5 d-flex flex-column justify-center h-100"
+                  >
+                    <h3 class="mb-5">旅物 SHOP</h3>
+                    <p>
+                      《旅物 •
+                      SHOP》位於自然生態豐富的臺灣工藝文化園區,明亮穿透的空間設計,連結窗外工藝植物園,到室內的生活工藝選物,這是一間由土地孕育而生的工藝選品店,從採擷、手作,到用物於生活,是材料與手、物與物、人與物、人與人彼此流動交會,共度美好日常的店頭。包含崇尚自然循環,創造生活風格的臺灣在地「臺灣綠工藝」品牌、扶植青年創業的「青年孵化器」、工藝中心開發的周邊商品「品工藝」以及在地咖啡品牌「一日咖啡」等四個子品牌,推廣「自然、循環、平衡、寬容、生命力」的綠工藝精神,更是鼓勵青年實驗開店、青年工藝教育者的孵化平臺。
+                    </p>
+                  </section>
+                </v-col>
+              </v-row>
+            </div>
           </router-link>
 
           <router-link to="/college-group/life/craft-journey">
-            <v-row>
-              <v-col cols="12" md="8" lg="7" class="content">
-                <h3 class="mb-10">工藝行旅</h3>
-                <p>
-                  工藝文化深度旅遊,品味在地、標記生活 <br />
-                  打造以工藝為核心的文化深度旅遊路徑,結合工藝體驗、自然風土、地方美食、在地物產、
-                  建築等觀光資源,旅人緩步慢行,暫離喧囂、以手作沉澱自我,發現生命中的寧靜與感動。
-                  現在一起出發,感受工藝行旅的魅力和樂趣!
-                </p>
-              </v-col>
-              <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
-                <img
-                  src="@/assets/img/college-group/life/cover-02.png"
-                  alt="臺灣工藝學習平台"
-                />
-              </v-col>
-            </v-row>
+            <div class="item">
+              <v-row class="flex-column-reverse flex-md-row">
+                <v-col cols="12" md="8" lg="7">
+                  <section
+                    class="pa-2 pa-sm-5 d-flex flex-column justify-center h-100"
+                  >
+                    <h3 class="mb-10">工藝行旅</h3>
+                    <p>
+                      工藝文化深度旅遊,品味在地、標記生活 <br />
+                      打造以工藝為核心的文化深度旅遊路徑,結合工藝體驗、自然風土、地方美食、在地物產、
+                      建築等觀光資源,旅人緩步慢行,暫離喧囂、以手作沉澱自我,發現生命中的寧靜與感動。
+                      現在一起出發,感受工藝行旅的魅力和樂趣!
+                    </p>
+                  </section>
+                </v-col>
+                <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
+                  <img
+                    src="@/assets/img/college-group/life/cover-02.png"
+                    alt="工藝行旅"
+                  />
+                </v-col>
+              </v-row>
+            </div>
           </router-link>
 
           <router-link to="/college-group/life/apprentice/about">
-            <v-row>
-              <v-col cols="12" md="8" lg="7" class="content">
-                <h3 class="mb-10">一日學徒</h3>
-                <p>
-                  全民工藝教育倡議平台|生活 x 手作 x 體驗 <br />
-                  以「手做」,經歷生活中的一切美好! <br />
-                  用「一日」,體會過去師徒制三年四個月的工藝學習精神與態度!
-                  <br />
-                  由工藝教育者親自規畫各類手作工藝課程,隨時提供最新課程資訊,民眾依據喜好選擇課程,
-                  體驗半天或一天的手作工藝學習,尋找就近的工藝教育者學習各種小物知識經驗與技藝。
-                </p>
-              </v-col>
-              <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
-                <img
-                  src="@/assets/img/college-group/life/cover-03.png"
-                  alt="臺灣工藝學習平台"
-                />
-              </v-col>
-            </v-row>
+            <div class="item">
+              <v-row>
+                <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
+                  <img
+                    src="@/assets/img/college-group/life/cover-03.png"
+                    alt="一日學徒"
+                  />
+                </v-col>
+                <v-col cols="12" md="8" lg="7">
+                  <section
+                    class="pa-2 pa-sm-5 d-flex flex-column justify-center h-100"
+                  >
+                    <h3 class="mb-10">一日學徒</h3>
+                    <p>
+                      全民工藝教育倡議平台|生活 x 手作 x 體驗 <br />
+                      以「手做」,經歷生活中的一切美好! <br />
+                      用「一日」,體會過去師徒制三年四個月的工藝學習精神與態度!
+                      <br />
+                      由工藝教育者親自規畫各類手作工藝課程,隨時提供最新課程資訊,民眾依據喜好選擇課程,
+                      體驗半天或一天的手作工藝學習,尋找就近的工藝教育者學習各種小物知識經驗與技藝。
+                    </p>
+                  </section>
+                </v-col>
+              </v-row>
+            </div>
           </router-link>
 
           <router-link to="/college-group/life/campus">
-            <v-row>
-              <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
-                <img
-                  src="@/assets/img/college-group/life/cover-04.png"
-                  alt="臺灣工藝學習平台"
-                />
-              </v-col>
-              <v-col cols="12" md="8" lg="7" class="content">
-                <h3 class="mb-10">校園扎根</h3>
-                <p>
-                  工藝校園扎根計畫以工藝融入學校教育,媒合教師與工藝教育者,跨域合作開發具創造力、觀察力、美學素養、批判思考以及手作體驗的工藝教材教案,實踐工藝之於學習、生活的價值。符合教育部
-                  12 年國教課綱的「核心素養」,以及 STEAM
-                  教育的五大精神「跨領域、動手做、生活應用、解決問題及五感學習」,以「做中學,學中做」培育新世代的工藝人才。
-                </p>
-              </v-col>
-            </v-row>
+            <div class="item">
+              <v-row class="flex-column-reverse flex-md-row align-center">
+                <v-col cols="12" md="8" lg="7">
+                  <section
+                    class="pa-2 pa-sm-5 d-flex flex-column justify-center h-100"
+                  >
+                    <h3 class="mb-10">校園扎根</h3>
+                    <p>
+                      工藝校園扎根計畫以工藝融入學校教育,媒合教師與工藝教育者,跨域合作開發具創造力、觀察力、美學素養、批判思考以及手作體驗的工藝教材教案,實踐工藝之於學習、生活的價值。符合教育部
+                      12 年國教課綱的「核心素養」,以及 STEAM
+                      教育的五大精神「跨領域、動手做、生活應用、解決問題及五感學習」,以「做中學,學中做」培育新世代的工藝人才。
+                    </p>
+                  </section>
+                </v-col>
+                <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
+                  <img
+                    src="@/assets/img/college-group/life/cover-04.png"
+                    alt="校園扎根"
+                  />
+                </v-col>
+              </v-row>
+            </div>
+          </router-link>
+
+          <router-link to="/college-group/craft-for-all">
+            <div class="item">
+              <v-row>
+                <v-col cols="12" md="4" lg="5" class="pa-0 overflow-hidden">
+                  <img
+                    src="@/assets/img/home/臺灣綠工藝希望工程.png"
+                    alt="希望工程"
+                  />
+                </v-col>
+                <v-col cols="12" md="8" lg="7">
+                  <section
+                    class="pa-2 pa-sm-5 d-flex flex-column justify-center h-100"
+                  >
+                    <h3 class="mb-10">希望工程</h3>
+                    <p>
+                      以工藝為媒介,實踐社會價值功能。臺灣工藝學習平台啟動「臺灣綠工藝希望工程」,本於自然、循環、平衡、寬容、生命力等綠工藝精神,融合人文關懷,深化工藝與社會的互動連結,為所有人帶來「希望‧療癒‧陪伴」的力量。
+                    </p>
+                  </section>
+                </v-col>
+              </v-row>
+            </div>
           </router-link>
         </v-container>
 
         <!-- 希望工程 -->
-        <div class="cfa-content">
+        <!-- <div class="cfa-content">
           <div class="title">
             <h2>{{ t("about_craft_for_all") }}</h2>
           </div>
@@ -448,7 +495,7 @@ getClass();
             rounded="circle"
             class="mt-16"
           ></v-pagination>
-        </div>
+        </div> -->
       </div>
     </v-container>
   </div>
@@ -521,8 +568,8 @@ p {
   }
 }
 
-/* 生活工藝 */
-.life-list {
+/* 成果展現 */
+.achievement-list {
   margin-top: 6.25em;
 
   @media (max-width: 600px) {
@@ -530,16 +577,22 @@ p {
   }
 
   a {
-    display: block;
-    margin: 3.125em 0;
-    border: 0.125em solid var(--purple);
-    border-radius: 1.25em;
-    overflow: hidden;
     &:hover {
       img {
         transform: scale(1.1);
       }
     }
+
+    .v-row {
+      margin: 0 !important;
+    }
+
+    .item {
+      margin: 3.125em 0;
+      overflow: hidden;
+      border-radius: 1.25em;
+      border: 0.125em solid var(--purple);
+    }
   }
 
   h3 {
@@ -557,7 +610,7 @@ p {
       height: 23.125em;
     }
     @media (max-width: 600px) {
-      height: 12.5em;
+      height: 12em;
     }
   }
 

+ 1 - 1
src/views/CollegeGroup/Teenager.vue

@@ -140,7 +140,7 @@ const categoryList = reactive([
           </section>
           <v-card
             variant="outlined"
-            class="d-flex flex-md-row flex-column align-center pa-5"
+            class="d-flex flex-md-row flex-column align-center pa-3 pa-md-5"
           >
             <v-row class="align-center">
               <v-col cols="12">

+ 19 - 8
src/views/Courses/Create.vue

@@ -1323,6 +1323,14 @@ let consent_2 = ref(false);
                               工藝教育者介紹<span class="mark">*</span>
                             </p>
                             <v-textarea
+                              v-model="resume.introduction"
+                              rows="5"
+                              variant="outlined"
+                              maxlength="150"
+                              counter
+                            ></v-textarea>
+                            <!-- 暫時隱藏 -->
+                            <!-- <v-textarea
                               v-model="resume.introduction"
                               :rules="[
                                 (value) =>
@@ -1334,7 +1342,7 @@ let consent_2 = ref(false);
                               hint="文字長度不得低於 50 個字元,最多 150 個字元"
                               maxlength="150"
                               counter
-                            ></v-textarea>
+                            ></v-textarea> -->
                           </v-label>
                         </v-col>
                       </v-row>
@@ -2480,6 +2488,13 @@ let consent_2 = ref(false);
                           {{ t("form.content_requirements") }}</small
                         >
                         <v-textarea
+                          v-model="course.introduction"
+                          rows="5"
+                          variant="outlined"
+                          counter
+                        ></v-textarea>
+                        <!-- 暫時隱藏 -->
+                        <!-- <v-textarea
                           v-model="course.introduction"
                           rows="5"
                           variant="outlined"
@@ -2489,7 +2504,7 @@ let consent_2 = ref(false);
                               '請至少輸入 50 個字元,以確保內容完整性',
                           ]"
                           counter
-                        ></v-textarea>
+                        ></v-textarea> -->
                       </v-label>
                     </v-col>
 
@@ -2690,12 +2705,8 @@ let consent_2 = ref(false);
                         {{ t("form.choose_image") }}
                       </v-btn>
 
-                      <div class="step-01 image-preview">
-                        <img
-                          v-if="coverImg"
-                          :src="coverImgUrl"
-                          alt="上傳圖片預覽"
-                        />
+                      <div v-if="coverImg" class="step-01 image-preview">
+                        <img :src="coverImgUrl" alt="上傳圖片預覽" />
                       </div>
 
                       <!-- <v-row class="img-list">

+ 26 - 3
src/views/Courses/Proposal.vue

@@ -779,6 +779,15 @@ function removeTeacher(index) {
                       <span class="mark">*</span>
                     </p>
                     <v-textarea
+                      v-model="location.school_introduction"
+                      rows="5"
+                      variant="outlined"
+                      placeholder="請輸入工坊簡介"
+                      maxlength="150"
+                      counter
+                    ></v-textarea>
+                    <!-- 暫時隱藏 -->
+                    <!-- <v-textarea
                       v-model="location.school_introduction"
                       :rules="[
                         (value) =>
@@ -791,7 +800,7 @@ function removeTeacher(index) {
                       hint="文字長度不得低於 50 個字元,最多 150 個字元"
                       maxlength="150"
                       counter
-                    ></v-textarea>
+                    ></v-textarea> -->
                   </v-label>
                 </v-col>
 
@@ -1010,6 +1019,14 @@ function removeTeacher(index) {
                               }}<span class="mark">*</span>
                             </p>
                             <v-textarea
+                              v-model="resume.introduction"
+                              rows="5"
+                              variant="outlined"
+                              maxlength="150"
+                              counter
+                            ></v-textarea>
+                            <!-- 暫時隱藏 -->
+                            <!-- <v-textarea
                               v-model="resume.introduction"
                               :rules="[
                                 (value) =>
@@ -1021,7 +1038,7 @@ function removeTeacher(index) {
                               hint="文字長度不得低於 50 個字元,最多 150 個字元"
                               maxlength="150"
                               counter
-                            ></v-textarea>
+                            ></v-textarea> -->
                           </v-label>
                         </v-col>
                       </v-row>
@@ -1343,12 +1360,18 @@ function removeTeacher(index) {
                       v-model="proposal.introduction"
                       rows="5"
                       variant="outlined"
+                    ></v-textarea>
+                    <!-- 暫時隱藏 -->
+                    <!-- <v-textarea
+                      v-model="proposal.introduction"
+                      rows="5"
+                      variant="outlined"
                       :rules="[
                         (value) =>
                           (value && value.length >= 50) ||
                           '請至少輸入 50 個字元,以確保內容完整性',
                       ]"
-                    ></v-textarea>
+                    ></v-textarea> -->
                   </v-label>
 
                   <!-- <v-label class="d-block mb-5">

+ 2 - 2
src/views/Crafts.vue

@@ -157,7 +157,7 @@ const viewerRef = ref(null);
 
 function updatePDF(name) {
   // 更新 pdf 後移除網址參數
-  router.replace({ path: "/crafts" });
+  // router.replace({ path: "/crafts" });
   fileName.value = name;
   if (!store.isMobile) {
     setTimeout(() => {
@@ -761,7 +761,7 @@ const restorationArticles = reactive({
           </v-row>
 
           <!-- 修護故事 -->
-          <h2 id="bookList" class="mb-16">{{ t("restoration_story") }}</h2>
+          <h2 class="mb-16">{{ t("restoration_story") }}</h2>
 
           <ul class="story-list">
             <li

+ 20 - 8
src/views/Home.vue

@@ -433,7 +433,7 @@ let closeBanner = ref(false);
           </section>
           <v-card
             variant="outlined"
-            class="d-flex flex-md-row flex-column align-center pa-5"
+            class="d-flex flex-md-row flex-column align-center pa-3 pa-md-5"
           >
             <v-row class="align-center">
               <v-col cols="12">
@@ -462,7 +462,7 @@ let closeBanner = ref(false);
 
     <h2 class="my-10 title">{{ t("home.title_2") }}</h2>
     <v-row>
-      <v-col cols="6" md="4">
+      <!-- <v-col cols="6" md="4">
         <router-link to="/college-group/future" class="img-info">
           <img
             src="@/assets/img/home/首頁元素-12.webp"
@@ -472,7 +472,7 @@ let closeBanner = ref(false);
             <p>{{ t("college_group_1") }}</p>
           </section>
         </router-link>
-      </v-col>
+      </v-col> -->
       <v-col cols="6" md="4">
         <router-link to="/college-group/craft" class="img-info">
           <img
@@ -496,6 +496,17 @@ let closeBanner = ref(false);
         </router-link>
       </v-col>
       <v-col cols="6" md="4">
+        <router-link to="/achievement" class="img-info">
+          <img
+            src="@/assets/img/home/首頁元素-12.webp"
+            alt="臺灣工藝學習平台"
+          />
+          <section>
+            <p>成果展現</p>
+          </section>
+        </router-link>
+      </v-col>
+      <!-- <v-col cols="6" md="4">
         <router-link to="/college-group/online" class="img-info">
           <img
             src="@/assets/img/home/首頁元素-09.webp"
@@ -505,8 +516,8 @@ let closeBanner = ref(false);
             <p>{{ t("college_group_4") }}</p>
           </section>
         </router-link>
-      </v-col>
-      <v-col cols="6" md="4">
+      </v-col> -->
+      <!-- <v-col cols="6" md="4">
         <router-link to="/college-group/craft-for-all" class="img-info">
           <img
             src="@/assets/img/home/臺灣綠工藝希望工程.png"
@@ -516,8 +527,8 @@ let closeBanner = ref(false);
             <p>{{ t("college_group_5") }}</p>
           </section>
         </router-link>
-      </v-col>
-      <v-col cols="6" md="4">
+      </v-col> -->
+      <!-- <v-col cols="6" md="4">
         <router-link to="/college-group/life" class="img-info">
           <img
             src="@/assets/img/home/首頁元素-07.webp"
@@ -527,7 +538,7 @@ let closeBanner = ref(false);
             <p>{{ t("college_group_6") }}</p>
           </section>
         </router-link>
-      </v-col>
+      </v-col> -->
     </v-row>
 
     <div class="map-block">
@@ -902,6 +913,7 @@ let closeBanner = ref(false);
     object-fit: cover;
   }
   .logo {
+    width: 100%;
     max-width: 600px;
     position: absolute;
     z-index: 10;

+ 1 - 1
src/views/News.vue

@@ -230,7 +230,7 @@ const categoryList = reactive([
             </section>
             <v-card
               variant="outlined"
-              class="d-flex flex-md-row flex-column align-center pa-5"
+              class="d-flex flex-md-row flex-column align-center pa-3 pa-md-5"
             >
               <v-row class="align-center">
                 <v-col cols="12" sm="4">

+ 19 - 5
src/views/User/Courses.vue

@@ -1151,9 +1151,7 @@ async function closeClass(id) {
       <small class="ms-3">清除</small>
     </div> -->
 
-    <div
-      class="d-flex flex-column flex-sm-row justify-center tab-btn mt-5"
-    >
+    <div class="d-flex flex-column flex-sm-row justify-center tab-btn mt-5">
       <v-btn
         variant="text"
         @click="selectTag('all')"
@@ -1410,6 +1408,15 @@ async function closeClass(id) {
                                     <span class="mark">*</span>
                                   </p>
                                   <v-textarea
+                                    v-model="location.introduction"
+                                    rows="5"
+                                    variant="outlined"
+                                    placeholder="請輸入工坊簡介"
+                                    maxlength="150"
+                                    counter
+                                  ></v-textarea>
+                                  <!-- 暫時隱藏 -->
+                                  <!-- <v-textarea
                                     v-model="location.introduction"
                                     rows="5"
                                     variant="outlined"
@@ -1422,7 +1429,7 @@ async function closeClass(id) {
                                         (value && value.length >= 50) ||
                                         '請至少輸入 50 個字元,以確保內容完整性',
                                     ]"
-                                  ></v-textarea>
+                                  ></v-textarea> -->
                                 </v-label>
                               </v-card-text>
                               <v-card-actions class="d-flex justify-center">
@@ -1603,6 +1610,13 @@ async function closeClass(id) {
                                         {{ t("form.content_requirements") }}
                                       </small>
                                       <v-textarea
+                                        v-model="course.introduction"
+                                        rows="5"
+                                        variant="outlined"
+                                        counter
+                                      ></v-textarea>
+                                      <!-- 暫時隱藏 -->
+                                      <!-- <v-textarea
                                         v-model="course.introduction"
                                         rows="5"
                                         variant="outlined"
@@ -1612,7 +1626,7 @@ async function closeClass(id) {
                                             '請至少輸入 50 個字元,以確保內容完整性',
                                         ]"
                                         counter
-                                      ></v-textarea>
+                                      ></v-textarea> -->
                                     </v-label>
                                   </v-col>