1 /* 2 * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client 3 * Copyright (C) 2003-2012 Match Grun and the Claws Mail team 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 3 of the License, or 8 * (at your option) any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * You should have received a copy of the GNU General Public License 16 * along with this program. If not, see <http://www.gnu.org/licenses/>. 17 * 18 */ 19 20 /* 21 * Definitions for export to LDIF file. 22 */ 23 24 #ifndef __EXPORT_LDIF_H__ 25 #define __EXPORT_LDIF_H__ 26 27 #include <glib.h> 28 29 #include "addrcache.h" 30 31 /* RDN ID's */ 32 #define EXPORT_LDIF_ID_UID 0 33 #define EXPORT_LDIF_ID_DNAME 1 34 #define EXPORT_LDIF_ID_EMAIL 2 35 36 #define EXPORT_LDIF_FIRST_LAST 0 37 #define EXPORT_LDIF_LAST_FIRST 1 38 39 /* Export LDIF control data */ 40 typedef struct _ExportLdifCtl ExportLdifCtl; 41 struct _ExportLdifCtl { 42 gchar *path; 43 gchar *dirOutput; 44 gchar *fileLdif; 45 gchar *settingsFile; 46 gchar *suffix; 47 gint rdnIndex; 48 gboolean useDN; 49 gboolean excludeEMail; 50 gint retVal; 51 gint rcCreate; 52 }; 53 54 /* Function prototypes */ 55 ExportLdifCtl *exportldif_create ( void ); 56 void exportldif_free ( ExportLdifCtl *ctl ); 57 void exportldif_set_file_html ( ExportLdifCtl *ctl, 58 const gchar *value ); 59 void exportldif_set_suffix ( ExportLdifCtl *ctl, 60 const gchar *value ); 61 void exportldif_set_rdn ( ExportLdifCtl *ctl, 62 const gint value ); 63 void exportldif_set_use_dn ( ExportLdifCtl *ctl, 64 const gboolean value ); 65 void exportldif_set_exclude_email ( ExportLdifCtl *ctl, 66 const gboolean value ); 67 void exportldif_process ( ExportLdifCtl *ctl, 68 AddressCache *cache ); 69 gboolean exportldif_create_dir ( ExportLdifCtl *ctl ); 70 gchar *exportldif_get_create_msg ( ExportLdifCtl *ctl ); 71 72 void exportldif_parse_filespec ( ExportLdifCtl *ctl, 73 gchar *fileSpec ); 74 void exportldif_load_settings ( ExportLdifCtl *ctl ); 75 void exportldif_save_settings ( ExportLdifCtl *ctl ); 76 77 #endif /* __EXPORT_LDIF_H__ */ 78 79