2 Commitit ba12a6c81f ... cc5f8decaa

Tekijä SHA1 Viesti Päivämäärä
  osbert cc5f8decaa Merge branch 'TPE/feat/newLoginUI' into TPE/develop5.0 4 vuotta sitten
  osbert d590b8dbd8 更換首頁IES5Logo&首頁語系&行銷共用組件 4 vuotta sitten

+ 113 - 0
TEAMModelFunction/Properties/ServiceDependencies/TEAMModel-Test - Zip 部署/profile.arm.json

@@ -0,0 +1,113 @@
+{
+  "$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
+  "contentVersion": "1.0.0.0",
+  "metadata": {
+    "_dependencyType": "appService.windows"
+  },
+  "parameters": {
+    "resourceGroupName": {
+      "type": "string",
+      "defaultValue": "TEAMModelRG-Test",
+      "metadata": {
+        "description": "Name of the resource group for the resource. It is recommended to put resources under same resource group for better tracking."
+      }
+    },
+    "resourceGroupLocation": {
+      "type": "string",
+      "defaultValue": "japaneast",
+      "metadata": {
+        "description": "Location of the resource group. Resource groups could have different location than resources, however by default we use API versions from latest hybrid profile which support all locations for resource types we support."
+      }
+    },
+    "resourceName": {
+      "type": "string",
+      "defaultValue": "TEAMModel-Test",
+      "metadata": {
+        "description": "Name of the main resource to be created by this template."
+      }
+    },
+    "resourceLocation": {
+      "type": "string",
+      "defaultValue": "[parameters('resourceGroupLocation')]",
+      "metadata": {
+        "description": "Location of the resource. By default use resource group's location, unless the resource provider is not supported there."
+      }
+    }
+  },
+  "variables": {
+    "appServicePlan_name": "[concat('Plan', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
+    "appServicePlan_ResourceId": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', parameters('resourceGroupName'), '/providers/Microsoft.Web/serverFarms/', variables('appServicePlan_name'))]"
+  },
+  "resources": [
+    {
+      "type": "Microsoft.Resources/resourceGroups",
+      "name": "[parameters('resourceGroupName')]",
+      "location": "[parameters('resourceGroupLocation')]",
+      "apiVersion": "2019-10-01"
+    },
+    {
+      "type": "Microsoft.Resources/deployments",
+      "name": "[concat(parameters('resourceGroupName'), 'Deployment', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
+      "resourceGroup": "[parameters('resourceGroupName')]",
+      "apiVersion": "2019-10-01",
+      "dependsOn": [
+        "[parameters('resourceGroupName')]"
+      ],
+      "properties": {
+        "mode": "Incremental",
+        "template": {
+          "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+          "contentVersion": "1.0.0.0",
+          "resources": [
+            {
+              "location": "[parameters('resourceLocation')]",
+              "name": "[parameters('resourceName')]",
+              "type": "Microsoft.Web/sites",
+              "apiVersion": "2015-08-01",
+              "tags": {
+                "[concat('hidden-related:', variables('appServicePlan_ResourceId'))]": "empty"
+              },
+              "dependsOn": [
+                "[variables('appServicePlan_ResourceId')]"
+              ],
+              "kind": "app",
+              "properties": {
+                "name": "[parameters('resourceName')]",
+                "kind": "app",
+                "httpsOnly": true,
+                "reserved": false,
+                "serverFarmId": "[variables('appServicePlan_ResourceId')]",
+                "siteConfig": {
+                  "metadata": [
+                    {
+                      "name": "CURRENT_STACK",
+                      "value": "dotnetcore"
+                    }
+                  ]
+                }
+              },
+              "identity": {
+                "type": "SystemAssigned"
+              }
+            },
+            {
+              "location": "[parameters('resourceLocation')]",
+              "name": "[variables('appServicePlan_name')]",
+              "type": "Microsoft.Web/serverFarms",
+              "apiVersion": "2015-08-01",
+              "sku": {
+                "name": "S1",
+                "tier": "Standard",
+                "family": "S",
+                "size": "S1"
+              },
+              "properties": {
+                "name": "[variables('appServicePlan_name')]"
+              }
+            }
+          ]
+        }
+      }
+    }
+  ]
+}

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 1 - 0
TEAMModelOS/ClientApp/src/assets/ies5_logo_2.svg


+ 3 - 0
TEAMModelOS/ClientApp/src/boot-app.js

@@ -139,6 +139,9 @@ Vue.use(ViewUI, {
     i18n: (key, value) => i18n.t(key, value)
 })
 
