comparison util.c @ 300:42cdddf0f747

added preliminary support for friendfeed.
author Yoshiki Yazawa <yaz@honeyplanet.jp>
date Mon, 25 May 2009 22:47:44 +0900
parents 18e71951ff27
children 5a22c65d019c
comparison
equal deleted inserted replaced
299:d68ed289ef69 300:42cdddf0f747
353 PurpleAccount *account = purple_conversation_get_account(conv); 353 PurpleAccount *account = purple_conversation_get_account(conv);
354 354
355 return is_jisko_account(account, name); 355 return is_jisko_account(account, name);
356 } 356 }
357 357
358 gboolean
359 is_ffeed_account(PurpleAccount *account, const char *name)
360 {
361 const gchar *proto = purple_account_get_protocol_id(account);
362
363 if(g_strstr_len(name, 22, "ff@chat.friendfeed.com") &&
364 g_strstr_len(proto, 11, "prpl-jabber")) {
365 return TRUE;
366 }
367
368 return FALSE;
369 }
370
371 gboolean
372 is_ffeed_conv(PurpleConversation *conv)
373 {
374 g_return_val_if_fail(conv != NULL, FALSE);
375
376 const char *name = purple_conversation_get_name(conv);
377 PurpleAccount *account = purple_conversation_get_account(conv);
378
379 return is_ffeed_account(account, name);
380 }
381
358 gint 382 gint
359 get_service_type_by_account(PurpleAccount *account, const char *sender) 383 get_service_type_by_account(PurpleAccount *account, const char *sender)
360 { 384 {
361 gint service = unknown_service; 385 gint service = unknown_service;
362 386
369 service = wassr_service; 393 service = wassr_service;
370 else if(is_identica_account(account, sender)) 394 else if(is_identica_account(account, sender))
371 service = identica_service; 395 service = identica_service;
372 else if(is_jisko_account(account, sender)) 396 else if(is_jisko_account(account, sender))
373 service = jisko_service; 397 service = jisko_service;
398 else if(is_ffeed_account(account, sender))
399 service = ffeed_service;
374 400
375 return service; 401 return service;
376 } 402 }
377 403
378 gint 404 gint
388 service = wassr_service; 414 service = wassr_service;
389 else if(is_identica_conv(conv)) 415 else if(is_identica_conv(conv))
390 service = identica_service; 416 service = identica_service;
391 else if(is_jisko_conv(conv)) 417 else if(is_jisko_conv(conv))
392 service = jisko_service; 418 service = jisko_service;
419 else if(is_ffeed_conv(conv))
420 service = ffeed_service;
393 421
394 return service; 422 return service;
395 } 423 }