+ xmlTextWriterEndElement (w); /* style:style */
+ }
+
+ {
+ xmlTextWriterStartElement (w, _xml ("style:style"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:name"),
+ _xml ("Table_20_Contents"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:display-name"),
+ _xml ("Table Contents"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:family"),
+ _xml ("paragraph"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:parent-style-name"),
+ _xml ("Standard"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:class"),
+ _xml ("extra"));
+
+ xmlTextWriterEndElement (w); /* style:style */
+ }
+
+ {
+ xmlTextWriterStartElement (w, _xml ("style:style"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:name"),
+ _xml ("Table_20_Heading"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:display-name"),
+ _xml ("Table Heading"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:family"),
+ _xml ("paragraph"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:parent-style-name"),
+ _xml ("Table_20_Contents"));
+
+ xmlTextWriterWriteAttribute (w, _xml ("style:class"),
+ _xml ("extra"));
+
+
+ xmlTextWriterStartElement (w, _xml ("style:text-properties"));
+ xmlTextWriterWriteAttribute (w, _xml ("fo:font-weight"), _xml ("bold"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:font-weight-asian"), _xml ("bold"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:font-weight-complex"), _xml ("bold"));
+ xmlTextWriterEndElement (w); /* style:text-properties */
+
+ xmlTextWriterEndElement (w); /* style:style */
+ }
+
+ {
+ xmlTextWriterStartElement (w, _xml ("style:style"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:name"), _xml ("superscript"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:family"), _xml ("text"));
+
+ xmlTextWriterStartElement (w, _xml ("style:text-properties"));
+ xmlTextWriterWriteAttribute (w, _xml ("style:text-position"),
+ _xml ("super 58%"));
+ xmlTextWriterEndElement (w); /* style:text-properties */
+
+ xmlTextWriterEndElement (w); /* style:style */
+ }
+
+ xmlTextWriterEndElement (w); /* office:styles */
+ xmlTextWriterEndElement (w); /* office:document-styles */
+
+ xmlTextWriterEndDocument (w);
+ xmlFreeTextWriter (w);
+ zip_writer_add (odt->zip, file, "styles.xml");
+ close_temp_file (file);
+}
+
+static void
+write_meta_data (struct odt_driver *odt)
+{
+ xmlTextWriterPtr w;
+ FILE *file;
+
+ create_writer (&file, &w);
+ register_file (odt, "meta.xml");
+
+ xmlTextWriterStartElement (w, _xml ("office:document-meta"));
+ xmlTextWriterWriteAttribute (w, _xml ("xmlns:office"), _xml ("urn:oasis:names:tc:opendocument:xmlns:office:1.0"));
+ xmlTextWriterWriteAttribute (w, _xml ("xmlns:dc"), _xml ("http://purl.org/dc/elements/1.1/"));
+ xmlTextWriterWriteAttribute (w, _xml ("xmlns:meta"), _xml ("urn:oasis:names:tc:opendocument:xmlns:meta:1.0"));
+ xmlTextWriterWriteAttribute (w, _xml ("xmlns:ooo"), _xml("http://openoffice.org/2004/office"));
+ xmlTextWriterWriteAttribute (w, _xml ("office:version"), _xml("1.1"));
+
+ xmlTextWriterStartElement (w, _xml ("office:meta"));
+ {
+ xmlTextWriterStartElement (w, _xml ("meta:generator"));
+ xmlTextWriterWriteString (w, _xml (version));
+ xmlTextWriterEndElement (w);
+ }
+
+
+ {
+ char buf[30];
+ time_t t = time (NULL);
+ struct tm *tm = localtime (&t);
+
+ strftime (buf, 30, "%Y-%m-%dT%H:%M:%S", tm);
+
+ xmlTextWriterStartElement (w, _xml ("meta:creation-date"));
+ xmlTextWriterWriteString (w, _xml (buf));
+ xmlTextWriterEndElement (w);
+
+ xmlTextWriterStartElement (w, _xml ("dc:date"));
+ xmlTextWriterWriteString (w, _xml (buf));
+ xmlTextWriterEndElement (w);
+ }
+
+#ifdef HAVE_PWD_H
+ {
+ struct passwd *pw = getpwuid (getuid ());
+ if (pw != NULL)
+ {
+ xmlTextWriterStartElement (w, _xml ("meta:initial-creator"));
+ xmlTextWriterWriteString (w, _xml (strtok (pw->pw_gecos, ",")));
+ xmlTextWriterEndElement (w);
+
+ xmlTextWriterStartElement (w, _xml ("dc:creator"));
+ xmlTextWriterWriteString (w, _xml (strtok (pw->pw_gecos, ",")));
+ xmlTextWriterEndElement (w);
+ }
+ }
+#endif
+
+ xmlTextWriterEndElement (w);
+ xmlTextWriterEndElement (w);
+ xmlTextWriterEndDocument (w);
+ xmlFreeTextWriter (w);
+ zip_writer_add (odt->zip, file, "meta.xml");
+ close_temp_file (file);