Mon, 08 Jun 2009 02:24:49 +0000
Use the JID for adding a chat/buddy because the name is for descriptive
purpose only, and using it will not fill in the Add Chat dialog correctly.
Because the JID is not visible, the user will not know what to actually put
there instead.
| 7543 | 1 | /* |
| 2 | * Release Notification Plugin | |
| 3 | * | |
| 4 | * Copyright (C) 2003, Nathan Walp <faceprint@faceprint.com> | |
| 5 | * | |
| 6 | * This program is free software; you can redistribute it and/or | |
| 7 | * modify it under the terms of the GNU General Public License as | |
| 8 | * published by the Free Software Foundation; either version 2 of the | |
| 9 | * License, or (at your option) any later version. | |
| 10 | * | |
| 11 | * This program is distributed in the hope that it will be useful, but | |
| 12 | * WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
| 14 | * General Public License for more details. | |
| 15 | * | |
| 16 | * You should have received a copy of the GNU General Public License | |
| 17 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
18169
diff
changeset
|
18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA |
|
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
18169
diff
changeset
|
19 | * 02111-1301, USA. |
| 7543 | 20 | */ |
| 21 | ||
| 22 | #ifdef HAVE_CONFIG_H | |
| 23 | #include <config.h> | |
| 24 | #endif | |
| 25 | ||
| 15884 | 26 | #ifndef PURPLE_PLUGINS |
| 27 | #define PURPLE_PLUGINS | |
| 7543 | 28 | #endif |
| 29 | ||
| 30 | #include "internal.h" | |
| 31 | ||
| 32 | #include <string.h> | |
| 33 | ||
| 34 | #include "connection.h" | |
| 35 | #include "core.h" | |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
36 | #include "debug.h" |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
37 | #include "gtkblist.h" |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
38 | #include "gtkutils.h" |
| 7543 | 39 | #include "notify.h" |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
40 | #include "pidginstock.h" |
| 7543 | 41 | #include "prefs.h" |
| 42 | #include "util.h" | |
| 9943 | 43 | #include "version.h" |
| 7543 | 44 | |
| 15577 | 45 | #include "pidgin.h" |
|
15442
2ff7f5308727
I think this is all the instances of 'Gaim' within pidgin/
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
46 | |
| 7543 | 47 | /* 1 day */ |
| 48 | #define MIN_CHECK_INTERVAL 60 * 60 * 24 | |
| 49 | ||
| 50 | static void | |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
51 | release_hide() |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
52 | { |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
53 | /* No-op. We may use this method in the future to avoid showing |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
54 | * the popup twice */ |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
55 | } |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
56 | |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
57 | static void |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
58 | release_show() |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
59 | { |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
60 | purple_notify_uri(NULL, PURPLE_WEBSITE); |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
61 | } |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
62 | |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
63 | static void |
| 15884 | 64 | version_fetch_cb(PurpleUtilFetchUrlData *url_data, gpointer user_data, |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
65 | const gchar *response, size_t len, const gchar *error_message) |
| 7543 | 66 | { |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
67 | gchar *cur_ver; |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
68 | const char *tmp, *changelog; |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
69 | char response_code[4]; |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
70 | GtkWidget *release_dialog; |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
71 | |
| 7543 | 72 | GString *message; |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
73 | int i = 0; |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
74 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
75 | if(error_message || !response || !len) |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
76 | return; |
| 7543 | 77 | |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
78 | memset(response_code, '\0', sizeof(response_code)); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
79 | /* Parse the status code - the response should be in the form of "HTTP/?.? 200 ..." */ |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
80 | if ((tmp = strstr(response, " ")) != NULL) { |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
81 | tmp++; |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
82 | /* Read the 3 digit status code */ |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
83 | if (len - (tmp - response) > 3) { |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
84 | memcpy(response_code, tmp, 3); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
85 | } |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
86 | } |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
87 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
88 | if (strcmp(response_code, "200") != 0) { |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
89 | purple_debug_error("relnot", "Didn't recieve a HTTP status code of 200.\n"); |
| 7543 | 90 | return; |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
91 | } |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
92 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
93 | /* Go to the start of the data */ |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
94 | if((changelog = strstr(response, "\r\n\r\n")) == NULL) { |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
95 | purple_debug_error("relnot", "Unable to find start of HTTP response data.\n"); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
96 | return; |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
97 | } |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
98 | changelog += 4; |
| 7543 | 99 | |
| 100 | while(changelog[i] && changelog[i] != '\n') i++; | |
| 101 | ||
| 14281 | 102 | /* this basically means the version thing wasn't in the format we were |
| 103 | * looking for so sourceforge is probably having web server issues, and | |
| 104 | * we should try again later */ | |
| 105 | if(i == 0) | |
| 106 | return; | |
| 107 | ||
| 7543 | 108 | cur_ver = g_strndup(changelog, i); |
| 109 | ||
| 110 | message = g_string_new(""); | |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
111 | g_string_append_printf(message, _("You can upgrade to %s %s today."), |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
112 | PIDGIN_NAME, cur_ver); |
| 7543 | 113 | |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
114 | release_dialog = pidgin_make_mini_dialog( |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
115 | NULL, PIDGIN_STOCK_DIALOG_INFO, |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
116 | _("New Version Available"), |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
117 | message->str, |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
118 | NULL, |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
119 | _("Later"), PURPLE_CALLBACK(release_hide), |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
120 | _("Download Now"), PURPLE_CALLBACK(release_show), |
|
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
121 | NULL); |
| 7543 | 122 | |
|
24768
c9d1cfe1d89c
A patch from Casey Ho to move the release notification to a mini-dialog in the buddy list. The change log is no longer displayed, but will open a webbrowser to show it.
Casey Ho <caseyho@pidgin.im>
parents:
24247
diff
changeset
|
123 | pidgin_blist_add_alert(release_dialog); |
| 7543 | 124 | |
| 125 | g_string_free(message, TRUE); | |
| 7599 | 126 | g_free(cur_ver); |
| 7543 | 127 | } |
| 128 | ||
| 129 | static void | |
| 130 | do_check(void) | |
| 131 | { | |
| 15884 | 132 | int last_check = purple_prefs_get_int("/plugins/gtk/relnot/last_check"); |
| 7543 | 133 | if(!last_check || time(NULL) - last_check > MIN_CHECK_INTERVAL) { |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
134 | gchar *url, *request; |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
135 | const char *host = "pidgin.im"; |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
136 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
137 | url = g_strdup_printf("http://%s/version.php?version=%s&build=%s", |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
138 | host, |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
139 | purple_core_get_version(), |
| 7543 | 140 | #ifdef _WIN32 |
| 15884 | 141 | "purple-win32" |
| 7543 | 142 | #else |
| 15884 | 143 | "purple" |
| 7543 | 144 | #endif |
| 7546 | 145 | ); |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
146 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
147 | request = g_strdup_printf( |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
148 | "GET %s HTTP/1.0\r\n" |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
149 | "Connection: close\r\n" |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
150 | "Accept: */*\r\n" |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
151 | "Host: %s\r\n\r\n", |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
152 | url, |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
153 | host); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
154 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
155 | purple_util_fetch_url_request_len(url, TRUE, NULL, FALSE, |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
156 | request, TRUE, -1, version_fetch_cb, NULL); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
157 | |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
158 | g_free(request); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
159 | g_free(url); |
|
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
160 | |
| 15884 | 161 | purple_prefs_set_int("/plugins/gtk/relnot/last_check", time(NULL)); |
|
24247
9f640ea2ab9f
Parse the HTTP status code in the release notification plugin and only display
Daniel Atallah <datallah@pidgin.im>
parents:
20288
diff
changeset
|
162 | |
| 7543 | 163 | } |
| 164 | } | |
| 165 | ||
| 166 | static void | |
| 15884 | 167 | signed_on_cb(PurpleConnection *gc, void *data) { |
| 7543 | 168 | do_check(); |
| 169 | } | |
| 170 | ||
| 171 | /************************************************************************** | |
| 172 | * Plugin stuff | |
| 173 | **************************************************************************/ | |
| 174 | static gboolean | |
| 15884 | 175 | plugin_load(PurplePlugin *plugin) |
| 7543 | 176 | { |
| 15884 | 177 | purple_signal_connect(purple_connections_get_handle(), "signed-on", |
| 178 | plugin, PURPLE_CALLBACK(signed_on_cb), NULL); | |
| 7543 | 179 | |
| 180 | /* we don't check if we're offline */ | |
| 15884 | 181 | if(purple_connections_get_all()) |
| 7543 | 182 | do_check(); |
| 183 | ||
| 184 | return TRUE; | |
| 185 | } | |
| 186 | ||
| 15884 | 187 | static PurplePluginInfo info = |
| 7543 | 188 | { |
| 15884 | 189 | PURPLE_PLUGIN_MAGIC, |
| 190 | PURPLE_MAJOR_VERSION, | |
| 191 | PURPLE_MINOR_VERSION, | |
| 192 | PURPLE_PLUGIN_STANDARD, /**< type */ | |
| 7543 | 193 | NULL, /**< ui_requirement */ |
| 194 | 0, /**< flags */ | |
| 195 | NULL, /**< dependencies */ | |
| 15884 | 196 | PURPLE_PRIORITY_DEFAULT, /**< priority */ |
| 7543 | 197 | |
| 198 | "gtk-relnot", /**< id */ | |
| 199 | N_("Release Notification"), /**< name */ | |
|
20288
5ca925a094e2
applied changes from 03b709ec2a153e7e82719df0ba4635108bb1d3c6
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19859
diff
changeset
|
200 | DISPLAY_VERSION, /**< version */ |
| 7543 | 201 | /** summary */ |
| 202 | N_("Checks periodically for new releases."), | |
| 203 | /** description */ | |
| 204 | N_("Checks periodically for new releases and notifies the user " | |
| 205 | "with the ChangeLog."), | |
| 206 | "Nathan Walp <faceprint@faceprint.com>", /**< author */ | |
| 15884 | 207 | PURPLE_WEBSITE, /**< homepage */ |
| 7543 | 208 | |
| 209 | plugin_load, /**< load */ | |
| 210 | NULL, /**< unload */ | |
| 211 | NULL, /**< destroy */ | |
| 212 | ||
| 213 | NULL, /**< ui_info */ | |
| 8993 | 214 | NULL, /**< extra_info */ |
| 215 | NULL, | |
|
16749
14a3fdc0aed7
Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents:
16073
diff
changeset
|
216 | NULL, |
|
14a3fdc0aed7
Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents:
16073
diff
changeset
|
217 | |
|
14a3fdc0aed7
Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents:
16073
diff
changeset
|
218 | /* padding */ |
|
14a3fdc0aed7
Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents:
16073
diff
changeset
|
219 | NULL, |
|
14a3fdc0aed7
Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents:
16073
diff
changeset
|
220 | NULL, |
|
14a3fdc0aed7
Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents:
16073
diff
changeset
|
221 | NULL, |
| 8993 | 222 | NULL |
| 7543 | 223 | }; |
| 224 | ||
| 225 | static void | |
| 15884 | 226 | init_plugin(PurplePlugin *plugin) |
| 7543 | 227 | { |
| 15884 | 228 | purple_prefs_add_none("/plugins/gtk/relnot"); |
| 229 | purple_prefs_add_int("/plugins/gtk/relnot/last_check", 0); | |
| 7543 | 230 | } |
| 231 | ||
| 15884 | 232 | PURPLE_INIT_PLUGIN(relnot, init_plugin, info) |