denny 2 년 전
부모
커밋
00ee5ba4f8
7개의 변경된 파일135개의 추가작업 그리고 929개의 파일을 삭제
  1. 74 0
      public/content/nprogress.css
  2. 17 0
      public/index.html
  3. 34 0
      src/layout/index.vue
  4. 9 53
      src/router/index.js
  5. 1 15
      src/router/systemRouter.js
  6. 0 458
      src/views/login/login.vue
  7. 0 403
      src/views/shareManage/shareExamPage.vue

+ 74 - 0
public/content/nprogress.css

@@ -0,0 +1,74 @@
+/* Make clicks pass-through */
+#nprogressDiv {
+  pointer-events: none;
+}
+
+#nprogressDiv .bar {
+  background: #29d;
+
+  position: fixed;
+  z-index: 1031;
+  top: 0;
+  left: 0;
+
+  width: 100%;
+  height: 2px;
+}
+
+/* Fancy blur effect */
+#nprogressDiv .peg {
+  display: block;
+  position: absolute;
+  right: 0px;
+  width: 100px;
+  height: 100%;
+  box-shadow: 0 0 10px #29d, 0 0 5px #29d;
+  opacity: 1.0;
+
+  -webkit-transform: rotate(3deg) translate(0px, -4px);
+      -ms-transform: rotate(3deg) translate(0px, -4px);
+          transform: rotate(3deg) translate(0px, -4px);
+}
+
+/* Remove these to get rid of the spinner */
+#nprogressDiv .spinner {
+  display: block;
+  position: fixed;
+  z-index: 1031;
+  right: 42.5%;
+  top: 55.5%;
+}
+
+#nprogressDiv .spinner-icon {
+  width: 35px;
+  height: 35px;
+  box-sizing: border-box;
+
+  border: solid 2px transparent;
+  border-top-color: #29d;
+  border-left-color: #29d;
+  border-radius: 50%;
+
+  -webkit-animation: nprogressDiv-spinner 400ms linear infinite;
+          animation: nprogressDiv-spinner 400ms linear infinite;
+}
+
+.nprogressDiv-custom-parent {
+  overflow: hidden;
+  position: relative;
+}
+
+.nprogressDiv-custom-parent #nprogressDiv .spinner,
+.nprogressDiv-custom-parent #nprogressDiv .bar {
+  position: absolute;
+}
+
+@-webkit-keyframes nprogressDiv-spinner {
+  0%   { -webkit-transform: rotate(0deg); }
+  100% { -webkit-transform: rotate(360deg); }
+}
+@keyframes nprogressDiv-spinner {
+  0%   { transform: rotate(0deg); }
+  100% { transform: rotate(360deg); }
+}
+

+ 17 - 0
public/index.html

@@ -5,6 +5,10 @@
 		<meta http-equiv="X-UA-Compatible" content="IE=edge">
 		<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
 		<link rel="icon" href="<%= BASE_URL %>favicon.ico">
+		<link rel='stylesheet' href='content/nprogress.css'/>
+		<script type="text/javascript">
+			document.write("<script src='config.js?"+new Date().getTime()+"'><\/script>");
+		</script>
 	</head>
 	<body>
 		<noscript>
@@ -16,9 +20,22 @@
 			if(dark){
 				document.documentElement.classList.add("dark")
 			}
+
+			window.onload = function() {
+				var nprogressDiv = document.getElementById("nprogressDiv"); 
+            	nprogressDiv.remove(); 
+			}
 		</script>
 		<div id="app" class="aminui">
 		</div>
+		<div id="nprogressDiv" style="transition: none 0s ease 0s; opacity: 1;">
+			<div class="bar" role="bar" style="transform: translate3d(0%, 0px, 0px); transition: all 200ms ease 0s;">
+				<div class="peg"></div>
+			</div>
+			<div class="spinner" role="spinner">
+				<div class="spinner-icon"></div>
+			</div>
+		</div>
 	</body>
 	<div id="versionCheck" style="display: none;position: absolute;z-index: 99;top:0;left:0;right:0;bottom:0;padding:40px;background:rgba(255,255,255,0.9);color: #333;">
 		<h2 style="line-height: 1;margin: 0;font-size: 24px;">The browser kernel version is too early :(</h2>

+ 34 - 0
src/layout/index.vue

@@ -159,3 +159,37 @@
 		}
 	}
 </script>
