Fix Ranking code step1
This commit is contained in:
486
supervisor/html/ranking_bck.html
Normal file
486
supervisor/html/ranking_bck.html
Normal file
@ -0,0 +1,486 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<title>ランキング</title>
|
||||
|
||||
<style>
|
||||
|
||||
|
||||
.flex-slave {
|
||||
margin: 10px;
|
||||
}
|
||||
|
||||
#map {
|
||||
width: 800px;
|
||||
height: 600px;
|
||||
}
|
||||
|
||||
|
||||
#best{
|
||||
position: relative;
|
||||
line-height: 1.5em;
|
||||
|
||||
background: #fff;
|
||||
box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
|
||||
margin: 0 auto;
|
||||
margin-top: 20px;
|
||||
border-radius:8px;
|
||||
counter-increment: count-ex1-5;
|
||||
content: counter(number);
|
||||
padding: 0px 10px 10px 30px;
|
||||
margin:0px 0px 0px 5px;
|
||||
}
|
||||
#best::marker{
|
||||
font-weight:bold;
|
||||
color: #ff0801;
|
||||
}
|
||||
|
||||
#best li{
|
||||
counter-increment: count-ex1-5;
|
||||
content: counter(number);
|
||||
padding: 8px 10px 0px 0px;
|
||||
margin:8px 0px 0px 8px;
|
||||
line-height: 2em;
|
||||
}
|
||||
li::marker{
|
||||
font-weight:bold;
|
||||
color: #ff0801;
|
||||
line-height: 1;
|
||||
|
||||
}
|
||||
|
||||
#best::before {
|
||||
|
||||
position: absolute;
|
||||
background: #ff0801;
|
||||
color: #FFF;
|
||||
font-size: 15px;
|
||||
border-radius: 50%;
|
||||
left: 0;
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
line-height: 22px;
|
||||
text-align: center;
|
||||
top: 5px;
|
||||
font-family: "Font Awesome 5 Free";
|
||||
content: "\f521";
|
||||
font-weight: 900;
|
||||
margin:6px 0px 0px 10px;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
.black{
|
||||
background-color: #000;
|
||||
}
|
||||
h5 {
|
||||
position: relative;
|
||||
padding: 0px 0px 0px 70px;
|
||||
|
||||
|
||||
background-image: linear-gradient(0deg, #b8751e 0%, #ffce08 37%, #fefeb2 47%, #fafad6 50%, #fefeb2 53%, #e1ce08 63%, #b8751e 100%);
|
||||
-webkit-background-clip: text;
|
||||
color: transparent;
|
||||
display:flex;
|
||||
align-items: center;
|
||||
height:60px;
|
||||
}
|
||||
|
||||
h5 .span3 {
|
||||
position: absolute;
|
||||
top: -10px;
|
||||
left: 0px;
|
||||
display: inline-block;
|
||||
width: 52px;
|
||||
height: px;
|
||||
text-align: center;
|
||||
background: #fa4141;
|
||||
}
|
||||
|
||||
h5 .span3:before,
|
||||
h5 .span3:after {
|
||||
position: absolute;
|
||||
content: '';
|
||||
|
||||
}
|
||||
|
||||
h5 .span3:before {
|
||||
right: -10px;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border-right: 10px solid transparent;
|
||||
border-bottom: 10px solid #d90606;
|
||||
}
|
||||
|
||||
h5 .span3:after {
|
||||
top: 50%;
|
||||
left: 0;
|
||||
display: block;
|
||||
height: %;
|
||||
border: 26px solid #fa4141;
|
||||
border-bottom-width: 15px;
|
||||
border-bottom-color: transparent;
|
||||
|
||||
}
|
||||
|
||||
h5 .span3 i {
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
color: #fff100;
|
||||
padding-top: 10px;
|
||||
font-size: 24px;
|
||||
}
|
||||
.best
|
||||
select.name{
|
||||
display: block;
|
||||
margin-bottom: -10px;
|
||||
}
|
||||
|
||||
.best2 li{
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
padding: 1.5rem 2rem 1.5rem 130px;
|
||||
word-break: break-all;
|
||||
border-top: 3px solid #000;
|
||||
border-radius: 12px 0 0 0;
|
||||
margin: 10px 0px 0px 0px;
|
||||
}
|
||||
.best2 span{
|
||||
font-size: 40px;
|
||||
font-size: 4rem;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
display: block;
|
||||
padding: 3px 20px;
|
||||
color: #fff;
|
||||
border-radius: 10px 0 20px 10px;
|
||||
background: #000;
|
||||
}
|
||||
.button3{
|
||||
color: #fff;
|
||||
border: 2px solid #fff;
|
||||
border-radius: 0;
|
||||
background-image: -webkit-linear-gradient(left, #fa709a 0%, #fee140 100%);
|
||||
background-image: linear-gradient(to right, #fa709a 0%, #fee140 100%);
|
||||
-webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, .1);
|
||||
box-shadow: 0 3px 5px rgba(0, 0, 0, .1);
|
||||
border-radius: 100vh;
|
||||
font-family: "Arial", "メイリオ";
|
||||
/*letter-spacing: 0.1em;*/
|
||||
padding: 7px 25px 7px 25px;
|
||||
|
||||
}
|
||||
|
||||
.button3:hover{
|
||||
-webkit-transform: translate(0, -2px);
|
||||
transform: translate(0, -2px);
|
||||
color: #fff;
|
||||
-webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
|
||||
box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
|
||||
font-family: "Arial", "メイリオ";
|
||||
|
||||
|
||||
}
|
||||
|
||||
#best::before {
|
||||
|
||||
position: absolute;
|
||||
background: #ff0801;
|
||||
color: #FFF;
|
||||
font-size: 15px;
|
||||
border-radius: 50%;
|
||||
left: 0;
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
line-height: 22px;
|
||||
text-align: center;
|
||||
top: 5px;
|
||||
font-family: "Font Awesome 5 Free";
|
||||
content: "\f521";
|
||||
font-weight: 900;
|
||||
margin:6px 0px 0px 10px;
|
||||
|
||||
}
|
||||
|
||||
select {
|
||||
display: block;
|
||||
border-left: solid 10px #27acd9;
|
||||
padding: 0.75rem 1.5rem;
|
||||
border-color: transparent transparent transparent blue;
|
||||
font-weight: bold;
|
||||
box-shadow: 3px 5px 3px -2px #aaaaaa,3px 3px 2px 0px #ffffff inset;
|
||||
margin-bottom: 10px;
|
||||
width: 250px;
|
||||
}
|
||||
|
||||
.box2{
|
||||
position: relative;
|
||||
line-height: 1.5em;
|
||||
|
||||
background: #fff;
|
||||
box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
|
||||
margin: 0 auto;
|
||||
margin-top: 20px;
|
||||
border-radius:8px;
|
||||
counter-increment: count-ex1-5;
|
||||
content: counter(number);
|
||||
padding: 10px 10px 10px 30px;
|
||||
margin:10px 0px 0px 5px;
|
||||
}
|
||||
|
||||
.best2::before {
|
||||
|
||||
position: absolute;
|
||||
background: #ff0801;
|
||||
color: #FFF;
|
||||
font-size: 15px;
|
||||
border-radius: 50%;
|
||||
left: 0;
|
||||
width: 23px;
|
||||
height: 23px;
|
||||
line-height: 22px;
|
||||
text-align: center;
|
||||
top: 5px;
|
||||
font-family: "Font Awesome 5 Free";
|
||||
content: "\f521";
|
||||
font-weight: 900;
|
||||
margin: 10px 0px 0px 10px;
|
||||
|
||||
|
||||
}
|
||||
|
||||
h3{
|
||||
margin: 3px 0px 0px 10px;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 767px) {
|
||||
|
||||
#best{
|
||||
position: relative;
|
||||
line-height: 1.5em;
|
||||
|
||||
background: #fff;
|
||||
box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .5);
|
||||
margin: 0 auto;
|
||||
margin-top: 20px;
|
||||
border-radius:8px;
|
||||
counter-increment: count-ex1-5;
|
||||
content: counter(number);
|
||||
padding: 0px 10px 10px 30px;
|
||||
margin:0px 0px 0px 5px;
|
||||
}
|
||||
#best::marker{
|
||||
font-weight:bold;
|
||||
color: #ff0801;
|
||||
}
|
||||
|
||||
#best li{
|
||||
counter-increment: count-ex1-5;
|
||||
content: counter(number);
|
||||
padding: 8px 10px 0px 0px;
|
||||
margin:8px 0px 0px 8px;
|
||||
line-height: 2em;
|
||||
margin: 10px 0px 0px 0px;
|
||||
}
|
||||
li::marker{
|
||||
font-weight:bold;
|
||||
color: #ff0801;
|
||||
line-height: 1;
|
||||
|
||||
}
|
||||
select{
|
||||
width:100%;
|
||||
|
||||
}
|
||||
.button3{
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
font-size: 24px;
|
||||
}
|
||||
select.name{
|
||||
margin-bottom: -20px;
|
||||
margin-top: -10px;
|
||||
}
|
||||
|
||||
.arrow{
|
||||
position: relative;
|
||||
}
|
||||
.arrow::after {
|
||||
color: #828282;
|
||||
position: absolute;
|
||||
top:18px; /* 矢印の位置 */
|
||||
right: 25px; /* 矢印の位置 */
|
||||
width: 13px; /* 矢印の大きさ */
|
||||
height: 13px; /* 矢印の大きさ */
|
||||
border-top: 3px solid #58504A; /* 矢印の線 */
|
||||
border-right: 3px solid #58504A; /* 矢印の線 */
|
||||
-webkit-transform: rotate(135deg); /* 矢印の傾き */
|
||||
transform: rotate(135deg); /* 矢印の傾き */
|
||||
pointer-events: none; /* 矢印部分もクリック可能にする */
|
||||
content: "";
|
||||
border-color: #828282;
|
||||
}
|
||||
.arrow2{
|
||||
position: relative;
|
||||
}
|
||||
.arrow2::after {
|
||||
color: #828282;
|
||||
position: absolute;
|
||||
top:20px; /* 矢印の位置 */
|
||||
right: 25px; /* 矢印の位置 */
|
||||
width: 13px; /* 矢印の大きさ */
|
||||
height: 13px; /* 矢印の大きさ */
|
||||
border-top: 3px solid #58504A; /* 矢印の線 */
|
||||
border-right: 3px solid #58504A; /* 矢印の線 */
|
||||
-webkit-transform: rotate(135deg); /* 矢印の傾き */
|
||||
transform: rotate(135deg); /* 矢印の傾き */
|
||||
pointer-events: none; /* 矢印部分もクリック可能にする */
|
||||
content: "";
|
||||
border-color: #828282;
|
||||
}
|
||||
|
||||
.score {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id="ranking">
|
||||
<div class="black">
|
||||
<h5><span class="span3"><i class="fas fa-crown"></i></span>
|
||||
<span style="font-size: 24px">ランキング</span></h5>
|
||||
</div>
|
||||
<form @submit.prevent="ranking_view">
|
||||
<div class="arrow">
|
||||
<select class="name" v-model="selectedEvent">
|
||||
<option disabled value="">イベント一覧</option>
|
||||
<option selected value="FC岐阜">with FC岐阜</option>
|
||||
<!--
|
||||
<option value="関ケ原2410">関ケ原-2024年10月</option>
|
||||
<option value="養老2410">養老-2024年10月</option>
|
||||
<option value="大垣2410">大垣-2024年10月</option>
|
||||
<option value="各務原2410">各務原-2024年10月</option>
|
||||
<option value="多治見2410">多治見-2024年10月</option>
|
||||
<option value="美濃加茂2410">美濃加茂-2024年10月</option>
|
||||
<option value="下呂2410">下呂-2024年10月</option>
|
||||
<option value="郡上2410">郡上-2024年10月</option>
|
||||
<option value="高山2410">高山-2024年10月</option>
|
||||
|
||||
<option value="関ケ原2409">関ケ原-2024年9月</option>
|
||||
|
||||
<option value="養老2409">養老-2024年9月</option>
|
||||
<option value="大垣2409">大垣-2024年9月</option>
|
||||
<option value="各務原2409">各務原-2024年9月</option>
|
||||
<option value="多治見2409">多治見-2024年9月</option>
|
||||
<option value="美濃加茂2409">美濃加茂-2024年9月</option>
|
||||
<option value="下呂2409">下呂-2024年9月</option>
|
||||
<option value="郡上2409">郡上-2024年9月</option>
|
||||
<option value="高山2409">高山-2024年9月</option>
|
||||
|
||||
-->
|
||||
<option value="美濃加茂">岐阜ロゲin美濃加茂</option>
|
||||
<option value="養老ロゲ">養老町</option>
|
||||
<option value="岐阜市">岐阜市</option>
|
||||
<option value="大垣2">岐阜ロゲin大垣@イオンモール大垣</option>
|
||||
<option value="大垣">岐阜ロゲin大垣</option>
|
||||
<option value="多治見">岐阜ロゲin多治見</option>
|
||||
<option value="各務原">岐阜ロゲin各務原</option>
|
||||
<option value="下呂">岐阜ロゲin下呂温泉</option>
|
||||
<option value="郡上">岐阜ロゲin郡上</option>
|
||||
<option value="高山">岐阜ロゲin高山</option>
|
||||
</select>
|
||||
<div class="arrow2">
|
||||
<select v-model="selectedClass">
|
||||
<option selected value="top3">top3</option>
|
||||
<option value="3時間一般">3時間一般</option>
|
||||
<option value="3時間ファミリー">3時間ファミリー</option>
|
||||
<option value="3時間自転車">3時間自転車</option>
|
||||
<option value="3時間ソロ男子">3時間ソロ男子</option>
|
||||
<option value="3時間ソロ女子">3時間ソロ女子</option>
|
||||
<option value="3時間パラロゲ">3時間パラロゲ</option>
|
||||
<option value="5時間一般">5時間一般</option>
|
||||
<option value="5時間ファミリー">5時間ファミリー</option>
|
||||
<option value="5時間自転車">5時間自転車</option>
|
||||
<option value="5時間ソロ男子">5時間ソロ男子</option>
|
||||
<option value="5時間ソロ女子">5時間ソロ女子</option>
|
||||
</div>
|
||||
</select>
|
||||
<button class="button3" type="submit">CLICK</button>
|
||||
</div>
|
||||
</form>
|
||||
<ol v-if="top_three_flag == false" >
|
||||
<div id="best" v-for="team in team_list">
|
||||
<li>
|
||||
{{ team.team_name }}({{ team.zekken_number }})<br/><p class="score"><span class="span2">合計得点:{{ team.point }}</span> <span class="span2">内減点: {{ team.late_point }}</span></p>
|
||||
</li>
|
||||
</div>
|
||||
</ol>
|
||||
<div v-if="top_three_flag == true">
|
||||
<div class="box2" v-for="(teams, index) in team_list">
|
||||
<h3> {{ index }} </h3>
|
||||
<ol>
|
||||
<div class="best3" v-for="team in teams">
|
||||
<span class="span6"><li class="best2"></span>
|
||||
{{ team.team_name }}({{ team.zekken_number }})<br/><p class="score">合計得点:{{ team.point }} 内減点: {{ team.late_point }}</p>
|
||||
</li>
|
||||
</ol>
|
||||
</div>
|
||||
</div>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.27.1/axios.min.js"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
|
||||
<script>
|
||||
axios.defaults.baseURL = 'https://rogaining.sumasen.net/gifuroge';
|
||||
axios.default.withCridentials = true;
|
||||
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
var vm = new Vue({
|
||||
el: '#ranking',
|
||||
data: {
|
||||
selectedEvent: "FC岐阜",
|
||||
selectedClass: "top3",
|
||||
team_list: [],
|
||||
top_three_flag: false,
|
||||
three_pop: [],
|
||||
interval: 1
|
||||
},
|
||||
mounted : function(){
|
||||
|
||||
var int = this.interval * 60 * 1000
|
||||
setInterval(function() {this.ranking_view()}.bind(this), int);
|
||||
|
||||
},
|
||||
|
||||
methods: {
|
||||
|
||||
ranking_view: function(){
|
||||
if (this.selectedClass == 'top3'){
|
||||
this.top_three_flag = true
|
||||
var url = "/all_ranking_top3?event=" + this.selectedEvent
|
||||
axios
|
||||
.get(url)
|
||||
.then(response => ( this.team_list = response.data))}
|
||||
else {
|
||||
this.top_three_flag = false
|
||||
var url = "/get_ranking?class=" + this.selectedClass + '&event=' + this.selectedEvent
|
||||
|
||||
axios
|
||||
.get(url)
|
||||
.then(response => ( this.team_list = response.data ))}
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
})();
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
||||
Reference in New Issue
Block a user