1
0
This commit is contained in:
syui 2024-04-12 04:29:51 +09:00
parent 601fbf9f28
commit 792f153f56
Signed by: syui
GPG Key ID: 5417CFEBAD92DF56

View File

@ -112,6 +112,7 @@
</div>
<div class="glb" v-if="glb_status == true">
<script type="module" src="https://unpkg.com/@google/model-viewer/dist/model-viewer.min.js"></script>
<model-viewer v-if="glb_next !== 0" class="ar" :src="'/obj/card_' + glb_next + '.glb'" ar-modes="scene-viewer webxr quick-look" auto-rotate autoplay ar camera-controls></model-viewer>
<model-viewer v-else class="ar" :src="'/obj/card_' + cards.data.filter((v) => v.skill == '3d' && (v.card >= 1 && v.card <= 14 || v.card == 64))[0].card + '.glb'" ar-modes="scene-viewer webxr quick-look" auto-rotate autoplay ar camera-controls></model-viewer>
<span v-for="(ii, index) in cards.data.filter((v) => v.skill == '3d' && (v.card >= 1 && v.card <= 14 || v.card == 64))" class="glb">
@ -307,7 +308,7 @@
<div v-if="loc.length == 0">
<div v-if="cards" class="bluesky-card">
<p>user : <a :href='"/" + user.data.username'><code>{{ user.data.username }}</code></a></p>
<p>user : <a :href='"/" + user.data.username'><code v-if="user.data.username">{{ user.data.username }}</code></a></p>
<p>id : <code>{{ user.data.id }}</code></p>
<p>did : <code>{{ user.data.did }}</code></p>
<p>aiten : <code>{{ user.data.aiten }}</code></p>
@ -330,7 +331,7 @@
<li v-for="i in record.data">
<p v-if="i.delete === false"><span class="menu-right-top">
<button v-if="i.model === true"><i class="fa-solid fa-cube"></i></button> <button v-if="i.fav != '0'">✧</button> <a :href="'https://git.syui.ai/' + i.username" target="_blank"><button v-if="i.username == 'ai'"><i class="fa-brands fa-git-alt"></i></button></a> <button>ID {{ i.id }}</button></span></p>
<p v-if="i.delete === false"><span class="text"><a :href="'/' + i.username">{{ i.username }}</a></span></p>
<p v-if="i.delete === false"><span class="text"><a :href="'/' + i.username" v-if="i.username">{{ i.username }}</a></span></p>
<span class="menu-right-did" v-if="i.delete === false && did_enable === true && i.did.includes('did:') === true">
<button><a :href="'https://plc.directory/' + i.did + '/log'" target="_blank">{{ i.did }}</a></button>
</span>
@ -559,9 +560,8 @@
<p>集めた人は<a href="https://bsky.app/profile/syui.ai">@syui</a>まで連絡してみて</p>
<p>ただしリアルカードに変わるのはこちらの<a href="/owner">所有者</a>がいないカードに限られます</p>
<h3>link</h3>
<p><a class="menu-link" href="/fa">fanart</a> <a class="menu-link" href="/ph">photo</a> <a class="menu-link" href="/te">aiten</a> <a class="menu-link" href="/pr">fav</a> <a class="menu-link" href="/vr">model</a></p>
<p><a class="menu-link" href="/fa">fanart</a> <a class="menu-link" href="/te">aiten</a> <a class="menu-link" href="/vr">model</a></p>
</div>
<div v-if="loc === 'en'" class="text-content">
@ -851,6 +851,7 @@
<script>
import axios from 'axios'
import moment from "moment";
var loc = window.location.pathname.split('/').slice(-1)[0];
export default {
@ -877,65 +878,70 @@ export default {
data () {
return {
host: window.location.host,
all: null,
badge_aiten: null,
card: null,
cards: null,
all: "",
badge_aiten: "",
card: "",
cards: "",
loc: window.location.pathname.split('/').slice(-1)[0],
username: null,
id: null,
model: null,
record: null,
url: null,
user: null,
userid: null,
ucard: null,
status: null,
username: "ai",
id: "",
model: "",
record: "",
url: "",
user: "",
userid: "",
ucard: "",
status: "",
premium: false,
premium_text: null,
rcards: null,
fanarts: null,
photos: null,
premium_text: "",
rcards: "",
fanarts: "",
photos: "",
info: false,
time: null,
aiten: null,
fav: null,
card_fav: null,
user_fav: null,
book_user: null,
time: "",
aiten: "",
fav: "",
card_fav: "",
user_fav: "",
book_user: "",
glb_status: false,
glb_next: 0,
moji_status: false,
did_enable: null,
chara_user: null,
did_enable: "",
chara_user: "",
card_sed: false,
card_status: null,
card_skill: null,
model_attack: null,
model_critical: null,
model_critical_d: null,
sevens: null,
game: null,
game_lv: null,
api_url: null,
card_status: "",
card_skill: "",
model_attack: "",
model_critical: "",
model_critical_d: "",
sevens: "",
game: "",
game_lv: "",
api_url: "",
bsky_mode: false,
did: null,
did: "",
card_origin_status: false,
useragent: window.navigator.userAgent.toLowerCase(),
iframe_status: false,
term_status: false,
sort_key: null,
sort_key: "",
mount_google_md: false,
}
},
components: {
},
filters: {
moment: function(date) {
return moment.unix(date).format("YYYY.MM.DD");
},
},
computed: {
loadComponent() {
return () => import('@google/model-viewer');
}
},
mounted() {
this.loadComponent();
this.username = "ai";
this.mount_google_md = false;
if (window.location.host === "localhost:8080") {
this.api_url = "/api/";
} else if (window.location.host === "192.168.11.12:8080"){
@ -947,28 +953,27 @@ export default {
this.api_url = "https://api.syui.ai/";
}
if (loc === 'owner' || loc === 'te' || loc === 'c'){
this.rcards = "";
axios
.get("/json/card.json")
.then(response => (this.rcards = response));
if (loc.length > 1){
axios
.get(url,{ crossdomain: true })
.then(response => (this.cards = response));
}
} else if (loc === 'fa'){
axios
.get("/json/fanart.json")
.then(response => (this.fanarts = response));
} else if (loc === 'svn'){
this.cards = "";
let url = this.api_url + "sevs?itemsPerPage=4000";
axios
.get(url)
.then(response => (this.sevens = response));
} else if (loc === 'ph'){
axios
.get("/json/photo.json")
.then(response => (this.photos = response));
} else if (loc === null || loc === undefined || loc === ''){
let url = this.api_url + "users?itemsPerPage=3000";
axios.get(url,{ crossdomain: true })
.then(response => {
this.record = response;
})
} else {
if (this.mount_google_md === false) {
//this.loadComponent();
this.mount_google_md = true;
}
let url = this.api_url + "users?itemsPerPage=3000";
axios.get(url,{ crossdomain: true })
.then(response => {
@ -988,38 +993,32 @@ export default {
this.user_room = this.record.data.find((v) => v.username == loc).room;
let url = this.api_url + "users/" + this.id + "/card?itemsPerPage=4000";
axios
.get("/json/card.json")
.then(response => (this.rcards = response));
if (loc.length > 1){
axios
.get(url,{ crossdomain: true })
.then(response => { this.cards = response
for (let i = 1; i <= 14; i++) {
this.all = this.cards.data.some(
b => b.card === i,
);
if (this.all === false) {
break;
}
}
for (let i = 65; i <= 67; i++) {
this.badge_aiten = this.cards.data.some(
b => b.card === i,
);
if (this.badge_aiten === false) {
break;
}
}
});
}
})
.catch(error => console.log(error));
.get("/json/card.json")
.then(response => (this.rcards = response));
if (loc.length > 1){
axios
.get(url,{ crossdomain: true })
.then(response => { this.cards = response
for (let i = 1; i <= 14; i++) {
this.all = this.cards.data.some(
b => b.card === i,
);
if (this.all === false) {
break;
}
}
for (let i = 65; i <= 67; i++) {
this.badge_aiten = this.cards.data.some(
b => b.card === i,
);
if (this.badge_aiten === false) {
break;
}
}
});
}
})
}},
computed: {
loadComponent() {
return () => import('@google/model-viewer');
}
},
methods: {
submit() {
let url = this.api_url + "users/" + this.id + "/card?itemsPerPage=3000";
@ -1066,7 +1065,7 @@ export default {
});
},
cardinfo(){
this.cards = {};
this.cards = "";
let url = this.api_url + "users/" + this.id + "/card?itemsPerPage=4000";
axios
.get(url,{ crossdomain: true })
@ -1125,6 +1124,9 @@ body{
background-color: #f1f1f1;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
font-size: 18px;
overflow-wrap: anywhere;
word-break: normal;
line-break: strict;
}
a {
@ -1173,9 +1175,7 @@ span.text {
footer#footer {
text-align: center;
}
span.text {
word-break: break-all;
}
p.tl-avatar img {
width: 20px;
}
@ -1664,9 +1664,6 @@ button.unity i#vrm_button:hover {
.bluesky-record p{padding:0 20px 0}
.bluesky-record{border-radius:10px;margin:0px 0px 0 0}
footer#footer{text-align:center}
span.text {
word-break: break-all;
}
code {
padding: 10px;
background-color: #fff;
@ -1758,7 +1755,6 @@ span.glb {
.menu-right code {
padding: 0;
word-break: break-all;
}
blockquote.did {