+
+<style >
+#nprogress .spinner {
+	display: block;
+	position: fixed;
+	z-index: 1031;
+	right: 42.5%;
+	top: 55.5%;
+}
+
+#nprogress .spinner-icon {
+	width: 35px;
+	height: 35px;
+	box-sizing: border-box;
+	border: solid 2px transparent;
+	border-top-color: #29d;
+	border-left-color: #29d;
+	border-radius: 50%;
+	-webkit-animation: nprogress-spinner 400ms linear infinite;
+	animation: nprogress-spinner 400ms linear infinite;
+}
+
+#nprogress .bar {
+	/* background: white !important;  */
+	background: white;
+	position: fixed;
+	z-index: 1031;
+	top: 0;
+	left: 0;
+
+	width: 100%;
+	height: 2px;
+}
+</style>

+ 9 - 53
src/router/index.js

@@ -34,7 +34,13 @@ document.title = config.APP_NAME
 //var isGetRouter = false;
 
 router.beforeEach(async (to, from, next) => {
-
+	if (to && to.path)
+	{
+		if (to.path === "/reportTemplateDesigner" || to.path === "/reportTemplatePreview")
+		{
+			NProgress.configure({ showSpinner: false });
+		}
+	}
 	NProgress.start()
 	//动态标题
 	if (to.meta && to.meta.title && to.meta.title.indexOf("enu.") < 0) 
@@ -70,13 +76,9 @@ router.beforeEach(async (to, from, next) => {
 
 	//let token = tool.data.get("TOKEN");
 
-	if (to.path === "/login" || to.path === "/reportTemplateDesigner" || to.path === "/reportTemplatePreview" || to.path === "/shareExamPage") 
+	if (to.path === "/reportTemplateDesigner" || to.path === "/reportTemplatePreview") 
 	{
-		if(to.path != "/login")
-		{
-			store.commit("SET_toPath", "")
-		}
-		//console.log("dd:", routes[0]);
+		store.commit("SET_toPath", "")
 		//删除路由(替换当前layout路由)
 		router.addRoute(routes[0])
 		//删除路由(404)
@@ -89,52 +91,6 @@ router.beforeEach(async (to, from, next) => {
 		path: '/reportTemplateDesigner'
 	});
 	return false;
-
-	// if(routes.findIndex(r => r.path === to.path) >= 0){
-	// 	next();
-	// 	return false;
-	// }
-
-	// if(!token){
-	// 	next({
-	// 		path: '/reportTemplateDesigner'
-	// 	});
-	// 	return false;
-	// }
-
-	// //整页路由处理
-	// if(to.meta.fullpage){
-	// 	to.matched = [to.matched[to.matched.length-1]]
-	// }
-	// //加载动态/静态路由
-	// if(!isGetRouter){
-	// 	let apiMenu = tool.data.get("MENU") || []
-	// 	let userInfo = tool.data.get("USER_INFO")
-	// 	let userMenu = treeFilter(userRoutes, node => {
-	// 		return node.meta.role ? node.meta.role.filter(item=>userInfo.role.indexOf(item)>-1).length > 0 : true
-	// 	})
-	// 	let menu = [...userMenu, ...apiMenu]
-	// 	var menuRouter = filterAsyncRouter(menu)
-	// 	menuRouter = flatAsyncRoutes(menuRouter)
-	// 	menuRouter.forEach(item => {
-	// 		router.addRoute("layout", item)
-	// 	})
-	// 	
-	// 	if (to.matched.length == 0) {
-	// 		if (window && window.performance && window.performance.navigation && window.performance.navigation.type && window.performance.navigation.type === 1)
-	// 		{
-	// 			//表示刷新, 由于不是内部路由,所以不能刷新
-	// 			router.push('/');
-	// 		}
-	// 		else 
-	// 		{
-	// 			router.push(to.fullPath);
-	// 		}
-	// 	}
-	// 	isGetRouter = true;
-	// }
-	// beforeEach(to, from)
-	// next();
 });
 
 router.afterEach((to, from) => {

+ 1 - 15
src/router/systemRouter.js

@@ -10,13 +10,6 @@ const routes = [
 		redirect: config.DASHBOARD_URL || '/dashboard',
 		children: []
 	},
-	{
-		path: "/login",
-		component: () => import('@/views/login/login'),
-		meta: {
-			title: "登录"
-		}
-	},
 	{
 		path: "/reportTemplateDesigner",
 		component: () => import(/* webpackChunkName: "reportTemplateDesigner" */ '@/views/reportTemplateManage/reportTemplateDesigner'),
@@ -30,14 +23,7 @@ const routes = [
 		meta: {
 			title: $t('reportDesigner.Preview')
 		}
-	},
-	{
-		path: "/shareExamPage",
-		component: () => import(/* webpackChunkName: "shareExamPage" */ '@/views/shareManage/shareExamPage'),
-		meta: {
-			title: $t('menu.shareExamPage')
-		}
-	},
+	}
 ]
 
 export default routes;

+ 0 - 458
src/views/login/login.vue

@@ -1,458 +0,0 @@
-<template>
-  <div
-    class="login_bg"
-    style="
-      background-image: url(img/login_images/login_base.png);
-      background-color: #555;
-      background-size: cover;
-      background-position: center center;
-      background-repeat: no-repeat;
-      position: relative;
-    "
-  >
-    <div class="login_adv">
-      <!-- <img
-        src="img/login_images/logo.png"
-        style="margin-top: 15%; margin-left: 15%"
-      /> -->
-    </div>
-    <div class="login_main">
-      <div class="login-form" style="background-color: #fff">
-        <div class="login-header">
-          <h2 style="font-size: 30px; text-align: center; padding-bottom: 20px">
-            {{ $t("login.signInTitle") }}
-          </h2>
-        </div>
-        <el-form
-          ref="loginForm"
-          :model="ruleForm"
-          :rules="rules"
-          label-width="0"
-          size="large"
-          @keyup.enter="login"
-        >
-          <el-form-item prop="user">
-            <el-input
-              v-model="ruleForm.user"
-              prefix-icon="el-icon-user"
-              clearable
-              :placeholder="$t('login.userPlaceholder')"
-            >
-            </el-input>
-          </el-form-item>
-          <el-form-item prop="password">
-            <el-input
-              v-model="ruleForm.password"
-              prefix-icon="el-icon-lock"
-              clearable
-              show-password
-              :placeholder="$t('login.PWPlaceholder')"
-            ></el-input>
-          </el-form-item>
-          <el-form-item>
-            <el-button
-              type="primary"
-              style="width: 100%"
-              :loading="islogin"
-              round
-              @click="login"
-              @keyup.enter="login"
-              >{{ $t("login.signIn") }}</el-button
-            >
-          </el-form-item>
-        </el-form>
-        <!-- 其他方式登录 -->
-        <!-- <el-divider>{{ $t('login.signInOther') }}</el-divider>
-
-				<div class="login-oauth">
-					<el-button size="small" type="success" icon="sc-icon-wechat" circle></el-button>
-				</div> -->
-      </div>
-
-      <div class="login_adv__bottom copyrightBottom">
-        © {{ $t("login.copyright") }}
-      </div>
-    </div>
-  </div>
-</template>
-
-<script>
-import routeConfig from "@/config/route";
-import { $t } from "../../locales";
-export default {
-  data() {
-    return {
-      ruleForm: {
-        user: "",
-        password: "",
-      },
-      rules: {
-        user: [
-          {
-            required: true,
-            message: this.$t("login.userError"),
-            trigger: "blur",
-          },
-        ],
-        password: [
-          {
-            required: true,
-            message: this.$t("login.PWError"),
-            trigger: "blur",
-          },
-        ],
-      },
-      islogin: false,
-    };
-  },
-  watch: {},
-  created: function () {
-    this.$TOOL.data.remove("TOKEN");
-    this.$TOOL.data.remove("USER_INFO");
-    this.$TOOL.data.remove("MENU");
-    this.$TOOL.data.remove("PERMISSIONS");
-    this.$TOOL.data.remove("grid");
-    if (this.$TOOL.data.get("APP_LANG")) {
-      if (
-        this.$TOOL.data.get("APP_LANG") != "zh-CN" &&
-        this.$TOOL.data.get("APP_LANG") != "en-US"
-      ) {
-        this.$TOOL.data.remove("APP_LANG");
-      }
-    }
-    this.$store.commit("clearViewTags");
-    this.$store.commit("clearKeepLive");
-    this.$store.commit("clearIframeList");
-  },
-  methods: {
-    async login() {
-      var validate = await this.$refs.loginForm.validate().catch(() => {});
-      if (!validate) {
-        return false;
-      }
-
-      this.islogin = true;
-      //获取token
-      var loginRequest = {
-        user: this.ruleForm.user,
-        password: this.$TOOL.crypto.Security(this.ruleForm.password),
-      };
-      var adminLoginResult = await this.$API.authentication.login.post(loginRequest);
-      var token=adminLoginResult.Token;
-      if (token && token.length > 10) {
-        this.$TOOL.data.set("TOKEN", token);
-        var userInfo = await this.$API.authentication.getInfo.post();
-        if (userInfo) {
-          userInfo.role = ["SA", "admin", "Auditor"];
-          this.$TOOL.data.set("USER_INFO", userInfo);
-          var languageCode = "";
-          if (
-            this.$TOOL.data.get("APP_LANG") &&
-            this.$TOOL.data.get("APP_LANG") === "en-US"
-          ) {
-            languageCode = this.$TOOL.data.get("APP_LANG");
-          } else {
-            languageCode = "zh-CN";
-          }
-          var resultList =
-            await this.$API.adminManage.findAdminStatisticRecords.post(
-              languageCode
-            );
-          this.$TOOL.data.set("DashboardIndex_INFO", resultList);
-          this.$TOOL.data.remove("ContentConfigStorage");
-          //获取菜单
-          var featureInfo =
-            await this.$API.authentication.getAdminRoleFeaturs.post(
-              userInfo.RoleCodes[0]
-            );
-          if (featureInfo) {
-            if (featureInfo.FeatureCodeList.length == 0) {
-              this.islogin = false;
-              this.$alert($t("login.noAccessTip"), $t("login.noAccess"), {
-                type: "error",
-                center: true,
-              });
-              return false;
-            }
-            var menu = [];
-            menu.push({
-              name: "home",
-              path: "/home",
-              meta: {
-                title: "menu.home",
-                icon: "el-icon-home-filled",
-                type: "menu",
-              },
-              children: [
-                {
-                  name: "dashboard",
-                  path: "/dashboard",
-                  meta: {
-                    title: "menu.dashboard",
-                    icon: "sc-icon-dashboard",
-                    affix: true,
-                  },
-                  component: "home",
-                },
-                {
-                  name: "userCenter",
-                  path: "/usercenter",
-                  meta: { title: "menu.userCenter", icon: "sc-icon-user-info" },
-                  component: "userCenter",
-                },
-              ],
-            });
-            var menuList = routeConfig.getRouteList(
-              routeConfig.routes,
-              featureInfo.FeatureCodeList
-            );
-            menuList.forEach((em) => {
-              //console.log("em.name: " + em.name);
-              if ((em.name == "backManage") & !adminLoginResult.IsDistributedServer) {
-                //非分布式隐藏 serverInfoList 菜单
-                const index = em.children.findIndex(v => v.name === "serverInfoList");
-                    em.children.splice(index, 1);
-              } 
-              menu.push(em);
-            });
-            this.$TOOL.data.set("MENU", menu);
-          } else {
-            this.islogin = false;
-            this.$message.warning(this.$t("login.loadingMenuError"));
-            return false;
-          }
-          var toPath = "/";
-          if (this.$store.state.global.toPath == "/sysLog") {
-            toPath = "/sysLog";
-          }
-          this.$router.replace({
-            path: toPath,
-          });
-          this.islogin = false;
-        }
-      } 
-      else {
-        this.islogin = false;
-        this.$message.warning(adminLoginResult.message);
-        return false;
-      }
-    },
-  },
-};
-</script>
-
-<style scoped>
-.login_bg {
-  width: 100%;
-  height: 100%;
-  background: #fff;
-  display: flex;
-}
-.login_adv {
-  width: 33.33333%;
-}
-.login_adv__title {
-  color: #fff;
-  padding: 40px;
-}
-.login_adv__title h2 {
-  font-size: 40px;
-}
-.login_adv__title h4 {
-  font-size: 18px;
-  margin-top: 10px;
-  font-weight: normal;
-}
-.login_adv__title p {
-  font-size: 14px;
-  margin-top: 10px;
-  line-height: 1.8;
-  color: rgba(255, 255, 255, 0.6);
-}
-.login_adv__title div {
-  margin-top: 10px;
-  display: flex;
-  align-items: center;
-}
-.login_adv__title div span {
-  margin-right: 15px;
-}
-.login_adv__title div i {
-  font-size: 40px;
-}
-.login_adv__title div i.add {
-  font-size: 20px;
-  color: rgba(255, 255, 255, 0.6);
-}
-.login_adv__bottom {
-  position: absolute;
-  left: 0px;
-  right: 0px;
-  bottom: 0px;
-  color: #fff;
-  padding-bottom: 40px;
-  background-image: linear-gradient(transparent, #000);
-}
-
-.login_main {
-  flex: 1;
-  overflow: auto;
-  display: flex;
-}
-.login-form {
-  width: 400px;
-  margin: auto;
-  padding: 20px 0;
-}
-.login-header {
-  margin-bottom: 20px;
-}
-.login-header .logo {
-  display: flex;
-  align-items: center;
-}
-.login-header .logo img {
-  width: 35px;
-  height: 35px;
-  vertical-align: bottom;
-  margin-right: 10px;
-}
-.login-header .logo label {
-  font-size: 24px;
-}
-.login-header h2 {
-  font-size: 24px;
-  font-weight: bold;
-  margin-top: 50px;
-}
-.login-oauth {
-  display: flex;
-  justify-content: space-around;
-}
-.login-form .el-divider {
-  margin-top: 40px;
-}
-
-.login_config {
-  position: absolute;
-  top: 20px;
-  right: 20px;
-}
-.el-dropdown-menu__item.selected {
-  color: var(--el-color-primary);
-}
-
-@media (max-width: 1200px) {
-  .login-form {
-    width: 340px;
-    margin-top: 35%;
-  }
-}
-@media (max-width: 1000px) {
-  .login_main {
-    display: block;
-  }
-  .login-form {
-    width: 100%;
-    padding: 1px 40px;
-  }
-  .login_adv {
-    display: none;
-  }
-  .copyrightBottom {
-    text-align: right;
-    padding-right: 10%;
-  }
-}
-@media (min-width: 1250px) {
-  .login_main {
-    display: block;
-  }
-  .login-form {
-    padding: 1px 40px;
-    margin-top: 22%;
-    margin-right: 22%;
-  }
-  .copyrightBottom {
-    text-align: right;
-    padding-right: 17%;
-  }
-}
-</style>
-<style >
-@media (max-width: 1000px) {
-  .el-message-box {
-    --el-messagebox-title-color: var(--el-text-color-primary);
-    --el-messagebox-width: 320px;
-    --el-messagebox-border-radius: 4px;
-    --el-messagebox-font-size: var(--el-font-size-large);
-    --el-messagebox-content-font-size: var(--el-font-size-base);
-    --el-messagebox-content-color: var(--el-text-color-regular);
-    --el-messagebox-error-font-size: 12px;
-    --el-messagebox-padding-primary: 15px;
-    display: inline-block;
-    width: var(--el-messagebox-width);
-    padding-bottom: 10px;
-    vertical-align: middle;
-    background-color: var(--el-color-white);
-    border-radius: var(--el-messagebox-border-radius);
-    border: 1px solid var(--el-border-color-lighter);
-    font-size: var(--el-messagebox-font-size);
-    box-shadow: var(--el-box-shadow-light);
-    text-align: left;
-    overflow: hidden;
-    -webkit-backface-visibility: hidden;
-    backface-visibility: hidden;
-  }
-}
-@media (min-width: 1250px) {
-  .el-message-box {
-    --el-messagebox-title-color: var(--el-text-color-primary);
-    --el-messagebox-width: 420px;
-    --el-messagebox-border-radius: 4px;
-    --el-messagebox-font-size: var(--el-font-size-large);
-    --el-messagebox-content-font-size: var(--el-font-size-base);
-    --el-messagebox-content-color: var(--el-text-color-regular);
-    --el-messagebox-error-font-size: 12px;
-    --el-messagebox-padding-primary: 15px;
-    display: inline-block;
-    width: var(--el-messagebox-width);
-    padding-bottom: 10px;
-    vertical-align: middle;
-    background-color: var(--el-color-white);
-    border-radius: var(--el-messagebox-border-radius);
-    border: 1px solid var(--el-border-color-lighter);
-    font-size: var(--el-messagebox-font-size);
-    box-shadow: var(--el-box-shadow-light);
-    text-align: left;
-    overflow: hidden;
-    -webkit-backface-visibility: hidden;
-    backface-visibility: hidden;
-  }
-}
-.el-dialog__header {
-  padding: var(--el-dialog-padding-primary);
-  padding-bottom: 10px;
-  border-bottom: 2px solid rgba(0, 0, 0, 0.06);
-}
-.el-dialog__body {
-  padding: calc(var(--el-dialog-padding-primary) + 10px)
-    var(--el-dialog-padding-primary);
-  color: var(--el-text-color-regular);
-  font-size: var(--el-dialog-content-font-size);
-  word-break: break-all;
-  padding-top: 10px;
-  padding-bottom: 10px;
-}
-.el-dialog__footer {
-  padding: var(--el-dialog-padding-primary);
-  padding-top: 10px;
-  text-align: right;
-  box-sizing: border-box;
-  border-top: 2px solid rgba(0, 0, 0, 0.06);
-}
-.el-form-item__label {
-  font-weight: bold;
-  line-height: 32px;
-}
-</style>

+ 0 - 403
src/views/shareManage/shareExamPage.vue

@@ -1,403 +0,0 @@
-<template>
-  <div :class="isShowBlack">
-    <div class="loading-view" v-if="!show && !imageUrl.length">
-      <span class="girl"></span>
-      <div class="boys">
-        <span></span>
-        <span></span>
-        <span></span>
-        <span></span>
-      </div>
-    </div>
-    <div v-else style="text-align: center; min-height: 100vh">
-      <sc-video
-        ref="shareExamVid"
-        v-if="isVideo"
-        :src="videoUrl"
-        :poster="imageUrl"
-        :progressDot="progressDot"
-        :lang="langCode"
-      ></sc-video>
-      <el-image
-        :src="imageUrl"
-        v-else-if="imageUrl && imageUrl.length > 0"
-        :style="getActiveModuleStyle('image')"
-        :fit="fit"
-        lazy="true"
-      />
-    </div>
-  </div>
-</template>
-
-<script>
-import scVideo from "@/components/scVideo";
-export default {
-  name: "scvideo",
-  components: {
-    scVideo,
-  },
-  data() {
-    return {
-      isVideo: false,
-      videoUrl: "",
-      imageUrl: "",
-      show: false,
-      isShowBlack: "",
-      langCode: "zh-cn"
-    };
-  },
-  methods: {
-    setIsShowBlack() {
-      if (!this.show && !this.imageUrl.length) {
-        this.isShowBlack = "";
-      } else {
-        this.isShowBlack = "bg-black";
-      }
-    },
-    //设置当前样式
-    getActiveModuleStyle(item) {
-      if (item === "image") {
-        var imgStyle = "";
-        var winWidth = 0;
-        var winHeight = 0;
-        //获取窗口宽度
-        if (window.innerWidth) winWidth = window.innerWidth;
-        else winWidth = window.screen.width;
-        //获取窗口高度
-        if (window.innerHeight) winHeight = window.innerHeight;
-        else winHeight = window.screen.height;
-        if (winWidth > winHeight) {
-          //宽屏
-          imgStyle = "height:90vh;width:auto;";
-        } else {
-          //竖屏
-          imgStyle = "height:auto;width:100%;";
-          console.log(navigator.userAgent);
-          var ua = navigator.userAgent,
-            isWindowsPhone = /(?:Windows Phone)/.test(ua),
-            isSymbian = /(?:SymbianOS)/.test(ua) || isWindowsPhone,
-            isAndroid = /(?:Android)/.test(ua),
-            isFireFox = /(?:Firefox)/.test(ua),
-            // isChrome = /(?:Chrome|CriOS)/.test(ua),
-            isTablet =
-              /(?:iPad|PlayBook)/.test(ua) ||
-              (isAndroid && !/(?:Mobile)/.test(ua)) ||
-              (isFireFox && /(?:Tablet)/.test(ua)),
-            isPhone = /(?:iPhone)/.test(ua) && !isTablet,
-            isPc = !isPhone && !isAndroid && !isSymbian;
-          if (isPc == false) {
-            this.isShowBlack = "";
-          }
-        }
-        return imgStyle;
-      } else {
-        if (this.isVideo) {
-          return "padding:0px;background: black;";
-        } else {
-          return "padding:0px;";
-        }
-      }
-    },
-  },
-  created() {
-    var searchData = {
-      RequestUrl: this.$route.query["fileUrl"],
-      LanguageCode: this.$route.query["languageCode"],
-    };
-    if (searchData.LanguageCode === "en-US")
-    {
-      this.langCode = "en";
-    }
-    else
-    {
-      this.langCode = "zh-cn";
-    }
-    this.$API.wing.post("GetShareExamUrlAsync", searchData, (res) => {
-      if (res) {
-        this.show = true;
-        this.imageUrl = res.PosterUrl;
-        if (!this.imageUrl) {
-          this.imageUrl = "";
-        }
-        this.videoUrl = res.VideoUrl;
-        if (!this.videoUrl) {
-          this.videoUrl = "";
-        }
-        if (res.VideoUrl && res.VideoUrl.length > 0) {
-          this.isVideo = true;
-          this.videoUrl = res.VideoUrl;
-        } else {
-          this.isVideo = false;
-          this.videoUrl = "";
-        }
-      }
-    });
-    this.setIsShowBlack();
-  },
-};
-</script>
-
-
-<style scoped>
-.bg-black {
-  background-color: black !important;
-}
-.loading-view {
-  width: 8em;
-  height: 1em;
-  margin-top: -0.5em;
-  margin-left: -4em;
-  font-size: 35px;
-  display: flex;
-  justify-content: space-between;
-  position: absolute;
-  top: 50%;
-  left: 50%;
-}
-
-.loading-view span {
-  width: 1em;
-  height: 1em;
-  --duration: 1.5s;
-}
-
-.girl {
-  animation: slide var(--duration) ease-in-out infinite alternate;
-}
-
-@keyframes slide {
-  from {
-    transform: translateX(0);
-    filter: brightness(1);
-  }
-
-  to {
-    transform: translateX(calc(8em - (1em * 1.25)));
-    filter: brightness(1.45);
-  }
-}
-
-.boys {
-  width: 6em;
-  display: flex;
-  justify-content: space-between;
-}
-
-.boys span {
-  animation: var(--duration) ease-in-out infinite alternate;
-}
-
-.boys span:nth-child(1) {
-  animation-name: jump-off-1;
-}
-
-.boys span:nth-child(2) {
-  animation-name: jump-off-2;
-}
-
-.boys span:nth-child(3) {
-  animation-name: jump-off-3;
-}
-
-.boys span:nth-child(4) {
-  animation-name: jump-off-4;
-}
-
-@keyframes jump-off-1 {
-  0%,
-  15% {
-    transform: rotate(0deg);
-  }
-
-  35%,
-  100% {
-    transform-origin: -50% center;
-    transform: rotate(-180deg);
-  }
-}
-
-@keyframes jump-off-2 {
-  0%,
-  30% {
-    transform: rotate(0deg);
-  }
-
-  50%,
-  100% {
-    transform-origin: -50% center;
-    transform: rotate(-180deg);
-  }
-}
-
-@keyframes jump-off-3 {
-  0%,
-  45% {
-    transform: rotate(0deg);
-  }
-
-  65%,
-  100% {
-    transform-origin: -50% center;
-    transform: rotate(-180deg);
-  }
-}
-
-@keyframes jump-off-4 {
-  0%,
-  60% {
-    transform: rotate(0deg);
-  }
-
-  80%,
-  100% {
-    transform-origin: -50% center;
-    transform: rotate(-180deg);
-  }
-}
-
-.loading-view span::before {
-  content: "";
-  position: absolute;
-  width: inherit;
-  height: inherit;
-  border-radius: 15%;
-  box-shadow: 0 0 0.1em rgba(0, 0, 0, 0.3);
-}
-
-.girl::before {
-  background-color: hotpink;
-}
-
-.boys span::before {
-  background-color: dodgerblue;
-  animation: var(--duration) ease-in-out infinite alternate;
-}
-
-.boys span:nth-child(1)::before {
-  filter: brightness(1);
-  animation-name: jump-down-1;
-}
-
-.boys span:nth-child(2)::before {
-  filter: brightness(1.15);
-  animation-name: jump-down-2;
-}
-
-.boys span:nth-child(3)::before {
-  filter: brightness(1.3);
-  animation-name: jump-down-3;
-}
-
-.boys span:nth-child(4)::before {
-  filter: brightness(1.45);
-  animation-name: jump-down-4;
-}
-
-@keyframes jump-down-1 {
-  5% {
-    transform: scale(1, 1);
-  }
-
-  15% {
-    transform-origin: center bottom;
-    transform: scale(1.3, 0.7);
-  }
-
-  20%,
-  25% {
-    transform-origin: center bottom;
-    transform: scale(0.8, 1.4);
-  }
-
-  40% {
-    transform-origin: center top;
-    transform: scale(1.3, 0.7);
-  }
-
-  55%,
-  100% {
-    transform: scale(1, 1);
-  }
-}
-
-@keyframes jump-down-2 {
-  20% {
-    transform: scale(1, 1);
-  }
-
-  30% {
-    transform-origin: center bottom;
-    transform: scale(1.3, 0.7);
-  }
-
-  35%,
-  40% {
-    transform-origin: center bottom;
-    transform: scale(0.8, 1.4);
-  }
-
-  55% {
-    transform-origin: center top;
-    transform: scale(1.3, 0.7);
-  }
-
-  70%,
-  100% {
-    transform: scale(1, 1);
-  }
-}
-
-@keyframes jump-down-3 {
-  35% {
-    transform: scale(1, 1);
-  }
-
-  45% {
-    transform-origin: center bottom;
-    transform: scale(1.3, 0.7);
-  }
-
-  50%,
-  55% {
-    transform-origin: center bottom;
-    transform: scale(0.8, 1.4);
-  }
-
-  70% {
-    transform-origin: center top;
-    transform: scale(1.3, 0.7);
-  }
-
-  85%,
-  100% {
-    transform: scale(1, 1);
-  }
-}
-
-@keyframes jump-down-4 {
-  50% {
-    transform: scale(1, 1);
-  }
-
-  60% {
-    transform-origin: center bottom;
-    transform: scale(1.3, 0.7);
-  }
-
-  65%,
-  70% {
-    transform-origin: center bottom;
-    transform: scale(0.8, 1.4);
-  }
-
-  85% {
-    transform-origin: center top;
-    transform: scale(1.3, 0.7);
-  }
-
-  100%,
-  100% {
-    transform: scale(1, 1);
-  }
-}
-</style>