finch/plugins/gnthistory.c

changeset 38649
0491c21146e5
parent 38358
30ba44276e74
child 39562
40dca5c3593a
equal deleted inserted replaced
38648:9ff9acf9fa14 38649:0491c21146e5
44 PurpleAccount *account = purple_conversation_get_account(c); 44 PurpleAccount *account = purple_conversation_get_account(c);
45 const char *name = purple_conversation_get_name(c); 45 const char *name = purple_conversation_get_name(c);
46 GList *logs = NULL; 46 GList *logs = NULL;
47 const char *alias = name; 47 const char *alias = name;
48 PurpleLogReadFlags flags; 48 PurpleLogReadFlags flags;
49 GDateTime *dt;
50 char *date;
49 char *history; 51 char *history;
50 char *header; 52 char *header;
51 PurpleMessageFlags mflag; 53 PurpleMessageFlags mflag;
52 54
53 if (PURPLE_IS_IM_CONVERSATION(c)) { 55 if (PURPLE_IS_IM_CONVERSATION(c)) {
111 return; 113 return;
112 114
113 mflag = PURPLE_MESSAGE_NO_LOG | PURPLE_MESSAGE_SYSTEM | PURPLE_MESSAGE_DELAYED; 115 mflag = PURPLE_MESSAGE_NO_LOG | PURPLE_MESSAGE_SYSTEM | PURPLE_MESSAGE_DELAYED;
114 history = purple_log_read((PurpleLog*)logs->data, &flags); 116 history = purple_log_read((PurpleLog*)logs->data, &flags);
115 117
116 header = g_strdup_printf(_("<b>Conversation with %s on %s:</b><br>"), alias, 118 dt = g_date_time_to_local(((PurpleLog *)logs->data)->time);
117 purple_date_format_full(localtime(&((PurpleLog *)logs->data)->time))); 119 date = g_date_time_format(dt, "%c");
120 header = g_strdup_printf(_("<b>Conversation with %s on %s:</b><br>"), alias, date);
118 purple_conversation_write_system_message(c, header, mflag); 121 purple_conversation_write_system_message(c, header, mflag);
122 g_free(date);
119 g_free(header); 123 g_free(header);
120 124
121 if (flags & PURPLE_LOG_READ_NO_NEWLINE) 125 if (flags & PURPLE_LOG_READ_NO_NEWLINE)
122 purple_str_strip_char(history, '\n'); 126 purple_str_strip_char(history, '\n');
123 purple_conversation_write_system_message(c, history, mflag); 127 purple_conversation_write_system_message(c, history, mflag);

mercurial