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