2003-12-07  JP Rosevear  <jpr@ximian.com>

	* libedata-book/e-data-book-factory.c: version the OAFIID

	* libebook/e-book.c (activate_factories_for_uri): update repo id
	
2003-12-07  JP Rosevear  <jpr@ximian.com>

	* libebook/e-book.c (activate_factories_for_uri): use the
	versioned repo id

2003-12-05  Chris Toshok  <toshok@ximian.com>

	* libebook/e-contact.c (e_contact_get_const): make this only work
	for strings, since really that's all it works for now.

2003-12-05  Hans Petter Jansson  <hpj@ximian.com>

	* libebook/e-contact.c (e_contact_get_property): Return boxed type
	for struct.
	(e_contact_name_from_string): Never pass NULL to
	e_name_western_parse ().

2003-12-04  Chris Toshok  <toshok@ximian.com>

	* tests/ebook/test-ebook.c (print_email): print out the
	NAME_OR_ORG of the contact too.

	* libebook/e-contact.h (EContactField): add NAME_OR_ORG.

	* libebook/e-contact.c (field_info): add NAME_OR_ORG.
	(e_contact_get_property): handle NAME_OR_ORG.

2003-12-01  Hans Petter Jansson  <hpj@ximian.com>

	* libebook/e-book.c (e_book_unload_uri): When clearing the cached
	capabilities, also clear the cap_queried flag.

2003-12-01  Hans Petter Jansson  <hpj@ximian.com>

	* libebook/e-book.c (fetch_corba_book): If the book failed to load,
	set load_state to E_BOOK_URI_NOT_LOADED, so _unload () won't crash.

2003-12-01  Hans Petter Jansson  <hpj@ximian.com>

	* libebook/e-book-async.c (_load_uri_response_handler)
	(_load_uri_response_dtor)
	(_load_uri_handler)
	(_load_uri_dtor)
	(_default_book_response_handler)
	(_default_book_response_dtor): Pass source instead of URI, and
	s/uri/source/.
	(e_book_async_load_source): Implement.
	(e_book_async_load_uri): Create a source and pass that to worker.

2003-11-28  Chris Toshok  <toshok@ximian.com>

	* tests/ebook/Makefile.am (test_ebook_view_LDADD): new variable.
	(noinst_PROGRAMS): add test-ebook-view

	* tests/ebook/test-ebook-view.c: new test for ebook view's.

2003-11-26  Hans Petter Jansson  <hpj@ximian.com>

	* backends/file/e-book-backend-file.c (e_book_backend_file_load_uri):
	Rename to e_book_backend_file_load_source () and take an ESource
	instead of an URI.
	(e_book_backend_file_dispose): Don't free URI anymore.
	(e_book_backend_file_class_init): load_uri -> load_source.
	(e_book_backend_file_init): Don't init URI anymore.

	* backends/ldap/e-book-backend-ldap.c (e_book_backend_ldap_load_uri):
	Rename to e_book_backend_ldap_load_uri () and take an ESource instead
	of an URI.
	(e_book_backend_ldap_dispose): Don't free URI anymore.
	(e_book_backend_ldap_class_init): load_uri -> load_source.

	* backends/vcf/e-book-backend-vcf.c (e_book_backend_vcf_load_uri):
	Rename to e_book_backend_vcf_load_source () and take an ESource
	instead of an URI.
	(e_book_backend_vcf_dispose): Don't free URI anymore.
	(e_book_backend_vcf_class_init): load_uri -> load_source.
	(e_book_backend_vcf_init): Don't init URI anymore.

	* idl/Evolution-DataServer-Addressbook.idl (getBook): In parameter
	"uri" renamed to "source". Takes standalone source XML.

	* libebook/e-book.c (fetch_corba_book): Implement, taking ESource.
	(e_book_load_source): Implement.
	(e_book_load_uri): Create a source based on the URI and use
	e_book_load_source () to load that.

	* libedata-book/e-book-backend.c (e_book_backend_load_uri): Renamed
	to e_book_backend_load_source () and takes ESource instead of URI.
	(e_book_backend_get_uri): Renamed to e_book_backend_get_source ()
	and returns ESource instead of URI.
	(e_book_backend_open): Use e_book_backend_load_source ().
	(e_book_backend_init): Don't init URI anymore.
	(e_book_backend_dispose): Don't free URI anymore.

	* libedata-book/e-data-book-factory.c (backend_last_client_gone_cb):
	Get URI from backend's ESource.
	(impl_GNOME_Evolution_Addressbook_BookFactory_getBook): Take
	standalone source XML, construct an ESource, and fetch a backend
	with that.

	* libedata-book/e-data-book.c (e_data_book_get_uri): Renamed to
	e_data_book_get_source () and return ESource.
	(e_data_book_construct): Take ESource instead of URI.
	(e_data_book_new): Take ESource instead of URI.
	(e_data_book_dispose): Don't free URI. Instead, unref ESource.

2003-11-25  Chris Toshok  <toshok@ximian.com>

	* tests/ebook/test-self.c: new file/test, print out the current
	self contact.

	* tests/ebook/test-ebook.c (print_email): fix the email printing.

	* libebook/e-vcard.c (parse): if the vcard doesn't begin with a
	"begin" attribute, we still want to add the attribute to the
	vcard.

	* libebook/e-contact.c (field_info): add GETSET_FIELD for fields
	that don't have a structured type associated with them (such as
	FN) but that need getter/setter methods for some reason.  add a
	GType getter function to STRUCT_FIELD, and fill in the getter
	(e_contact_class_init): use boxed types for STRUCT fields.
	(adr_setter): implement.
	(e_contact_set_property): use g_value_get_boxed for STRUCT types.
	(e_contact_get_property): implement GETSET getter.
	(e_contact_name_get_type): implement.
	(e_contact_date_copy): same.
	(e_contact_date_get_type): same.
	(e_contact_date_new): same.
	(e_contact_photo_copy): same.
	(e_contact_photo_get_type): same.
	(e_contact_address_copy): same.
	(e_contact_address_get_type): same.

	* libebook/e-contact.h: add prototypes for
	e_contact_{date,name,photo,address}_get_type.

	* libebook/e-book-types.h: add E_BOOK_ERROR_NO_SELF_CONTACT.

	* libebook/e-book.c (e_book_get_self): implement.
	(e_book_set_self): same.
	(e_book_is_self): same.
	(e_book_get_default_addressbook): add more to the comment telling
	how this *really* should be implemented.
	(e_book_get_addressbooks): implement.

	* libebook/e-book.h: add prototype for e_book_is_self, change
	e_book_set_self to take an EContact instead of just the uid.
	Also, unifdef the prototype for e_book_get_addressbooks.

2003-11-23  Chris Toshok  <toshok@ximian.com>

	* backends/file/e-book-backend-file.c
	(e_book_backend_file_load_uri): remove the db3 version checks, and
	add the extra transaction arg to db->open.

	* backends/file/Makefile.am (INCLUDES): use the embedded db4.

2003-11-22  Chris Toshok  <toshok@ximian.com>

	* backends/ldap/e-book-backend-ldap.c (contact_list_handler,
	contact_list_dtor, e_book_backend_ldap_get_contact_list):
	implement get_contact_list for the ldap backend.
	(category_populate): un-ifdef this.
	(category_ber): same.
	(category_compare): same.
	(e_book_backend_ldap_class_init): fill in
	EBookBackendClass::get_contact_list.

2003-11-11  Chris Toshok  <toshok@ximian.com>

	* tests/vcard/dump-vcard.c (main): convert the vcard to a string
	and print it out as well.  also fix the evcard leak.

	* tests/vcard/README: add blurb about 10.vcf.

	* tests/vcard/Makefile.am (EXTRA_DIST): add 10.vcf

	* tests/vcard/10.vcf: new quotted attribute parameter value test.

	* tests/vcard/[1-9].vcf: add these back in.

2003-11-10  JP Rosevear <jpr@ximian.com>

	* libebook/e-book-listener.c: remove construct method, it did
	nothing and should use construct time args in future if needed

2003-11-10  Dan Winship  <danw@ximian.com>

	* libebook/e-contact.c (e_contact_date_equal): New utility
	function to compare two (possibly NULL) EContactDates

	* backends/ldap/e-book-backend-ldap.c (anniversary_compare,
	birthday_compare): Use it

	* libedata-book/e-book-backend-summary.c
	(e_book_backend_summary_check_contact): New utility function to
	check if an id is in the summary (without doing any additional
	work beyond that).

