Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

html顶端不是时间就加个时间 #181

Merged
merged 4 commits into from
Dec 19, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 26 additions & 4 deletions app/DataBase/output_pc.py
Original file line number Diff line number Diff line change
Expand Up @@ -298,6 +298,7 @@ def audio(self, doc, message):
modify_audio_metadata(audio_path, displayname)
os.utime(audio_path, (timestamp, timestamp))
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))
except:
return
Expand Down Expand Up @@ -464,7 +465,6 @@ def video(self, doc, message):
image_path = hard_link_db.get_video(str_content, BytesExtra, thumb=True)
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 = image_path
try:
# todo 网络图片问题
print(origin_docx_path + image_path[1:])
Expand Down Expand Up @@ -1140,9 +1140,31 @@ def cancel(self):
return messageAudioTag;
}

// 从数据列表中取出对应范围的元素并添加到容器中
// 从数据列表中取出对应范围的元素并添加到容器中
for (let i = startIndex; i < endIndex && i < chatMessages.length; 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 avatarTag = avatarBox(message); // 头像
const messageContent = document.createElement('div'); // 除了avatar之外的所有
Expand All @@ -1154,15 +1176,15 @@ def cancel(self):
messageContent.appendChild(displayNameBox(message));
}
messageContent.appendChild(messageBubble(message, side));

// 整合
messageElement.className = `item item-${side}`;
messageElement.appendChild(message.is_send ? messageContent : avatarTag);
messageElement.appendChild(message.is_send ? avatarTag : messageContent);
}
else if (message.type == 0) {
messageElement.className = "item item-center";
messageElement.innerHTML = `<span>${message.text}</span>`
messageElement.innerHTML = `<span>${message.text}</span>`;
}
else if (message.type == 3) {
// displayname 和 img
Expand Down