Advertisement
alexx876

Untitled

Jun 17th, 2019
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 5.82 KB | None | 0 0
  1. <!doctype html>
  2. <html lang="ru">
  3. <head>
  4.     <meta charset="utf-8">
  5.     <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  6.     <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
  7.     <title>Просмотр результатов</title>
  8.     <style>
  9.         .overlo {
  10.             position: absolute;
  11.             top: 0;
  12.             left: 0;
  13.             width: 100%;
  14.             height: 100%;
  15.             z-index: 50;
  16.             background: rgba(255,255,255,0.7);
  17.             border-radius: 3px;
  18.         }
  19.         .overlo div{
  20.             position: absolute;
  21.             top: 50%;
  22.             left: 50%;
  23.             margin-left: -15px!important;
  24.             margin-top: -15px!important;
  25.             color: #000;
  26.         }
  27.         body {
  28.             background: url(https://www.toptal.com/designers/subtlepatterns/patterns/email-pattern.png);
  29.         }
  30.     </style>
  31. </head>
  32. <body>
  33. <div class="container" id="app">
  34.     <div class="row justify-content-center p-4">
  35.         <div class="col-md-5">
  36.             <div class="card" v-if="!data.fullName">
  37.                 <div class="card-body">
  38.                     <h5 class="card-title">Просмотр результатов</h5>
  39.                     <h6 class="card-subtitle mb-3 text-muted">Для просмотра заполните необходимые поля</h6>
  40.                     <div class="alert alert-danger" role="alert" v-if="error">
  41.                         {{ error }}
  42.                     </div>
  43.                     <div class="form-group">
  44.                         <label>Фамилия</label>
  45.                         <input type="text" class="form-control" v-model="form.lastName" placeholder="Иванов">
  46.                     </div>
  47.  
  48.                     <div class="form-group">
  49.                         <label>Серия паспорта</label>
  50.                         <input type="text" class="form-control" v-model="form.passportSeries" placeholder="ВМ">
  51.                     </div>
  52.  
  53.                     <div class="form-group">
  54.                         <label>Номер паспорта</label>
  55.                         <input type="text" class="form-control" v-model="form.passportNumber" placeholder="2094823">
  56.                     </div>
  57.  
  58.                     <button @click="loadData()" type="button" class="btn btn-dark btn-block">Проверить</button>
  59.                 </div>
  60.                 <div class="overlo" v-if="loader">
  61.                     <div class="spinner-border m-5" role="status"></div>
  62.                 </div>
  63.             </div>
  64.             <div class="card" v-else>
  65.                 <div class="card-body">
  66.                     <center>
  67.                         <p>Привет, <b>{{ data.fullName }}</b>!</p>
  68.  
  69.                         <p v-if="data.optionalExam == -2">Вам не нужно сдавать <b>дополнительный</b> экзамен</p>
  70.                         <p v-if="data.optionalExam == -1">Вы еще не сдали <b>дополнительный</b> экзамен</p>
  71.                         <p v-if="data.optionalExam >= 0">Ваша оценка за <b>дополнительный</b> экзамен - <b>{{ data.optionalExam }}</b></p>
  72.  
  73.                         <p v-if="data.entranceExam == -2">Вам не нужно сдавать <b>вступительный</b> экзамен</p>
  74.                         <p v-if="data.entranceExam == -1">Вы еще не сдали <b>вступительный</b> экзамен</p>
  75.                         <p v-if="data.entranceExam >= 0">Ваша оценка за <b>вступительный</b> экзамен - <b>{{ data.optionalExam }}</b></p>
  76.  
  77.                     </center>
  78.                 </div>
  79.             </div>
  80.         </div>
  81.     </div>
  82. </div>
  83. <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
  84. <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
  85. <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
  86. <script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
  87. <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
  88. <script>
  89.     var app = new Vue({
  90.         el: '#app',
  91.         data: {
  92.             loader: false,
  93.             form: {
  94.                 lastName: '',
  95.                 passportSeries: '',
  96.                 passportNumber: '',
  97.             },
  98.             error: '',
  99.             data: {}
  100.         },
  101.         methods: {
  102.             loadData() {
  103.                 this.error = '';
  104.                 if (!this.form.lastName || !this.form.passportSeries || !this.form.passportNumber) {
  105.                     this.error = 'Заполните все поля!';
  106.                     return;
  107.                 }
  108.                 this.loader = true;
  109.                 axios.post('http://magistr.mstech.space/api/exams/result', this.form).then((response) => {
  110.                     this.loader = false;
  111.  
  112.                     if (response.data.status == 200) this.data = response.data.data;
  113.                 }).catch((error) => {
  114.                     this.loader = false;
  115.                     if (error.response.data.status == 404) {
  116.                         this.error = error.response.data.error;
  117.                         return;
  118.                     }
  119.                 });
  120.             }
  121.         }
  122.     })
  123. </script>
  124. </body>
  125. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement