static void _gth_search_write_to_doc (GthSearch *self, DomDocument *doc, DomElement *root) { char *uri; uri = g_file_get_uri (self->priv->folder); dom_element_append_child (root, dom_document_create_element (doc, "folder", "uri", uri, "recursive", (self->priv->recursive ? "true" : "false"), NULL)); g_free (uri); dom_element_append_child (root, dom_domizable_create_element (DOM_DOMIZABLE (self->priv->test), doc)); }
void picasa_web_service_create_album (PicasaWebService *self, PicasaWebAlbum *album, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) { OAuthAccount *account; DomDocument *doc; DomElement *entry; char *buffer; gsize len; char *url; SoupMessage *msg; account = web_service_get_current_account (WEB_SERVICE (self)); g_return_if_fail (account != NULL); gth_task_progress (GTH_TASK (self), _("Creating the new album"), NULL, TRUE, 0.0); doc = dom_document_new (); entry = dom_domizable_create_element (DOM_DOMIZABLE (album), doc); dom_element_append_child (DOM_ELEMENT (doc), entry); buffer = dom_document_dump (doc, &len); url = g_strconcat ("https://picasaweb.google.com/data/feed/api/user/", account->id, NULL); msg = soup_message_new ("POST", url); soup_message_set_request (msg, ATOM_ENTRY_MIME_TYPE, SOUP_MEMORY_TAKE, buffer, len); _picasa_web_service_add_headers (self, msg); _web_service_send_message (WEB_SERVICE (self), msg, cancellable, callback, user_data, picasa_web_service_create_album, create_album_ready_cb, self); g_free (url); g_object_unref (doc); }
void facebook_accounts_save_to_file (GList *accounts, FacebookAccount *default_account) { DomDocument *doc; DomElement *root; GList *scan; char *buffer; gsize len; char *filename; GFile *file; doc = dom_document_new (); root = dom_document_create_element (doc, "accounts", NULL); dom_element_append_child (DOM_ELEMENT (doc), root); for (scan = accounts; scan; scan = scan->next) { FacebookAccount *account = scan->data; DomElement *node; if ((default_account != NULL) && g_strcmp0 (account->username, default_account->username) == 0) account->is_default = TRUE; else account->is_default = FALSE; node = dom_domizable_create_element (DOM_DOMIZABLE (account), doc); dom_element_append_child (root, node); } gth_user_dir_make_dir_for_file (GTH_DIR_CONFIG, GTHUMB_DIR, "accounts", "facebook.xml", NULL); filename = gth_user_dir_get_file (GTH_DIR_CONFIG, GTHUMB_DIR, "accounts", "facebook.xml", NULL); file = g_file_new_for_path (filename); buffer = dom_document_dump (doc, &len); g_write_file (file, FALSE, G_FILE_CREATE_PRIVATE | G_FILE_CREATE_REPLACE_DESTINATION, buffer, len, NULL, NULL); g_free (buffer); g_object_unref (file); g_free (filename); g_object_unref (doc); }