Пример #1
0
static void
libbalsa_address_book_ldap_class_init(LibBalsaAddressBookLdapClass * klass)
{
    LibBalsaAddressBookClass *address_book_class;
    GObjectClass *object_class;

    parent_class = g_type_class_peek_parent(klass);

    object_class = G_OBJECT_CLASS(klass);
    address_book_class = LIBBALSA_ADDRESS_BOOK_CLASS(klass);

    object_class->finalize = libbalsa_address_book_ldap_finalize;

    address_book_class->load = libbalsa_address_book_ldap_load;
    address_book_class->add_address = libbalsa_address_book_ldap_add_address;
    address_book_class->remove_address = 
        libbalsa_address_book_ldap_remove_address;
    address_book_class->modify_address =
        libbalsa_address_book_ldap_modify_address;

    address_book_class->save_config =
	libbalsa_address_book_ldap_save_config;
    address_book_class->load_config =
	libbalsa_address_book_ldap_load_config;

    address_book_class->alias_complete = 
	libbalsa_address_book_ldap_alias_complete;
}
Пример #2
0
static void
libbalsa_address_book_ldap_save_config(LibBalsaAddressBook * ab,
				       const gchar * prefix)
{
    LibBalsaAddressBookLdap *ldap;

    g_return_if_fail(LIBBALSA_IS_ADDRESS_BOOK_LDAP(ab));

    ldap = LIBBALSA_ADDRESS_BOOK_LDAP(ab);

    libbalsa_conf_set_string("Host", ldap->host);
    if(ldap->base_dn) libbalsa_conf_set_string("BaseDN", ldap->base_dn);
    if(ldap->bind_dn) libbalsa_conf_private_set_string("BindDN", ldap->bind_dn);
    if(ldap->passwd)  libbalsa_conf_private_set_string("Passwd", ldap->passwd);
    if(ldap->priv_book_dn)
        libbalsa_conf_set_string("BookDN", ldap->priv_book_dn);
    libbalsa_conf_set_bool("EnableTLS", ldap->enable_tls);
    if (LIBBALSA_ADDRESS_BOOK_CLASS(parent_class)->save_config)
	LIBBALSA_ADDRESS_BOOK_CLASS(parent_class)->save_config(ab, prefix);
}
Пример #3
0
static void
libbalsa_address_book_ldap_load_config(LibBalsaAddressBook * ab,
				       const gchar * prefix)
{
    LibBalsaAddressBookLdap *ldap;

    g_return_if_fail(LIBBALSA_IS_ADDRESS_BOOK_LDAP(ab));

    ldap = LIBBALSA_ADDRESS_BOOK_LDAP(ab);

    ldap->host = libbalsa_conf_get_string("Host");
    ldap->base_dn = libbalsa_conf_get_string("BaseDN");
    if(ldap->base_dn && *ldap->base_dn == 0) { 
	g_free(ldap->base_dn); ldap->base_dn = NULL; 
    }

    ldap->bind_dn = libbalsa_conf_private_get_string("BindDN");
    if(ldap->bind_dn && *ldap->bind_dn == 0) { 
	g_free(ldap->bind_dn); ldap->bind_dn = NULL; 
    }
    ldap->passwd = libbalsa_conf_private_get_string("Passwd");
    if(ldap->passwd && *ldap->passwd == 0) { 
	g_free(ldap->passwd); ldap->passwd = NULL; 
    }
    ldap->priv_book_dn = libbalsa_conf_get_string("BookDN");
    if(ldap->priv_book_dn && *ldap->priv_book_dn == 0) { 
	g_free(ldap->priv_book_dn); ldap->priv_book_dn = NULL; 
    }
    ldap->enable_tls = libbalsa_conf_get_bool("EnableTLS");

    if (LIBBALSA_ADDRESS_BOOK_CLASS(parent_class)->load_config)
	LIBBALSA_ADDRESS_BOOK_CLASS(parent_class)->load_config(ab, prefix);

    if (ab->is_expensive < 0)
        ab->is_expensive = TRUE;
}
Пример #4
0
static void
libbalsa_address_book_rubrica_class_init(LibBalsaAddressBookRubricaClass *
					 klass)
{
    LibBalsaAddressBookClass *address_book_class;
    GObjectClass *object_class;

    object_class = G_OBJECT_CLASS(klass);
    address_book_class = LIBBALSA_ADDRESS_BOOK_CLASS(klass);

    object_class->finalize = libbalsa_address_book_rubrica_finalize;

    address_book_class->load = libbalsa_address_book_rubrica_load;
    address_book_class->add_address =
	libbalsa_address_book_rubrica_add_address;
    address_book_class->remove_address =
	libbalsa_address_book_rubrica_remove_address;
    address_book_class->modify_address =
	libbalsa_address_book_rubrica_modify_address;

    address_book_class->alias_complete =
	libbalsa_address_book_rubrica_alias_complete;
}