-
- /* Populate the variables for our form */
- i = 0;
- while (key = vcard_get_prop(v, "", 0, i, 1), key != NULL) {
- char prp[256]; /* property name */
- char prm[256]; /* parameters */
-
- value = vcard_get_prop(v, "", 0, i++, 0);
-
-
- extract_token(prp, key, 0, ';', sizeof prp);
- safestrncpy(prm, key, sizeof prm);
- remove_token(prm, 0, ';');
-
- if (!strcasecmp(prp, "n")) {
- extract_token(lastname, value, 0, ';', sizeof lastname);
- extract_token(firstname, value, 1, ';', sizeof firstname);
- extract_token(middlename, value, 2, ';', sizeof middlename);
- extract_token(prefix, value, 3, ';', sizeof prefix);
- extract_token(suffix, value, 4, ';', sizeof suffix);
- }
-
- else if (!strcasecmp(prp, "fn")) {
- safestrncpy(fullname, value, sizeof fullname);
- }
-
- else if (!strcasecmp(prp, "title")) {
- safestrncpy(title, value, sizeof title);
- }
-
- else if (!strcasecmp(prp, "org")) {
- safestrncpy(org, value, sizeof org);
- }
-
- else if (!strcasecmp(prp, "adr")) {
- extract_token(pobox, value, 0, ';', sizeof pobox);
- extract_token(extadr, value, 1, ';', sizeof extadr);
- extract_token(street, value, 2, ';', sizeof street);
- extract_token(city, value, 3, ';', sizeof city);
- extract_token(state, value, 4, ';', sizeof state);
- extract_token(zipcode, value, 5, ';', sizeof zipcode);
- extract_token(country, value, 6, ';', sizeof country);
- }
-
- else if (!strcasecmp(prp, "tel")) {
-
- if (bmstrcasestr(prm, "home")) {
- extract_token(hometel, value, 0, ';', sizeof hometel);
- }
- else if (bmstrcasestr(prm, "work")) {
- extract_token(worktel, value, 0, ';', sizeof worktel);
- }
- else if (bmstrcasestr(prm, "fax")) {
- extract_token(faxtel, value, 0, ';', sizeof faxtel);
- }
- else if (bmstrcasestr(prm, "cell")) {
- extract_token(mobiletel, value, 0, ';', sizeof mobiletel);
- }
- else { /* Missing or unknown type; put it in the home phone */
- extract_token(hometel, value, 0, ';', sizeof hometel);
- }
- }
-
- else if ( (!strcasecmp(prp, "email")) && (bmstrcasestr(prm, "internet")) ) {
- if (primary_inetemail[0] == 0) {
- safestrncpy(primary_inetemail, value, sizeof primary_inetemail);
- }
- else {
- if (other_inetemail[0] != 0) {
- strcat(other_inetemail, "\n");
- }
- strcat(other_inetemail, value);
- }
- }