comparison pidgin-twitter.c @ 240:405f8b880142

restored jisko support.
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Tue, 07 Oct 2008 16:44:02 +0900
parents e3a24c98772d
children bd7478109727
comparison
equal deleted inserted replaced
239:e3a24c98772d 240:405f8b880142
22 22
23 23
24 /***********/ 24 /***********/
25 /* globals */ 25 /* globals */
26 /***********/ 26 /***********/
27 #define NUM_REGPS 12 27 #define NUM_REGPS 13
28 #define NUM_SERVICES 3 /* twitter, wassr, identica. */ 28 #define NUM_SERVICES 4 /* twitter, wassr, identica, jisko. */
29 static GRegex *regp[NUM_REGPS]; 29 static GRegex *regp[NUM_REGPS];
30 static gboolean suppress_oops = FALSE; 30 static gboolean suppress_oops = FALSE;
31 static GHashTable *icon_hash[NUM_SERVICES]; 31 static GHashTable *icon_hash[NUM_SERVICES];
32 static GHashTable *conv_hash = NULL; 32 static GHashTable *conv_hash = NULL;
33 static GList *statuseslist = NULL; 33 static GList *statuseslist = NULL;
907 format = RECIPIENT_FORMAT_WASSR; 907 format = RECIPIENT_FORMAT_WASSR;
908 break; 908 break;
909 case identica_service: 909 case identica_service:
910 format = RECIPIENT_FORMAT_IDENTICA; 910 format = RECIPIENT_FORMAT_IDENTICA;
911 break; 911 break;
912 case jisko_service:
913 format = RECIPIENT_FORMAT_JISKO;
914 break;
912 default: 915 default:
913 twitter_debug("unknown service\n"); 916 twitter_debug("unknown service\n");
914 break; 917 break;
915 } 918 }
916 g_snprintf(sub, SUBST_BUF_SIZE, format, match1 ? match1: "", match2, match2); 919 g_snprintf(sub, SUBST_BUF_SIZE, format, match1 ? match1: "", match2, match2);
929 case wassr_service: 932 case wassr_service:
930 format = SENDER_FORMAT_WASSR; 933 format = SENDER_FORMAT_WASSR;
931 break; 934 break;
932 case identica_service: 935 case identica_service:
933 format = SENDER_FORMAT_IDENTICA; 936 format = SENDER_FORMAT_IDENTICA;
937 break;
938 case jisko_service:
939 format = SENDER_FORMAT_JISKO;
934 break; 940 break;
935 default: 941 default:
936 twitter_debug("unknown service\n"); 942 twitter_debug("unknown service\n");
937 break; 943 break;
938 } 944 }
1067 screen_name = purple_prefs_get_string(OPT_SCREEN_NAME_WASSR); 1073 screen_name = purple_prefs_get_string(OPT_SCREEN_NAME_WASSR);
1068 break; 1074 break;
1069 case identica_service: 1075 case identica_service:
1070 screen_name = purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA); 1076 screen_name = purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA);
1071 break; 1077 break;
1078 case jisko_service:
1079 screen_name = purple_prefs_get_string(OPT_SCREEN_NAME_JISKO);
1080 break;
1072 } 1081 }
1073 1082
1074 if (screen_name) { 1083 if (screen_name) {
1075 m = g_strdup_printf("%s: %s", screen_name, *buffer); 1084 m = g_strdup_printf("%s: %s", screen_name, *buffer);
1076 g_free(*buffer); 1085 g_free(*buffer);
1133 g_return_if_fail(gtkconv != NULL); 1142 g_return_if_fail(gtkconv != NULL);
1134 1143
1135 switch(service) { 1144 switch(service) {
1136 case twitter_service: 1145 case twitter_service:
1137 case identica_service: 1146 case identica_service:
1147 case jisko_service:
1138 count = gtk_text_buffer_get_char_count(textbuffer) + 1148 count = gtk_text_buffer_get_char_count(textbuffer) +
1139 (unsigned int)g_utf8_strlen(new_text, -1); 1149 (unsigned int)g_utf8_strlen(new_text, -1);
1140 markup = g_markup_printf_escaped("<span color=\"%s\">%u</span>", 1150 markup = g_markup_printf_escaped("<span color=\"%s\">%u</span>",
1141 count <= 140 ? "black" : "red", count); 1151 count <= 140 ? "black" : "red", count);
1142 break; 1152 break;
1173 g_return_if_fail(gtkconv != NULL); 1183 g_return_if_fail(gtkconv != NULL);
1174 1184
1175 switch(service) { 1185 switch(service) {
1176 case twitter_service: 1186 case twitter_service:
1177 case identica_service: 1187 case identica_service:
1188 case jisko_service:
1178 count= gtk_text_buffer_get_char_count(textbuffer) - 1189 count= gtk_text_buffer_get_char_count(textbuffer) -
1179 (gtk_text_iter_get_offset(end_pos) - 1190 (gtk_text_iter_get_offset(end_pos) -
1180 gtk_text_iter_get_offset(start_pos)); 1191 gtk_text_iter_get_offset(start_pos));
1181 markup = g_markup_printf_escaped("<span color=\"%s\">%u</span>", 1192 markup = g_markup_printf_escaped("<span color=\"%s\">%u</span>",
1182 count <= 140 ? "black" : "red", count); 1193 count <= 140 ? "black" : "red", count);
1214 gint service = get_service_type(conv); 1225 gint service = get_service_type(conv);
1215 switch(service) { 1226 switch(service) {
1216 case twitter_service: 1227 case twitter_service:
1217 case wassr_service: 1228 case wassr_service:
1218 case identica_service: 1229 case identica_service:
1230 case jisko_service:
1219 detach_from_conv(conv, NULL); 1231 detach_from_conv(conv, NULL);
1220 break; 1232 break;
1221 default: 1233 default:
1222 twitter_debug("unknown service\n"); 1234 twitter_debug("unknown service\n");
1223 break; 1235 break;
1331 /* only attach to twitter conversation window */ 1343 /* only attach to twitter conversation window */
1332 switch(service) { 1344 switch(service) {
1333 case twitter_service: 1345 case twitter_service:
1334 case wassr_service: 1346 case wassr_service:
1335 case identica_service: 1347 case identica_service:
1348 case jisko_service:
1336 attach_to_conv(conv, NULL); 1349 attach_to_conv(conv, NULL);
1337 break; 1350 break;
1338 default: 1351 default:
1339 twitter_debug("unknown service\n"); 1352 twitter_debug("unknown service\n");
1340 break; 1353 break;
1472 PurpleAccount *account = purple_conversation_get_account(conv); 1485 PurpleAccount *account = purple_conversation_get_account(conv);
1473 1486
1474 return is_identica_account(account, name); 1487 return is_identica_account(account, name);
1475 } 1488 }
1476 1489
1490 static gboolean
1491 is_jisko_account(PurpleAccount *account, const char *name)
1492 {
1493 const gchar *proto = purple_account_get_protocol_id(account);
1494
1495 if(g_strstr_len(name, 16, "bot@jisko.net") &&
1496 g_strstr_len(proto, 11, "prpl-jabber")) {
1497 return TRUE;
1498 }
1499
1500 return FALSE;
1501 }
1502
1503 static gboolean
1504 is_jisko_conv(PurpleConversation *conv)
1505 {
1506 g_return_val_if_fail(conv != NULL, FALSE);
1507
1508 const char *name = purple_conversation_get_name(conv);
1509 PurpleAccount *account = purple_conversation_get_account(conv);
1510
1511 return is_jisko_account(account, name);
1512 }
1513
1477 static gint 1514 static gint
1478 get_service_type_by_account(PurpleAccount *account, const char *sender) 1515 get_service_type_by_account(PurpleAccount *account, const char *sender)
1479 { 1516 {
1480 gint service = unknown_service; 1517 gint service = unknown_service;
1481 1518
1486 service = twitter_service; 1523 service = twitter_service;
1487 else if(is_wassr_account(account, sender)) 1524 else if(is_wassr_account(account, sender))
1488 service = wassr_service; 1525 service = wassr_service;
1489 else if(is_identica_account(account, sender)) 1526 else if(is_identica_account(account, sender))
1490 service = identica_service; 1527 service = identica_service;
1528 else if(is_jisko_account(account, sender))
1529 service = jisko_service;
1491 1530
1492 return service; 1531 return service;
1493 } 1532 }
1494 1533
1495 static gint 1534 static gint
1503 service = twitter_service; 1542 service = twitter_service;
1504 else if(is_wassr_conv(conv)) 1543 else if(is_wassr_conv(conv))
1505 service = wassr_service; 1544 service = wassr_service;
1506 else if(is_identica_conv(conv)) 1545 else if(is_identica_conv(conv))
1507 service = identica_service; 1546 service = identica_service;
1547 else if(is_jisko_conv(conv))
1548 service = jisko_service;
1508 1549
1509 return service; 1550 return service;
1510 } 1551 }
1511 1552
1512 static void 1553 static void
1529 source.conv = conv; 1570 source.conv = conv;
1530 attach_to_conv(conv, NULL); 1571 attach_to_conv(conv, NULL);
1531 break; 1572 break;
1532 case wassr_service: 1573 case wassr_service:
1533 case identica_service: 1574 case identica_service:
1575 case jisko_service:
1534 attach_to_conv(conv, NULL); 1576 attach_to_conv(conv, NULL);
1535 break; 1577 break;
1536 default: 1578 default:
1537 twitter_debug("unknown service\n"); 1579 twitter_debug("unknown service\n");
1538 break; 1580 break;
1565 hash = icon_hash[wassr_service]; 1607 hash = icon_hash[wassr_service];
1566 break; 1608 break;
1567 case identica_service: 1609 case identica_service:
1568 hash = icon_hash[identica_service]; 1610 hash = icon_hash[identica_service];
1569 break; 1611 break;
1612 case jisko_service:
1613 hash = icon_hash[jisko_service];
1614 break;
1570 default: 1615 default:
1571 twitter_debug("unknown service\n"); 1616 twitter_debug("unknown service\n");
1572 break; 1617 break;
1573 } 1618 }
1574 1619
1600 screen_name = g_strdup_printf("@%s", purple_prefs_get_string(OPT_SCREEN_NAME_WASSR)); 1645 screen_name = g_strdup_printf("@%s", purple_prefs_get_string(OPT_SCREEN_NAME_WASSR));
1601 break; 1646 break;
1602 case identica_service: 1647 case identica_service:
1603 list = purple_prefs_get_string(OPT_FILTER_IDENTICA); 1648 list = purple_prefs_get_string(OPT_FILTER_IDENTICA);
1604 screen_name = g_strdup_printf("@%s", purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA)); 1649 screen_name = g_strdup_printf("@%s", purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA));
1650 break;
1651 case jisko_service:
1652 list = purple_prefs_get_string(OPT_FILTER_JISKO);
1653 screen_name = g_strdup_printf("@%s", purple_prefs_get_string(OPT_SCREEN_NAME_JISKO));
1605 break; 1654 break;
1606 } 1655 }
1607 g_return_if_fail(list != NULL); 1656 g_return_if_fail(list != NULL);
1608 if(strstr(list, DEFAULT_LIST)) 1657 if(strstr(list, DEFAULT_LIST))
1609 return; 1658 return;
1827 hash = icon_hash[wassr_service]; 1876 hash = icon_hash[wassr_service];
1828 break; 1877 break;
1829 case identica_service: 1878 case identica_service:
1830 hash = icon_hash[identica_service]; 1879 hash = icon_hash[identica_service];
1831 break; 1880 break;
1881 case jisko_service:
1882 hash = icon_hash[jisko_service];
1883 break;
1832 default: 1884 default:
1833 twitter_debug("unknown service\n"); 1885 twitter_debug("unknown service\n");
1834 } 1886 }
1835 1887
1836 if(hash) 1888 if(hash)
1872 case wassr_service: 1924 case wassr_service:
1873 hash = icon_hash[wassr_service]; 1925 hash = icon_hash[wassr_service];
1874 break; 1926 break;
1875 case identica_service: 1927 case identica_service:
1876 hash = icon_hash[identica_service]; 1928 hash = icon_hash[identica_service];
1929 break;
1930 case jisko_service:
1931 hash = icon_hash[jisko_service];
1877 break; 1932 break;
1878 default: 1933 default:
1879 twitter_debug("unknown service\n"); 1934 twitter_debug("unknown service\n");
1880 break; 1935 break;
1881 } 1936 }
1930 } 1985 }
1931 else if(service == identica_service) { 1986 else if(service == identica_service) {
1932 data = (icon_data *)g_hash_table_lookup( 1987 data = (icon_data *)g_hash_table_lookup(
1933 icon_hash[identica_service], user_name); 1988 icon_hash[identica_service], user_name);
1934 regp_id = IMAGE_IDENTICA; 1989 regp_id = IMAGE_IDENTICA;
1990 }
1991 else if(service == jisko_service) {
1992 data = (icon_data *)g_hash_table_lookup(
1993 icon_hash[jisko_service], user_name);
1994 regp_id = IMAGE_JISKO;
1935 } 1995 }
1936 1996
1937 if(!url_text) { 1997 if(!url_text) {
1938 if(data) { 1998 if(data) {
1939 data->requested = FALSE; 1999 data->requested = FALSE;
2098 hash = icon_hash[wassr_service]; 2158 hash = icon_hash[wassr_service];
2099 break; 2159 break;
2100 case identica_service: 2160 case identica_service:
2101 hash = icon_hash[identica_service]; 2161 hash = icon_hash[identica_service];
2102 break; 2162 break;
2163 case jisko_service:
2164 hash = icon_hash[jisko_service];
2165 break;
2103 default: 2166 default:
2104 twitter_debug("unknown service\n"); 2167 twitter_debug("unknown service\n");
2105 } 2168 }
2106 2169
2107 if(hash) 2170 if(hash)
2169 suffix = "wassr"; 2232 suffix = "wassr";
2170 break; 2233 break;
2171 case identica_service: 2234 case identica_service:
2172 suffix = "identica"; 2235 suffix = "identica";
2173 break; 2236 break;
2237 case jisko_service:
2238 suffix = "jisko";
2239 break;
2174 default: 2240 default:
2175 twitter_debug("unknown service\n"); 2241 twitter_debug("unknown service\n");
2176 break; 2242 break;
2177 } 2243 }
2178 2244
2232 suffix = "wassr"; 2298 suffix = "wassr";
2233 break; 2299 break;
2234 case identica_service: 2300 case identica_service:
2235 suffix = "identica"; 2301 suffix = "identica";
2236 hash = icon_hash[identica_service]; 2302 hash = icon_hash[identica_service];
2303 break;
2304 case jisko_service:
2305 suffix = "jisko";
2306 hash = icon_hash[jisko_service];
2237 break; 2307 break;
2238 default: 2308 default:
2239 twitter_debug("unknown service\n"); 2309 twitter_debug("unknown service\n");
2240 break; 2310 break;
2241 } 2311 }
2322 url = g_strdup_printf("http://wassr.jp/user/%s", user_name); 2392 url = g_strdup_printf("http://wassr.jp/user/%s", user_name);
2323 break; 2393 break;
2324 case identica_service: 2394 case identica_service:
2325 url = g_strdup_printf("http://identi.ca/%s", user_name); 2395 url = g_strdup_printf("http://identi.ca/%s", user_name);
2326 break; 2396 break;
2397 case jisko_service:
2398 url = g_strdup_printf("http://jisko.net/%s", user_name);
2399 break;
2327 default: 2400 default:
2328 twitter_debug("unknown service\n"); 2401 twitter_debug("unknown service\n");
2329 break; 2402 break;
2330 } 2403 }
2331 2404
2335 gotdata->service = service; 2408 gotdata->service = service;
2336 2409
2337 /* gotdata will be released in got_icon_cb */ 2410 /* gotdata will be released in got_icon_cb */
2338 if(service == twitter_service || 2411 if(service == twitter_service ||
2339 service == wassr_service || 2412 service == wassr_service ||
2340 service == identica_service) { 2413 service == identica_service ||
2414 service == jisko_service) {
2341 data->fetch_data = purple_util_fetch_url(url, TRUE, NULL, TRUE, 2415 data->fetch_data = purple_util_fetch_url(url, TRUE, NULL, TRUE,
2342 got_page_cb, gotdata); 2416 got_page_cb, gotdata);
2343 } 2417 }
2344 else { 2418 else {
2345 data->fetch_data = purple_util_fetch_url(url, TRUE, NULL, TRUE, 2419 data->fetch_data = purple_util_fetch_url(url, TRUE, NULL, TRUE,
2366 case wassr_service: 2440 case wassr_service:
2367 hash = icon_hash[wassr_service]; 2441 hash = icon_hash[wassr_service];
2368 break; 2442 break;
2369 case identica_service: 2443 case identica_service:
2370 hash = icon_hash[identica_service]; 2444 hash = icon_hash[identica_service];
2445 break;
2446 case jisko_service:
2447 hash = icon_hash[jisko_service];
2371 break; 2448 break;
2372 default: 2449 default:
2373 twitter_debug("unknown service\n"); 2450 twitter_debug("unknown service\n");
2374 break; 2451 break;
2375 } 2452 }
2465 case wassr_service: 2542 case wassr_service:
2466 hash = icon_hash[wassr_service]; 2543 hash = icon_hash[wassr_service];
2467 break; 2544 break;
2468 case identica_service: 2545 case identica_service:
2469 hash = icon_hash[identica_service]; 2546 hash = icon_hash[identica_service];
2547 break;
2548 case jisko_service:
2549 hash = icon_hash[jisko_service];
2470 break; 2550 break;
2471 default: 2551 default:
2472 twitter_debug("unknown service\n"); 2552 twitter_debug("unknown service\n");
2473 break; 2553 break;
2474 } 2554 }
2609 regp[SENDER] = g_regex_new(P_SENDER, 0, 0, NULL); 2689 regp[SENDER] = g_regex_new(P_SENDER, 0, 0, NULL);
2610 regp[COMMAND] = g_regex_new(P_COMMAND, G_REGEX_RAW, 0, NULL); 2690 regp[COMMAND] = g_regex_new(P_COMMAND, G_REGEX_RAW, 0, NULL);
2611 regp[PSEUDO] = g_regex_new(P_PSEUDO, G_REGEX_RAW, 0, NULL); 2691 regp[PSEUDO] = g_regex_new(P_PSEUDO, G_REGEX_RAW, 0, NULL);
2612 regp[USER] = g_regex_new(P_USER, 0, 0, NULL); 2692 regp[USER] = g_regex_new(P_USER, 0, 0, NULL);
2613 regp[CHANNEL_WASSR] = g_regex_new(P_CHANNEL, 0, 0, NULL); 2693 regp[CHANNEL_WASSR] = g_regex_new(P_CHANNEL, 0, 0, NULL);
2694 regp[TAG_IDENTICA] = g_regex_new(P_TAG_IDENTICA, 0, 0, NULL);
2614 regp[IMAGE_TWITTER] = g_regex_new(P_IMAGE_TWITTER, 0, 0, NULL); 2695 regp[IMAGE_TWITTER] = g_regex_new(P_IMAGE_TWITTER, 0, 0, NULL);
2615 regp[IMAGE_WASSR] = g_regex_new(P_IMAGE_WASSR, 0, 0, NULL); 2696 regp[IMAGE_WASSR] = g_regex_new(P_IMAGE_WASSR, 0, 0, NULL);
2616 regp[IMAGE_IDENTICA] = g_regex_new(P_IMAGE_IDENTICA, 0, 0, NULL); 2697 regp[IMAGE_IDENTICA] = g_regex_new(P_IMAGE_IDENTICA, 0, 0, NULL);
2617 regp[TAG_IDENTICA] = g_regex_new(P_TAG_IDENTICA, 0, 0, NULL); 2698 regp[IMAGE_JISKO] = g_regex_new(P_IMAGE_JISKO, 0, 0, NULL);
2618 regp[SIZE_128_WASSR] = g_regex_new(P_SIZE_128_WASSR, 0, 0, NULL); 2699 regp[SIZE_128_WASSR] = g_regex_new(P_SIZE_128_WASSR, 0, 0, NULL);
2619 regp[EXCESS_LF] = g_regex_new(P_EXCESS_LF, 0, 0, NULL); 2700 regp[EXCESS_LF] = g_regex_new(P_EXCESS_LF, 0, 0, NULL);
2620 2701
2621 for(i = twitter_service; i < NUM_SERVICES; i++) { 2702 for(i = twitter_service; i < NUM_SERVICES; i++) {
2622 icon_hash[i] = g_hash_table_new_full(g_str_hash, g_str_equal, 2703 icon_hash[i] = g_hash_table_new_full(g_str_hash, g_str_equal,
2911 text = purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA); 2992 text = purple_prefs_get_string(OPT_SCREEN_NAME_IDENTICA);
2912 gtk_entry_set_text(GTK_ENTRY(e), text); 2993 gtk_entry_set_text(GTK_ENTRY(e), text);
2913 g_signal_connect(e, "changed", 2994 g_signal_connect(e, "changed",
2914 G_CALLBACK(text_changed_cb), &e); 2995 G_CALLBACK(text_changed_cb), &e);
2915 2996
2997 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_jisko"));
2998 g_object_set_data(G_OBJECT(e), "pref", OPT_SCREEN_NAME_JISKO);
2999 text = purple_prefs_get_string(OPT_SCREEN_NAME_JISKO);
3000 gtk_entry_set_text(GTK_ENTRY(e), text);
3001 g_signal_connect(e, "changed",
3002 G_CALLBACK(text_changed_cb), &e);
3003
2916 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_api")); 3004 e = GTK_WIDGET(gtk_builder_get_object (builder, "account_api"));
2917 g_object_set_data(G_OBJECT(e), "pref", OPT_API_BASE_POST); 3005 g_object_set_data(G_OBJECT(e), "pref", OPT_API_BASE_POST);
2918 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(e), 3006 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(e),
2919 purple_prefs_get_bool(OPT_API_BASE_POST)); 3007 purple_prefs_get_bool(OPT_API_BASE_POST));
2920 g_signal_connect(e, "toggled", 3008 g_signal_connect(e, "toggled",
3019 G_CALLBACK(text_changed_cb), &e); 3107 G_CALLBACK(text_changed_cb), &e);
3020 3108
3021 e = GTK_WIDGET(gtk_builder_get_object (builder, "filter_identica")); 3109 e = GTK_WIDGET(gtk_builder_get_object (builder, "filter_identica"));
3022 g_object_set_data(G_OBJECT(e), "pref", OPT_FILTER_IDENTICA); 3110 g_object_set_data(G_OBJECT(e), "pref", OPT_FILTER_IDENTICA);
3023 text = purple_prefs_get_string(OPT_FILTER_IDENTICA); 3111 text = purple_prefs_get_string(OPT_FILTER_IDENTICA);
3112 gtk_entry_set_text(GTK_ENTRY(e), text);
3113 g_signal_connect(e, "changed",
3114 G_CALLBACK(text_changed_cb), &e);
3115
3116 e = GTK_WIDGET(gtk_builder_get_object (builder, "filter_jisko"));
3117 g_object_set_data(G_OBJECT(e), "pref", OPT_FILTER_JISKO);
3118 text = purple_prefs_get_string(OPT_FILTER_JISKO);
3024 gtk_entry_set_text(GTK_ENTRY(e), text); 3119 gtk_entry_set_text(GTK_ENTRY(e), text);
3025 g_signal_connect(e, "changed", 3120 g_signal_connect(e, "changed",
3026 G_CALLBACK(text_changed_cb), &e); 3121 G_CALLBACK(text_changed_cb), &e);
3027 3122
3028 3123
3236 0, /**< flags */ 3331 0, /**< flags */
3237 NULL, /**< deps */ 3332 NULL, /**< deps */
3238 PURPLE_PRIORITY_DEFAULT, /**< priority */ 3333 PURPLE_PRIORITY_DEFAULT, /**< priority */
3239 PLUGIN_ID, /**< id */ 3334 PLUGIN_ID, /**< id */
3240 "Pidgin-Twitter", /**< name */ 3335 "Pidgin-Twitter", /**< name */
3241 "0.8.0b1", /**< version */ 3336 "0.8.0b2", /**< version */
3242 "provides useful features for twitter", /** summary */ 3337 "provides useful features for twitter", /** summary */
3243 "provides useful features for twitter", /** desc */ 3338 "provides useful features for twitter", /** desc */
3244 "Yoshiki Yazawa, mikanbako, \nKonosuke Watanabe, IWATA Ray, \nmojin, umq, \nthe pidging-twitter team", /**< author */ 3339 "Yoshiki Yazawa, mikanbako, \nKonosuke Watanabe, IWATA Ray, \nmojin, umq, \nthe pidging-twitter team", /**< author */
3245 "http://www.honeyplanet.jp/pidgin-twitter/", /**< homepage */ 3340 "http://www.honeyplanet.jp/pidgin-twitter/", /**< homepage */
3246 load_plugin, /**< load */ 3341 load_plugin, /**< load */
3286 purple_prefs_add_int(OPT_API_BASE_GET_INTERVAL, TWITTER_DEFAULT_INTERVAL); 3381 purple_prefs_add_int(OPT_API_BASE_GET_INTERVAL, TWITTER_DEFAULT_INTERVAL);
3287 purple_prefs_add_string(OPT_SCREEN_NAME_TWITTER, EMPTY); 3382 purple_prefs_add_string(OPT_SCREEN_NAME_TWITTER, EMPTY);
3288 purple_prefs_add_string(OPT_PASSWORD_TWITTER, EMPTY); 3383 purple_prefs_add_string(OPT_PASSWORD_TWITTER, EMPTY);
3289 purple_prefs_add_string(OPT_SCREEN_NAME_WASSR, EMPTY); 3384 purple_prefs_add_string(OPT_SCREEN_NAME_WASSR, EMPTY);
3290 purple_prefs_add_string(OPT_SCREEN_NAME_IDENTICA, EMPTY); 3385 purple_prefs_add_string(OPT_SCREEN_NAME_IDENTICA, EMPTY);
3386 purple_prefs_add_string(OPT_SCREEN_NAME_JISKO, EMPTY);
3291 3387
3292 purple_prefs_add_bool(OPT_SHOW_ICON, TRUE); 3388 purple_prefs_add_bool(OPT_SHOW_ICON, TRUE);
3293 purple_prefs_add_int(OPT_ICON_SIZE, DEFAULT_ICON_SIZE); 3389 purple_prefs_add_int(OPT_ICON_SIZE, DEFAULT_ICON_SIZE);
3294 purple_prefs_add_bool(OPT_UPDATE_ICON, TRUE); 3390 purple_prefs_add_bool(OPT_UPDATE_ICON, TRUE);
3295 purple_prefs_add_int(OPT_ICON_MAX_COUNT, DEFAULT_ICON_MAX_COUNT); 3391 purple_prefs_add_int(OPT_ICON_MAX_COUNT, DEFAULT_ICON_MAX_COUNT);
3299 purple_prefs_add_bool(OPT_FILTER, TRUE); 3395 purple_prefs_add_bool(OPT_FILTER, TRUE);
3300 purple_prefs_add_bool(OPT_FILTER_EXCLUDE_REPLY, TRUE); 3396 purple_prefs_add_bool(OPT_FILTER_EXCLUDE_REPLY, TRUE);
3301 purple_prefs_add_string(OPT_FILTER_TWITTER, DEFAULT_LIST); 3397 purple_prefs_add_string(OPT_FILTER_TWITTER, DEFAULT_LIST);
3302 purple_prefs_add_string(OPT_FILTER_WASSR, DEFAULT_LIST); 3398 purple_prefs_add_string(OPT_FILTER_WASSR, DEFAULT_LIST);
3303 purple_prefs_add_string(OPT_FILTER_IDENTICA, DEFAULT_LIST); 3399 purple_prefs_add_string(OPT_FILTER_IDENTICA, DEFAULT_LIST);
3400 purple_prefs_add_string(OPT_FILTER_JISKO, DEFAULT_LIST);
3304 } 3401 }
3305 3402
3306 PURPLE_INIT_PLUGIN(pidgin_twitter, init_plugin, info) 3403 PURPLE_INIT_PLUGIN(pidgin_twitter, init_plugin, info)