summaryrefslogtreecommitdiff
path: root/icclient/member.h
blob: 0f4ac223157daf5cbfcc43dec1f78f989d5ef4ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#ifndef ICCLIENT_MEMBER_H
#define ICCLIENT_MEMBER_H

struct icclient_member_preferences {
	bool mv_same_billing;
	bool email_copy;
};

struct icclient_member {
	char *username;
	char *usernick;
	char *password;
	char *expiration;
	char *acl;
	char *mod_time;
	char *s_nickname;
	char *company;
	char *fname; /*!< Shipping first name */
	char *lname; /*!< Shipping last name */
	char *address1;
	char *address2;
	char *address3;
	char *city;
	char *state;
	char *zip;
	char *country;
	char *phone_day;
	char *mv_shipmode;
	char *b_nickname;
	char *b_fname; /*!< Billing first name */
	char *b_lname; /*!< Billing last name */
	char *b_company;
	char *b_address1;
	char *b_address2;
	char *b_address3;
	char *b_city;
	char *b_state;
	char *b_zip;
	char *b_country;
	char *b_phone;
	char *p_nickname;
	char *email;
	char *fax;
	char *phone_night;
	char *address_book;
	char *accounts;
	struct icclient_member_preferences *preferences;
	char *carts;
	char *owner;
	char *file_acl;
	char *db_acl;
	char *mail_list;
	char *credit_limit;
	bool inactive;
	bool dealer;
	char *price_level;
};

#ifdef __cplusplus
extern "C" {
#endif

	struct icclient_member *icclient_member_newaccount(const char *username,
			const char *password, const char *verify, const char *successpage,
			const char *nextpage, const char *failpage,
			size_t (*handler)(void *, size_t, size_t, void *));
	struct icclient_member *icclient_member_login(const char *username,
			const char *password, const char *successpage,
			const char *nextpage, const char *failpage,
			size_t (*handler)(void *, size_t, size_t, void *));
	void icclient_member_account(const char *fname, const char *lname,
			const char *address1, const char *address2, const char *city,
			const char *state, const char *zip, const char *email,
			const char *phone_day);
	void icclient_member_changepassword(const char *password_old, const char *password,
			const char *verify);
	void icclient_member_logout(struct icclient_member *member);

#ifdef __cplusplus
}
#endif

#endif // ICCLIENT_MEMBER_H