mirror of
https://github.com/ZeroCatDev/Classworks.git
synced 2026-02-04 16:03:10 +00:00
feat: 添加拉起EA2播放器功能,支持将配置JSON转换为base64并通过协议打开
This commit is contained in:
parent
3a6f6f5fdc
commit
fb4da655c6
@ -108,7 +108,18 @@
|
|||||||
variant="elevated"
|
variant="elevated"
|
||||||
@click="downloadAsEa2"
|
@click="downloadAsEa2"
|
||||||
>
|
>
|
||||||
部署到 ExamAware2 知试
|
.ea2 文件
|
||||||
|
</v-btn>
|
||||||
|
|
||||||
|
<v-btn
|
||||||
|
:disabled="!isValidConfig"
|
||||||
|
class="text-none"
|
||||||
|
color="secondary"
|
||||||
|
prepend-icon="mdi-play-circle"
|
||||||
|
variant="elevated"
|
||||||
|
@click="openInEa2Player"
|
||||||
|
>
|
||||||
|
拉起EA2播放器
|
||||||
</v-btn>
|
</v-btn>
|
||||||
|
|
||||||
<v-tooltip
|
<v-tooltip
|
||||||
@ -1830,6 +1841,42 @@ export default {
|
|||||||
this.deleting = false;
|
this.deleting = false;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拉起EA2播放器
|
||||||
|
* 将配置JSON转换为base64并通过examaware://协议打开
|
||||||
|
*/
|
||||||
|
openInEa2Player() {
|
||||||
|
try {
|
||||||
|
// 获取存储格式的JSON字符串
|
||||||
|
const configToSave = {
|
||||||
|
examName: this.localConfig.examName,
|
||||||
|
message: this.localConfig.message,
|
||||||
|
room: this.localConfig.room,
|
||||||
|
examInfos: this.localConfig.examInfos.map((info) => ({
|
||||||
|
name: info.name,
|
||||||
|
start: this.formatDisplayDateTime(info.start),
|
||||||
|
end: this.formatDisplayDateTime(info.end),
|
||||||
|
alertTime: parseInt(info.alertTime) || 15,
|
||||||
|
})),
|
||||||
|
};
|
||||||
|
|
||||||
|
const jsonString = JSON.stringify(configToSave);
|
||||||
|
|
||||||
|
// 转换为base64
|
||||||
|
const base64Data = btoa(unescape(encodeURIComponent(jsonString)));
|
||||||
|
|
||||||
|
// 构建examaware://协议URL
|
||||||
|
const ea2Url = `examaware://player?data=${base64Data}`;
|
||||||
|
|
||||||
|
// 尝试打开
|
||||||
|
window.location.href = ea2Url;
|
||||||
|
|
||||||
|
this.$message?.success('正在拉起 ExamAware2 播放器...');
|
||||||
|
} catch (err) {
|
||||||
|
this.error = '拉起播放器失败: ' + err.message;
|
||||||
|
}
|
||||||
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user