2003-11-10  Dan Winship  <danw@ximian.com>

	* libedata-book/e-book-backend.h:
	s/E_TYPE_BACKEND/E_TYPE_BOOK_BACKEND/
	s/E_IS_BACKEND/E_IS_BOOK_BACKEND/

	* libedata-book/e-book-backend-sync.h: Likewise
	* backends/file/e-book-backend-file.h: Likewise
	* backends/vcf/e-book-backend-vcf.h: Likewise
	* backends/ldap/e-book-backend-ldap.h: Likewise

	* libedata-book/e-book-backend.c: Update for that. Also simplify
	some redundant g_return_if_fail tests and reindent a bunch of
	lines that were indented wrong after the pas->e_book renaming.

	* libedata-book/e-book-backend-sync.c: Likewise
	* backends/file/e-book-backend-file.c: Likewise
	* backends/vcf/e-book-backend-vcf.c: Likewise
	* backends/ldap/e-book-backend-ldap.c: Likewise

2003-11-08  Chris Toshok  <toshok@ximian.com>

	* libebook/e-vcard.c (skip_until): implement.
	(read_attribute_params): implement quoted parameter values, in our
	trademark overly accepting way.  it'll accept "hi" as well as
	"hi"and"bye" as parameter values (with the values being "hi" and
	"hiandbye" respectively).
	(e_vcard_to_string_vcard_30): hardcode VERSION:3.0 here, since
	we're outputing a version 3.0 card.  also, ignore any VERSION
	attributes that may be in the vcard we parsed in.  lastly, search
	parameter values for whitespace before outputting them, and wrap
	them in quotes if they have any.

	* libebook/e-book-async.c (e_book_async_add_contact): use
	e_contact_duplicate here so if the caller modifies the contact
	after calling us we use the original copy.
	(e_book_async_commit_contact): same.

2003-11-07  Dan Winship  <danw@ximian.com>

	* libebook/e-address-western.c: 
	* libebook/e-name-western.c: Move these here.

	* libebook/e-contact.c: Update e-name-western include

	* libebook/Makefile.am (libebook_la_SOURCES): Add
	e-address-western.c and e-name-western.c.
	(libebookinclude_HEADERS): and their headers
	(libebook_la_LDFLAGS): Remove -no-undefined

	* libedata-book/Makefile.am (libedata_book_la_LDFLAGS): Likewise

2003-11-06  Dan Winship  <danw@ximian.com>

	* backends/ldap/e-book-backend-ldap.c: Remove the word "process"
	from method names, which hasn't really made sense since 1.2.

	* backends/vcf/e-book-backend-vcf.c: Likewise

2003-11-06    <jpr@ximian.com>

	* libebook/Makefile.am: don't add libename

2003-11-06  JP Rosevear <jpr@ximian.com>

	* libebook/e-book.c: replace e_mutex stuff with gthread stuff

2003-11-06  JP Rosevear <jpr@ximian.com>

	* Makefile.am: build new subdirs

	* backends/*: build the file, vcf and ldap backends here

	* libedata-cal/Makefile.am: no longer build them here	
	
2003-11-05  JP Rosevear <jpr@ximian.com>

	* rename libedatabook to libedata-book
	
2003-11-05  JP Rosevear  <jpr@ximian.com>

	* libebook/Makefile.am: use privincludedir

	* libedatabook/Makefile.am: ditto

	* libedatabook/libedatabook-1.0.pc.in: use privincludedir; remove
	gal

	* libebook/libebook-1.0.pc.in: ditto

2003-11-05  Rodrigo Moya <rodrigo@ximian.com>

	* libedatabook/e-book-backend-sexp.c:
	* libedatabook/e-book-backend-summary.c:
	* libedatabook/e-book-backend-vcf.c:
	* libedatabook/e-book-backend-file.c: removed GAL dependency.

2003-11-04  JP Rosvear <jpr@ximian.com>

	* libedatabook/e-data-book-factory.c: use properly name spaced
	default id

	* libebook/e-book.c: kill unneccesary define

2003-11-04  JP Rosevear <jpr@ximian.com>

	* libedatabook/e-data-book-factory.c: remove corbe header include

	* libedatabook/e-data-book.h: include corba header correctly

	* libedatabook/e-data-book-view.h: ditto

	* libedatabook/e-data-book-factory.h: ditto

	* libedatabook/e-book-backend.h: ditto

	* libedatabook/e-book-backend-sync.h: ditto

	* libedatabook/Makefile.am: reflect idl name change

	* libebook/e-book-view.c: remove corba header include

	* libebook/e-book.c: ditto
	
	* libebook/e-book.h: include corba header correctly

	* libebook/e-book-view.h: ditto

	* libebook/e-book-view-listener.h: ditto

	* libebook/e-book-listener.h: ditto

	* idl/Makefile.am (idl_DATA): rename idl to
	Evolution-DataServer-Addressbook.idl

	* libebook/Makefile.am: reflect idl name change

