Mercurial > pidgin
comparison libpurple/protocols/jabber/google.c @ 27264:7f5ce6fa0a25
Provide a custom URL per-email for gmail notifications, since Google gives it to us.
This doesn't actually work for me (even though the URL is correct), but I
assume that has something to do with some crazy adblock/noscript/popup blocker
extensions.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Fri, 03 Jul 2009 05:25:41 +0000 |
parents | beb33c984100 |
children | 5afc3577b8cd e01ef82ba0f2 |
comparison
equal
deleted
inserted
replaced
27262:975a29213f35 | 27264:7f5ce6fa0a25 |
---|---|
785 JabberIqType type, const char *id, | 785 JabberIqType type, const char *id, |
786 xmlnode *packet, gpointer nul) | 786 xmlnode *packet, gpointer nul) |
787 { | 787 { |
788 xmlnode *child; | 788 xmlnode *child; |
789 xmlnode *message; | 789 xmlnode *message; |
790 const char *to, *url; | 790 const char *to, *default_url; |
791 const char *in_str; | 791 const char *in_str; |
792 char *to_name; | 792 char *to_name; |
793 | 793 |
794 int i, count = 1, returned_count; | 794 int i, count = 1, returned_count; |
795 | 795 |
835 subjects = g_new0(char* , returned_count + 1); | 835 subjects = g_new0(char* , returned_count + 1); |
836 urls = g_new0(const char* , returned_count + 1); | 836 urls = g_new0(const char* , returned_count + 1); |
837 | 837 |
838 to = xmlnode_get_attrib(packet, "to"); | 838 to = xmlnode_get_attrib(packet, "to"); |
839 to_name = jabber_get_bare_jid(to); | 839 to_name = jabber_get_bare_jid(to); |
840 url = xmlnode_get_attrib(child, "url"); | 840 default_url = xmlnode_get_attrib(child, "url"); |
841 if (!url || !*url) | 841 if (default_url == NULL || *default_url == '\0') |
842 url = "http://www.gmail.com"; | 842 default_url = "https://mail.google.com/mail"; |
843 | 843 |
844 message= xmlnode_get_child(child, "mail-thread-info"); | 844 message= xmlnode_get_child(child, "mail-thread-info"); |
845 for (i=0; message; message = xmlnode_get_next_twin(message), i++) { | 845 for (i=0; message; message = xmlnode_get_next_twin(message), i++) { |
846 xmlnode *sender_node, *subject_node; | 846 xmlnode *sender_node, *subject_node; |
847 const char *from, *tid; | 847 const char *from, *tid, *url; |
848 char *subject; | 848 char *subject; |
849 | |
850 url = xmlnode_get_attrib(message, "url"); | |
851 if (url == NULL || *url == '\0') | |
852 url = default_url; | |
849 | 853 |
850 subject_node = xmlnode_get_child(message, "subject"); | 854 subject_node = xmlnode_get_child(message, "subject"); |
851 sender_node = xmlnode_get_child(message, "senders"); | 855 sender_node = xmlnode_get_child(message, "senders"); |
852 sender_node = xmlnode_get_child(sender_node, "sender"); | 856 sender_node = xmlnode_get_child(sender_node, "sender"); |
853 | 857 |