+//head title
+document.title = i18n.t('headTitle')
+
 sync(store, router)
 
 const app = new Vue({

+ 1 - 1
TEAMModelOS/ClientApp/src/components/public/frontEndMain/Index.less

@@ -23,7 +23,7 @@
             .schoolName{
                 text-align: left;
                 color: #e0e0e0;
-                font-size: 17px;
+                font-size: 19px;
                 overflow: hidden;
                 white-space: nowrap;
                 text-overflow: ellipsis;

+ 1 - 1
TEAMModelOS/ClientApp/src/components/public/frontEndMain/Index.vue

@@ -48,7 +48,7 @@
   <div id="login" class="login">
     <div class="login-sky">
       <div class="login-sky-mark">
-        <img width="100" src="@/assets/ies5_logo.svg">        
+        <img width="100" src="@/assets/ies5_logo_2.svg">        
         <div class="schoolName">          
           {{ schoolName ? schoolName : $t('login.title.ies5') }}
         </div>

+ 2 - 1
TEAMModelOS/ClientApp/src/locale/lang/en-US/index.js

@@ -88,5 +88,6 @@ export default {
     term: 'Choose to focus on the school year',
     term: 'Please select your academic year',
     compare: 'Choose data comparison'
-  }
+  },
+  headTitle: '醍摩豆雲平台 TEAM Model Cloud'
 }

+ 45 - 12
TEAMModelOS/ClientApp/src/locale/lang/en-US/login.js

@@ -4,15 +4,17 @@ export default {
         IDLogin: '醍摩豆帳號登入',
         QRLogin: 'QRCode 掃瑪登入',
         schoolLogin: '校內帳號登入',
-        ies5: '醍摩豆平台'
+        ies5: '醍摩豆平台'
     },
     subTitle: {
         IDLogin: '登入IES智慧教學服務,即刻存取雲端服務',
-        QRLogin: '使用HiTA或AClassONE掃描進行登入',
-        schoolLogin: '由學校同一分配給學生使用的帳號登入口'
+        QRLogin: '使用HiTA5掃描進行登入',
+        schoolLogin: '由學校统一分配給學生使用的帳號登入口',
+        selectType: '請選擇您的身份進行登入',
+        studentIDLogin: '由學生自主申請的醍摩豆帳號登入口'
     },
     serAdress: {
-        China: '中國',
+        China: '大陸',
         Global: '全球'
     },
     tooltip: {
@@ -29,8 +31,10 @@ export default {
     link: {
         QRLogin: 'QRCode登入',
         IDLogin: '帳號登入',
-        regist: '免费注册',
-        forgetPsw: '忘記密碼'
+        regist: '免費註冊',
+        forgetPsw: '忘記密碼',
+        if: '還沒有帳號嗎?',
+        click: '點此'
     },
     communy:{
         title: '或下列方式登入',
@@ -43,13 +47,42 @@ export default {
     },
     sse:{
         error:{
-            text1: '快速登入code 效'
+            text1: '快速登入code 效'
         },
-        text1: 'IES5智慧服平台'
+        text1: 'IES5智慧服平台'
     },
     modal: {
-        title: '选择身份',
-        btn1: '老师',
-        btn2: '学生'
-    }
+        title: '選擇身份',
+        btn1: '老師',
+        btn2: '學生'
+    },
+    type:{
+        teacher: '教師身份',
+        teacherLogin: '教師身份登入',
+        student: '學生身份',
+        studentLogin: '學生身份登入',
+        teacherCont: '以教師身份登入IES 5智慧教學服務,即刻存取雲端服務',
+        studentCont: '以學生身份登入AClass ONE智慧學伴服務,完成學習任務與測驗'
+    },
+    marketing:{
+        title:{
+            text1_1: '歡迎來到醍摩豆 5',
+            text1_2: '新時代智慧教育之旅 就此展開',
+        },
+        subTitle:{
+            text1: 'HiTeach 5 智慧教學系統',
+            text2: '醍摩豆雲平台 IES 5'
+        },
+        cont:{
+            text1: '實踐差異化教學,現代化因材施教',
+            text2: '線上線下,混和式教學系統首選',
+            text3: '合作學習,素養導向教學的全面應用',
+            text4: '看見每個學生思考',
+            text5: '新架構與新技術,速度升級更有感',
+            text6: '兼容各式媒體與檔案,雲端資源庫隨取即用',
+            text7: '題庫組卷、閱卷系統,評量應用更多元',
+            text8: '博拉圖學情分析,學生成績精準提升',
+            text9: '了解更多關於醍摩豆 5 ',
+        }
+    }    
 }

+ 2 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/index.js

@@ -99,5 +99,6 @@ export default {
     term: '选择关注学年期',
     term: '请选择学年期',
     compare: '选择数据对比'
-  }
+  },
+  headTitle: '醍摩豆云平台 TEAM Model Cloud'  
 }

