Merge pull request #181 from STDquantum/master

html顶端不是时间就加个时间
This commit is contained in:
SiYuan 2023-12-19 20:55:21 +08:00 committed by GitHub
commit 757f3c8f97
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -298,6 +298,7 @@ class ChildThread(QThread):
modify_audio_metadata(audio_path, displayname) modify_audio_metadata(audio_path, displayname)
os.utime(audio_path, (timestamp, timestamp)) os.utime(audio_path, (timestamp, timestamp))
audio_path = audio_path.replace('\\', '/') audio_path = audio_path.replace('\\', '/')
audio_path = "./voice/" + os.path.basename(audio_path)
voice_to_text = escape_js_and_html(media_msg_db.get_audio_text(str_content)) voice_to_text = escape_js_and_html(media_msg_db.get_audio_text(str_content))
except: except:
return return
@ -464,7 +465,6 @@ class ChildThread(QThread):
image_path = hard_link_db.get_video(str_content, BytesExtra, thumb=True) image_path = hard_link_db.get_video(str_content, BytesExtra, thumb=True)
if video_path is None and image_path is not None: if video_path is None and image_path is not None:
image_path = path.get_relative_path(image_path, base_path=f'/data/聊天记录/{self.contact.remark}/image') image_path = path.get_relative_path(image_path, base_path=f'/data/聊天记录/{self.contact.remark}/image')
image_path = image_path
try: try:
# todo 网络图片问题 # todo 网络图片问题
print(origin_docx_path + image_path[1:]) print(origin_docx_path + image_path[1:])
@ -1140,9 +1140,31 @@ html_end = '''
return messageAudioTag; return messageAudioTag;
} }
// 从数据列表中取出对应范围的元素并添加到容器中 // 从数据列表中取出对应范围的元素并添加到容器中
for (let i = startIndex; i < endIndex && i < chatMessages.length; i++) { for (let i = startIndex; i < endIndex && i < chatMessages.length; i++) {
const message = chatMessages[i]; const message = chatMessages[i];
if (i == startIndex) { // 判断一下在页面顶部多加一个时间
if (!/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(message.text)) {
// 时间戳转成时间
function timestampToTime(timestamp) {
let date = new Date(timestamp * 1000);
let year = date.getFullYear() + '-';
let month = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
let day = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' ';
let hour = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
let minute = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
let second = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
return year + month + day + hour + minute + second;
}
// 添加div
const newTimeMessage = document.createElement('div');
newTimeMessage.className = "item item-center";
newTimeMessage.innerHTML = `<span>${timestampToTime(message.timestamp)}</span>`;
chatContainer.appendChild(newTimeMessage);
console.log("增加时间元素", timestampToTime(message.timestamp));
}
}
const messageElement = document.createElement('div'); // 下面那俩的合体 const messageElement = document.createElement('div'); // 下面那俩的合体
const avatarTag = avatarBox(message); // 头像 const avatarTag = avatarBox(message); // 头像
const messageContent = document.createElement('div'); // 除了avatar之外的所有 const messageContent = document.createElement('div'); // 除了avatar之外的所有
@ -1154,7 +1176,7 @@ html_end = '''
messageContent.appendChild(displayNameBox(message)); messageContent.appendChild(displayNameBox(message));
} }
messageContent.appendChild(messageBubble(message, side)); messageContent.appendChild(messageBubble(message, side));
// 整合 // 整合
messageElement.className = `item item-${side}`; messageElement.className = `item item-${side}`;
messageElement.appendChild(message.is_send ? messageContent : avatarTag); messageElement.appendChild(message.is_send ? messageContent : avatarTag);
@ -1162,7 +1184,7 @@ html_end = '''
} }
else if (message.type == 0) { else if (message.type == 0) {
messageElement.className = "item item-center"; messageElement.className = "item item-center";
messageElement.innerHTML = `<span>${message.text}</span>` messageElement.innerHTML = `<span>${message.text}</span>`;
} }
else if (message.type == 3) { else if (message.type == 3) {
// displayname img // displayname img