+ 43 - 10
TEAMModelOS/ClientApp/src/locale/lang/zh-CN/login.js

@@ -1,36 +1,40 @@
 export default {
     title: {
         ser: '数据中心位置',
-        IDLogin: '醍摩豆号登入',
+        IDLogin: '醍摩豆号登入',
         QRLogin: 'QRCode 扫玛登入',
         schoolLogin: '校内帐号登入',
         ies5: '醍摩豆云平台'
     },
     subTitle: {
         IDLogin: '登入IES智慧教学服务,即刻存取云端服务',
-        QRLogin: '使用HiTA或AClassONE扫描进行登入',
-        schoolLogin: '由学校统一分配给学生使用的账号登入口'
+        QRLogin: '使用HiTA5扫描进行登入',
+        schoolLogin: '由学校统一分配给学生使用的帐号登入口',
+        selectType: '请选择您的身份进行登入',
+        studentIDLogin: '由学生自主申请的醍摩豆帐号登入口'
     },
     serAdress: {
-        China: '大',
+        China: '大',
         Global: '全球'
     },
     tooltip: {
-        text1: '藉由完整的醍摩豆号体验教师的多校教学资源与课程串联,以及学生的在升学过程中产生的完整学习历程。 ',
-        text2: '使用学校提供的学生专属号与密码登入本校,体验本校提供的活动、缴交作业或参与考试等任务。 '
+        text1: '藉由完整的醍摩豆号体验教师的多校教学资源与课程串联,以及学生的在升学过程中产生的完整学习历程。 ',
+        text2: '使用学校提供的学生专属号与密码登入本校,体验本校提供的活动、缴交作业或参与考试等任务。 '
     },
     placeholder: {
         id : '醍摩豆ID / 手机号码 / E-Mail',
         psw: '密码',
         schoolMenu: '选择学校',
-        schoolID : '号',
+        schoolID : '号',
         schoolPsw: '密码'
     },
     link: {
         QRLogin: 'QRCode登入',
-        IDLogin: '号登入',
+        IDLogin: '号登入',
         regist: '免费注册',
-        forgetPsw: '忘记密码'
+        forgetPsw: '忘记密码',
+        if: '还没有帐号吗?',
+        click: '点此'
     },
     communy:{
         title: '或下列方式登入',
@@ -39,7 +43,7 @@ export default {
         wechat: 'WeChat',
     },
     apiError:{
-        text1:'您的账号或密码不正确'
+        text1: '您的 帐号 或 密码 不正确'
     },
     sse:{
         error:{
@@ -51,5 +55,34 @@ export default {
         title: '选择身份',
         btn1: '老师',
         btn2: '学生'
+    },
+    type:{
+        teacher: '教师身份',
+        teacherLogin: '教师身份登入',
+        student: '学生身份',
+        studentLogin: '学生身份登入',
+        teacherCont: '以教师身份登入IES 5智慧教学服务,即刻存取云端服务',
+        studentCont: '以学生身份登入AClass ONE智慧学伴服务,完成学习任务与测验'
+    },
+    marketing:{
+        title:{
+            text1_1: '欢迎来到醍摩豆 5',
+            text1_2: '新时代智慧教育之旅 就此展开',
+        },
+        subTitle:{
+            text1: 'HiTeach 5 智慧教学系统',
+            text2: '醍摩豆云平台 IES 5'
+        },
+        cont:{
+            text1: '实践差异化教学,现代化因材施教',
+            text2: '线上线下,混和式教学系统首选',
+            text3: '合作学习,素养导向教学的全面应用',
+            text4: '看见每个学生思考',
+            text5: '新架构与新技术,速度升级更有感',
+            text6: '兼容各式媒体与档案,云端资源库随取即用',
+            text7: '题库组卷、阅卷系统,评量应用更多元',
+            text8: '博拉图学情分析,学生成绩精准提升',
+            text9: '了解更多关于醍摩豆 5 ',
+        }
     }
 }

+ 2 - 1
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/index.js

@@ -100,5 +100,6 @@ export default {
     term: '選擇關注學年期',
     term: '請選擇學年期',
     compare: '選擇數據對比'
-  }
+  },
+  headTitle: '醍摩豆雲平台 TEAM Model Cloud'
 }

+ 37 - 4
TEAMModelOS/ClientApp/src/locale/lang/zh-TW/login.js

@@ -9,7 +9,9 @@ export default {
     subTitle: {
         IDLogin: '登入IES智慧教學服務,即刻存取雲端服務',
         QRLogin: '使用HiTA5掃描進行登入',
-        schoolLogin: '由學校统一分配給學生使用的帳號登入口'
+        schoolLogin: '由學校统一分配給學生使用的帳號登入口',
+        selectType: '請選擇您的身份進行登入',
+        studentIDLogin: '由學生自主申請的醍摩豆帳號登入口'
     },
     serAdress: {
         China: '大陸',
@@ -30,7 +32,9 @@ export default {
         QRLogin: 'QRCode登入',
         IDLogin: '帳號登入',
         regist: '免費註冊',
-        forgetPsw: '忘記密碼'
+        forgetPsw: '忘記密碼',
+        if: '還沒有帳號嗎?',
+        click: '點此'
     },
     communy:{
         title: '或下列方式登入',
@@ -48,8 +52,37 @@ export default {
         text1: 'IES5智慧服務平台'
     },
     modal: {
-        title: '選擇身',
+        title: '選擇身',
         btn1: '老師',
         btn2: '學生'
-    }
+    },
+    type:{
+        teacher: '教師身份',
+        teacherLogin: '教師身份登入',
+        student: '學生身份',
+        studentLogin: '學生身份登入',
+        teacherCont: '以教師身份登入IES 5智慧教學服務,即刻存取雲端服務',
+        studentCont: '以學生身份登入AClass ONE智慧學伴服務,完成學習任務與測驗'
+    },
+    marketing:{
+        title:{
+            text1_1: '歡迎來到醍摩豆 5',
+            text1_2: '新時代智慧教育之旅 就此展開',
+        },
+        subTitle:{
+            text1: 'HiTeach 5 智慧教學系統',
+            text2: '醍摩豆雲平台 IES 5'
+        },
+        cont:{
+            text1: '實踐差異化教學,現代化因材施教',
+            text2: '線上線下,混和式教學系統首選',
+            text3: '合作學習,素養導向教學的全面應用',
+            text4: '看見每個學生思考',
+            text5: '新架構與新技術,速度升級更有感',
+            text6: '兼容各式媒體與檔案,雲端資源庫隨取即用',
+            text7: '題庫組卷、閱卷系統,評量應用更多元',
+            text8: '博拉圖學情分析,學生成績精準提升',
+            text9: '了解更多關於醍摩豆 5 ',
+        }
+    }    
 }

+ 2 - 58
TEAMModelOS/ClientApp/src/view/login/Index.less

@@ -9,64 +9,7 @@
             display: flex;
             flex-direction: column;
             justify-content: center;
-            align-items: center;
-            .marketing{
-                .title{
-                    font-size: 40px;
-                    color: #ffffff;
-                    line-height: 1.1;
-                    letter-spacing: 1px;
-                    font-weight: 600;
-                }
-                .cont{
-                    margin-top: 30px;
-                    margin-left: 15px;
-                    &-title{
-                        font-size: 26px;
-                        color: #ffffff;
-                        line-height: 1.1;
-                        font-weight: 500;
-                        margin-bottom: 7px;
-                        letter-spacing: 1px;
-                    }
-                    &-text{
-                        font-size: 16px;
-                        margin-bottom: 3px;
-                        color: #9e9e9e;
-                        letter-spacing: 1px;
-                        &.border1:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(222,92,83);
-                        }
-                        &.border2:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(252,220,107);
-                        }
-                        &.border3:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(37,202,146);
-                        }
-                        &.border4:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(62,174,254);
-                        }
-                    }
-                }
-                .link{
-                    margin-top: 50px;
-                    a{
-                        color: #2972a9;
-                    }
-                }
-            }            
+            align-items: center;          
         }
         &-right{
             width: 45%;
@@ -95,6 +38,7 @@
                     border-right: 5px solid #3dadff;
                     margin-bottom: 25px;
                     cursor: pointer;
+                    box-shadow: 11px 9px 2px #00000080;
                     &-icon{
                         width: 20%;
                         float: left;

+ 10 - 42
TEAMModelOS/ClientApp/src/view/login/Index.vue

@@ -45,41 +45,19 @@
 <template>
   <div class="loginDiv">
     <div class="loginDiv-block loginDiv-block-left">
-      <div class="marketing">
-        <div class="title">
-          歡迎來到醍摩豆 5<br/>
-          新時代智慧教育之旅 就此展開
-        </div>
-        <div class="cont">
-          <div class="cont-title">Hiteach 5 智慧教育系統</div>
-          <p class="cont-text border1" >實際差異化教學,現代化因材施教</p>
-          <p class="cont-text border2" >線上線下,混和式教學系統首選</p>
-          <p class="cont-text border3" >合作學習,素養導向教學的全面應用</p>
-          <p class="cont-text border4" >看見每個學生思考</p>
-        </div>
-        <div class="cont">
-          <div class="cont-title">醍摩豆雲平台 IES 5</div>
-          <p class="cont-text border1" >新架構與新技術,速度升級更有感</p>
-          <p class="cont-text border2" >兼容各式媒體與檔案,雲端資源庫隨取即用</p>
-          <p class="cont-text border3" >題庫組卷、閱卷系統,評量應用更多元</p>
-          <p class="cont-text border4" >柏拉圖學情分析,學生成績精準提升</p>
-        </div>
-        <div class="link">
-          <a target="_block" :href="tmdurl">了解更多關於醍摩豆 5 <Icon size="19" type="ios-arrow-forward" /></a>
-        </div>
-      </div>
+      <Marketing/>
     </div>
     <div class="loginDiv-block loginDiv-block-right">
       <div class="logintype">
-        <span class="title">請選擇您的身分進行登入</span>
+        <span class="title">{{$t('login.subTitle.selectType')}}</span>
         <div class="login-box" @click="loginTo('teacher')">
           <div class="login-box-icon">
             <img width="40" src="@/assets/icon_teacher.svg">
           </div>
           <div class="login-box-cont">
             <div class="main">
-              <span class="subtitle">教師身分</span>
-              以教師身分登入IES 5智慧教學服務,即刻存取雲端服務
+              <span class="subtitle">{{$t('login.type.teacher')}}</span>
+              {{$t('login.type.teacherCont')}}
             </div>
             <Icon color="#bdbdbd" size="35" type="ios-arrow-forward" />
           </div>
@@ -90,14 +68,14 @@
           </div>
           <div class="login-box-cont">
             <div class="main">
-              <span class="subtitle">學生身分</span>
-              以學生身分登入Aclass ONE智慧學伴服務,完成學習任務與測驗
+              <span class="subtitle">{{$t('login.type.student')}}</span>
+              {{$t('login.type.studentCont')}}
             </div>
             <Icon color="#bdbdbd" size="35" type="ios-arrow-forward" />
           </div>
         </div>
         <div class="link" style="text-align: right; letter-spacing: 1px;">
-          <span style="margin-right: 20px;">還沒有帳號嗎?</span>點此<router-link style="text-decoration: underline;color:#2972a9;" to="/regist">{{ $t('login.link.regist') }}</router-link>
+          <span style="margin-right: 20px;">{{ $t('login.link.if') }}</span>{{ $t('login.link.click') }}<router-link style="text-decoration: underline;color:#2972a9;" to="/regist">{{ $t('login.link.regist') }}</router-link>
         </div>
       </div>
     </div>
@@ -114,9 +92,11 @@
 </template>
 <script>
 import { User } from '@/service/User'
-import { Teacher } from './page/Teacher'
 
 export default {
+  components: {
+    Marketing: () => import('./components/marketing/Index.vue')
+  },
   data() {
     return {
       defaultSchool: {
@@ -131,9 +111,6 @@ export default {
       lang: localStorage.getItem('local'),
     }
   },
-  components: {
-    Teacher
-  },
   created() {
     // 取得學校設定簡碼
     this.setDefSchool()
@@ -149,15 +126,6 @@ export default {
       this.SSOLogin(this.userOauth.code)
     }
   },
-  computed:{
-    tmdurl: function(){
-      let twUrl = 'https://www.habook.com/zh-tw/news.php?act=view&id=408'
-      let cnUrl = ' https://www.habook.com.cn/news.php?act=view&id=331'
-      let enUrl = 'https://www.habook.com/en/news.php?act=view&id=408'
-      
-      return this.lang === 'zh-tw' ? twUrl : this.lang === 'zh-cn' ? cnUrl : enUrl
-    }
-  },
   methods: {
     putUserCode: function(){ //如果第三方登入會啟動的function
       this.$Spin.show(); //開啟加載畫面

+ 57 - 0
TEAMModelOS/ClientApp/src/view/login/components/marketing/Index.less

@@ -0,0 +1,57 @@
+.marketing{
+    .title{
+        font-size: 40px;
+        color: #ffffff;
+        line-height: 1.1;
+        letter-spacing: 1px;
+        font-weight: 600;
+    }
+    .cont{
+        margin-top: 30px;
+        margin-left: 15px;
+        &-title{
+            font-size: 26px;
+            color: #ffffff;
+            line-height: 1.1;
+            font-weight: 500;
+            margin-bottom: 7px;
+            letter-spacing: 1px;
+        }
+        &-text{
+            font-size: 16px;
+            margin-bottom: 3px;
+            color: #9e9e9e;
+            letter-spacing: 1px;
+            &.border1:before{
+                content: '|';                            
+                margin-right: 11px;
+                font-weight: 900;
+                color: rgb(222,92,83);
+            }
+            &.border2:before{
+                content: '|';                            
+                margin-right: 11px;
+                font-weight: 900;
+                color: rgb(252,220,107);
+            }
+            &.border3:before{
+                content: '|';                            
+                margin-right: 11px;
+                font-weight: 900;
+                color: rgb(37,202,146);
+            }
+            &.border4:before{
+                content: '|';                            
+                margin-right: 11px;
+                font-weight: 900;
+                color: rgb(62,174,254);
+            }
+        }
+    }
+    .link{
+        margin-top: 50px;
+        a{
+            color: #2972a9;
+        }
+    }
+}  

+ 49 - 0
TEAMModelOS/ClientApp/src/view/login/components/marketing/Index.vue

@@ -0,0 +1,49 @@
+<style lang="less" scoped>
+  @import './Index.less';
+</style>
+
+<template>
+    <div class="marketing">
+        <div class="title">
+            {{$t('login.marketing.title.text1_1')}}<br/>
+            {{$t('login.marketing.title.text1_2')}}
+        </div>
+        <div class="cont">
+            <div class="cont-title">{{$t('login.marketing.subTitle.text1')}}</div>
+            <p class="cont-text border1" >{{$t('login.marketing.cont.text1')}}</p>
+            <p class="cont-text border2" >{{$t('login.marketing.cont.text2')}}</p>
+            <p class="cont-text border3" >{{$t('login.marketing.cont.text3')}}</p>
+            <p class="cont-text border4" >{{$t('login.marketing.cont.text4')}}</p>
+        </div>
+        <div class="cont">
+            <div class="cont-title">{{$t('login.marketing.subTitle.text2')}}</div>
+            <p class="cont-text border1" >{{$t('login.marketing.cont.text5')}}</p>
+            <p class="cont-text border2" >{{$t('login.marketing.cont.text6')}}</p>
+            <p class="cont-text border3" >{{$t('login.marketing.cont.text7')}}</p>
+            <p class="cont-text border4" >{{$t('login.marketing.cont.text8')}}</p>
+        </div>
+        <div class="link">
+            <a target="_block" :href="tmdurl">{{$t('login.marketing.cont.text9')}}<Icon size="19" type="ios-arrow-forward" /></a>
+        </div>
+    </div>
+</template>
+
+<script>
+export default {
+    name: 'Marketing',
+    data() {
+        return {
+            lang: localStorage.getItem('local'),
+        }
+    },
+    computed:{
+        tmdurl: function(){
+        let twUrl = 'https://www.habook.com/zh-tw/news.php?act=view&id=408'
+        let cnUrl = ' https://www.habook.com.cn/news.php?act=view&id=331'
+        let enUrl = 'https://www.habook.com/en/news.php?act=view&id=408'
+        
+        return this.lang === 'zh-tw' ? twUrl : this.lang === 'zh-cn' ? cnUrl : enUrl
+        }
+    },
+}
+</script>

+ 8 - 0
TEAMModelOS/ClientApp/src/view/login/page/Student.less

@@ -155,4 +155,12 @@
             }
         }
     }
+    .student-title{
+        text-align: left;
+        width: 800px;
+        margin-bottom: 40px;
+        font-size: 25px;
+        color: #fff;
+        letter-spacing: 1px;
+    }
 }

+ 3 - 8
TEAMModelOS/ClientApp/src/view/login/page/Student.vue

@@ -71,13 +71,8 @@
 
 <template>
   <div class="loginDiv">
-    <h3 class="student-title" style="text-align: left;
-    width: 800px;
-    margin-bottom: 40px;
-    font-size: 25px;
-    color: #fff;
-    letter-spacing: 1px;">
-      學生身分登入
+    <h3 class="student-title">
+      {{$t('login.type.studentLogin')}} 
     </h3>
     <div class="formDiv">
       <div class="loginBox">
@@ -96,7 +91,7 @@
           </Tooltip>
         </div>
         <h4 class="subTitle">
-          {{ qrloginFlag ? $t('login.subTitle.QRLogin') : $t('由學生自主申請的醍摩豆帳號登入口')}}
+          {{ qrloginFlag ? $t('login.subTitle.QRLogin') : $t('login.subTitle.studentIDLogin')}}
         </h4>
 
         <div v-show="!qrloginFlag">

+ 0 - 57
TEAMModelOS/ClientApp/src/view/login/page/Teacher.less

@@ -14,63 +14,6 @@
             flex-direction: column;
             justify-content: center;
             align-items: center;
-            .marketing{
-                .title{
-                    font-size: 40px;
-                    color: #ffffff;
-                    line-height: 1.1;
-                    letter-spacing: 1px;
-                    font-weight: 600;
-                }
-                .cont{
-                    margin-top: 30px;
-                    margin-left: 15px;
-                    &-title{
-                        font-size: 26px;
-                        color: #ffffff;
-                        line-height: 1.1;
-                        font-weight: 500;
-                        margin-bottom: 7px;
-                        letter-spacing: 1px;
-                    }
-                    &-text{
-                        font-size: 16px;
-                        margin-bottom: 3px;
-                        color: #9e9e9e;
-                        letter-spacing: 1px;
-                        &.border1:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(222,92,83);
-                        }
-                        &.border2:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(252,220,107);
-                        }
-                        &.border3:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(37,202,146);
-                        }
-                        &.border4:before{
-                            content: '|';                            
-                            margin-right: 11px;
-                            font-weight: 900;
-                            color: rgb(62,174,254);
-                        }
-                    }
-                }
-                .link{
-                    margin-top: 50px;
-                    a{
-                        color: #2972a9;;
-                    }
-                }
-            }            
         }
         &-right{
             width: 45%;

+ 5 - 31
TEAMModelOS/ClientApp/src/view/login/page/Teacher.vue

@@ -72,33 +72,11 @@
 <template>
   <div class="loginDiv">
     <div class="loginDiv-block loginDiv-block-left">
-      <div class="marketing">
-        <div class="title">
-          歡迎來到醍摩豆 5<br/>
-          新時代智慧教育之旅 就此展開
-        </div>
-        <div class="cont">
-          <div class="cont-title">Hiteach 5 智慧教育系統</div>
-          <p class="cont-text border1" >實際差異化教學,現代化因材施教</p>
-          <p class="cont-text border2" >線上線下,混和式教學系統首選</p>
-          <p class="cont-text border3" >合作學習,素養導向教學的全面應用</p>
-          <p class="cont-text border4" >看見每個學生思考</p>
-        </div>
-        <div class="cont">
-          <div class="cont-title">醍摩豆雲平台 IES 5</div>
-          <p class="cont-text border1" >新架構與新技術,速度升級更有感</p>
-          <p class="cont-text border2" >兼容各式媒體與檔案,雲端資源庫隨取即用</p>
-          <p class="cont-text border3" >題庫組卷、閱卷系統,評量應用更多元</p>
-          <p class="cont-text border4" >柏拉圖學情分析,學生成績精準提升</p>
-        </div>
-        <div class="link">
-          <a target="_block" :href="tmdurl">了解更多關於醍摩豆 5 <Icon size="19" type="ios-arrow-forward" /></a>
-        </div>
-      </div>
+      <Marketing/>
     </div>
     <div class="loginDiv-block loginDiv-block-right">
       <h3 class="teacher-title">
-        教師身分登入
+        {{$t('login.type.teacherLogin')}}
       </h3>
       <div class="formDiv">
         <div class="loginBox">
@@ -197,6 +175,9 @@ import { User } from '@/service/User'
 import { mapState, mapGetters } from 'vuex'
 
 export default {
+  components: {
+    Marketing: () => import('../components/marketing/Index.vue')
+  },
   data() {
     const validateID = (rule, value, callback) => {
       if (value === '') {
@@ -272,13 +253,6 @@ export default {
       let flag = false
       if(this.loginForm.id && this.loginForm.pass) flag = true
       return flag
-    },
-    tmdurl: function(){
-      let twUrl = 'https://www.habook.com/zh-tw/news.php?act=view&id=408'
-      let cnUrl = ' https://www.habook.com.cn/news.php?act=view&id=331'
-      let enUrl = 'https://www.habook.com/en/news.php?act=view&id=408'
-      
-      return this.lang === 'zh-tw' ? twUrl : this.lang === 'zh-cn' ? cnUrl : enUrl
     }
   },
   created() {

+ 113 - 0
TEAMModelOS/Properties/ServiceDependencies/ies5-test - Web Deploy/profile.arm.json

@@ -0,0 +1,113 @@
+{
+  "$schema": "https://schema.management.azure.com/schemas/2018-05-01/subscriptionDeploymentTemplate.json#",
+  "contentVersion": "1.0.0.0",
+  "metadata": {
+    "_dependencyType": "appService.windows"
+  },
+  "parameters": {
+    "resourceGroupName": {
+      "type": "string",
+      "defaultValue": "TEAMModelRG-Test",
+      "metadata": {
+        "description": "Name of the resource group for the resource. It is recommended to put resources under same resource group for better tracking."
+      }
+    },
+    "resourceGroupLocation": {
+      "type": "string",
+      "defaultValue": "",
+      "metadata": {
+        "description": "Location of the resource group. Resource groups could have different location than resources, however by default we use API versions from latest hybrid profile which support all locations for resource types we support."
+      }
+    },
+    "resourceName": {
+      "type": "string",
+      "defaultValue": "ies5-test",
+      "metadata": {
+        "description": "Name of the main resource to be created by this template."
+      }
+    },
+    "resourceLocation": {
+      "type": "string",
+      "defaultValue": "[parameters('resourceGroupLocation')]",
+      "metadata": {
+        "description": "Location of the resource. By default use resource group's location, unless the resource provider is not supported there."
+      }
+    }
+  },
+  "variables": {
+    "appServicePlan_name": "[concat('Plan', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
+    "appServicePlan_ResourceId": "[concat('/subscriptions/', subscription().subscriptionId, '/resourceGroups/', parameters('resourceGroupName'), '/providers/Microsoft.Web/serverFarms/', variables('appServicePlan_name'))]"
+  },
+  "resources": [
+    {
+      "type": "Microsoft.Resources/resourceGroups",
+      "name": "[parameters('resourceGroupName')]",
+      "location": "[parameters('resourceGroupLocation')]",
+      "apiVersion": "2019-10-01"
+    },
+    {
+      "type": "Microsoft.Resources/deployments",
+      "name": "[concat(parameters('resourceGroupName'), 'Deployment', uniqueString(concat(parameters('resourceName'), subscription().subscriptionId)))]",
+      "resourceGroup": "[parameters('resourceGroupName')]",
+      "apiVersion": "2019-10-01",
+      "dependsOn": [
+        "[parameters('resourceGroupName')]"
+      ],
+      "properties": {
+        "mode": "Incremental",
+        "template": {
+          "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
+          "contentVersion": "1.0.0.0",
+          "resources": [
+            {
+              "location": "[parameters('resourceLocation')]",
+              "name": "[parameters('resourceName')]",
+              "type": "Microsoft.Web/sites",
+              "apiVersion": "2015-08-01",
+              "tags": {
+                "[concat('hidden-related:', variables('appServicePlan_ResourceId'))]": "empty"
+              },
+              "dependsOn": [
+                "[variables('appServicePlan_ResourceId')]"
+              ],
+              "kind": "app",
+              "properties": {
+                "name": "[parameters('resourceName')]",
+                "kind": "app",
+                "httpsOnly": true,
+                "reserved": false,
+                "serverFarmId": "[variables('appServicePlan_ResourceId')]",
+                "siteConfig": {
+                  "metadata": [
+                    {
+                      "name": "CURRENT_STACK",
+                      "value": "dotnetcore"
+                    }
+                  ]
+                }
+              },
+              "identity": {
+                "type": "SystemAssigned"
+              }
+            },
+            {
+              "location": "[parameters('resourceLocation')]",
+              "name": "[variables('appServicePlan_name')]",
+              "type": "Microsoft.Web/serverFarms",
+              "apiVersion": "2015-08-01",
+              "sku": {
+                "name": "S1",
+                "tier": "Standard",
+                "family": "S",
+                "size": "S1"
+              },
+              "properties": {
+                "name": "[variables('appServicePlan_name')]"
+              }
+            }
+          ]
+        }
+      }
+    }
+  ]
+}