[Refdb-cvs] CVS: refdb/src backend-bibtex.c,1.16.2.4,1.16.2.5 backend-dbib.c,1.28.2.7,1.28.2.8 backe
Status: Beta
Brought to you by:
mhoenicka
Update of /cvsroot/refdb/refdb/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24526/src Modified Files: Tag: Release_0_9_5_stable backend-bibtex.c backend-dbib.c backend-dbib.h backend-html.c backend-ris.c backend-scrn.c backend.c backend.h noteshandler.c refdbd.h.in refdbdbib.c refdbdnote.c refdbdref.c risdata.c risdb.c risdb.h risxhandler.c xmlhandler.c xmlout.c Log Message: implemented multiple url handling Index: backend-bibtex.c =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend-bibtex.c,v retrieving revision 1.16.2.4 retrieving revision 1.16.2.5 diff -u -U2 -r1.16.2.4 -r1.16.2.5 --- backend-bibtex.c 29 Jul 2005 21:15:19 -0000 1.16.2.4 +++ backend-bibtex.c 7 Sep 2005 23:45:00 -0000 1.16.2.5 @@ -927,5 +927,5 @@ /* sprintf(sql_command, "SELECT DISTINCT t_refdb.refdb_id, t_refdb.refdb_citekey, t_refdb.refdb_type, t_refdb.refdb_pubyear, t_refdb.refdb_startpage, t_refdb.refdb_endpage, t_refdb.refdb_abstract, t_refdb.refdb_title, t_refdb.refdb_volume, t_refdb.refdb_issue, t_refdb.refdb_booktitle, t_refdb.refdb_city, t_refdb.refdb_publisher, t_refdb.refdb_title_series, t_refdb.refdb_address, t_refdb.refdb_url, t_refdb.refdb_issn, t_refdb.refdb_periodical_id, t_refdb.refdb_pyother_info, t_refdb.refdb_secyear, t_refdb.refdb_secother_info, t_refdb.refdb_user1, t_refdb.refdb_user2, t_refdb.refdb_user3, t_refdb.refdb_user4, t_refdb.refdb_user5, t_refdb.refdb_misc1, t_refdb.refdb_misc2, t_refdb.refdb_misc3 FROM t_refdb WHERE t_refdb.refdb_id=%s", idstring); */ - sprintf(sql_command, "SELECT DISTINCT t_refdb.refdb_id, t_refdb.refdb_citekey, t_refdb.refdb_type, t_refdb.refdb_pubyear, t_refdb.refdb_startpage, t_refdb.refdb_endpage, t_refdb.refdb_abstract, t_refdb.refdb_title, t_refdb.refdb_volume, t_refdb.refdb_issue, t_refdb.refdb_booktitle, t_refdb.refdb_city, t_refdb.refdb_publisher, t_refdb.refdb_title_series, t_refdb.refdb_address, t_refdb.refdb_url, t_refdb.refdb_issn, t_refdb.refdb_periodical_id, t_refdb.refdb_pyother_info, t_refdb.refdb_secyear, t_refdb.refdb_secother_info, t_refdb.refdb_user1, t_refdb.refdb_user2, t_refdb.refdb_user3, t_refdb.refdb_user4, t_refdb.refdb_user5, t_refdb.refdb_misc1, t_refdb.refdb_misc2, t_refdb.refdb_misc3 FROM t_refdb WHERE t_refdb.refdb_citekey='%s'", idstring); + sprintf(sql_command, "SELECT DISTINCT t_refdb.refdb_id, t_refdb.refdb_citekey, t_refdb.refdb_type, t_refdb.refdb_pubyear, t_refdb.refdb_startpage, t_refdb.refdb_endpage, t_refdb.refdb_abstract, t_refdb.refdb_title, t_refdb.refdb_volume, t_refdb.refdb_issue, t_refdb.refdb_booktitle, t_refdb.refdb_city, t_refdb.refdb_publisher, t_refdb.refdb_title_series, t_refdb.refdb_address, t_refdb.refdb_issn, t_refdb.refdb_periodical_id, t_refdb.refdb_pyother_info, t_refdb.refdb_secyear, t_refdb.refdb_secother_info, t_refdb.refdb_user1, t_refdb.refdb_user2, t_refdb.refdb_user3, t_refdb.refdb_user4, t_refdb.refdb_user5, t_refdb.refdb_misc1, t_refdb.refdb_misc2, t_refdb.refdb_misc3 FROM t_refdb WHERE t_refdb.refdb_citekey='%s'", idstring); if (!strcmp(my_dbi_conn_get_cap(conn, "multiple_db"), "t")) { Index: backend-dbib.c =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend-dbib.c,v retrieving revision 1.28.2.7 retrieving revision 1.28.2.8 diff -u -U2 -r1.28.2.7 -r1.28.2.8 --- backend-dbib.c 10 Aug 2005 19:45:59 -0000 1.28.2.7 +++ backend-dbib.c 7 Sep 2005 23:45:00 -0000 1.28.2.8 @@ -560,26 +560,26 @@ 12 refdb_title_series T3 - 13 refdb_address AD - - 14 refdb_url UR - - 15 refdb_issn SN - - 16 refdb_periodical_id JO - (indirect) - 17 refdb_pyother_info PY - (partial) - 18 refdb_secyear Y2 - (partial) - 19 refdb_secother_info Y2 - (partial) - 20 refdb_user1 U1 - - 21 refdb_user2 U2 - - 22 refdb_user3 U3 - - 23 refdb_user4 U4 - - 24 refdb_user5 U5 - - 25 refdb_misc1 M1 - - 26 refdb_misc2 M2 - - 27 refdb_misc3 M3 - + deleted 14 refdb_url UR - + 14 refdb_issn SN - + 15 refdb_periodical_id JO - (indirect) + 16 refdb_pyother_info PY - (partial) + 17 refdb_secyear Y2 - (partial) + 18 refdb_secother_info Y2 - (partial) + 19 refdb_user1 U1 - + 20 refdb_user2 U2 - + 21 refdb_user3 U3 - + 22 refdb_user4 U4 - + 23 refdb_user5 U5 - + 24 refdb_misc1 M1 - + 25 refdb_misc2 M2 - + 26 refdb_misc3 M3 - */ if (n_multiple_db) { - sprintf(sql_command, "SELECT %s.t_refdb.refdb_id, %s.t_refdb.refdb_type, %s.t_refdb.refdb_pubyear, %s.t_refdb.refdb_startpage, %s.t_refdb.refdb_endpage, %s.t_refdb.refdb_abstract, %s.t_refdb.refdb_title, %s.t_refdb.refdb_volume, %s.t_refdb.refdb_issue, %s.t_refdb.refdb_booktitle, %s.t_refdb.refdb_city, %s.t_refdb.refdb_publisher, %s.t_refdb.refdb_title_series, %s.t_refdb.refdb_address, %s.t_refdb.refdb_url, %s.t_refdb.refdb_issn, %s.t_refdb.refdb_periodical_id, %s.t_refdb.refdb_pyother_info, %s.t_refdb.refdb_secyear, %s.t_refdb.refdb_secother_info, %s.t_refdb.refdb_user1, %s.t_refdb.refdb_user2, %s.t_refdb.refdb_user3, %s.t_refdb.refdb_user4, %s.t_refdb.refdb_user5, %s.t_refdb.refdb_misc1, %s.t_refdb.refdb_misc2, %s.t_refdb.refdb_misc3 FROM %s.t_refdb WHERE %s.t_refdb.refdb_id="ULLSPEC, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, (unsigned long long)n_orig_id); + sprintf(sql_command, "SELECT %s.t_refdb.refdb_id, %s.t_refdb.refdb_type, %s.t_refdb.refdb_pubyear, %s.t_refdb.refdb_startpage, %s.t_refdb.refdb_endpage, %s.t_refdb.refdb_abstract, %s.t_refdb.refdb_title, %s.t_refdb.refdb_volume, %s.t_refdb.refdb_issue, %s.t_refdb.refdb_booktitle, %s.t_refdb.refdb_city, %s.t_refdb.refdb_publisher, %s.t_refdb.refdb_title_series, %s.t_refdb.refdb_address, %s.t_refdb.refdb_issn, %s.t_refdb.refdb_periodical_id, %s.t_refdb.refdb_pyother_info, %s.t_refdb.refdb_secyear, %s.t_refdb.refdb_secother_info, %s.t_refdb.refdb_user1, %s.t_refdb.refdb_user2, %s.t_refdb.refdb_user3, %s.t_refdb.refdb_user4, %s.t_refdb.refdb_user5, %s.t_refdb.refdb_misc1, %s.t_refdb.refdb_misc2, %s.t_refdb.refdb_misc3 FROM %s.t_refdb WHERE %s.t_refdb.refdb_id="ULLSPEC, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, item_dbname, (unsigned long long)n_orig_id); ptr_bibconns->conn_source = ptr_bibconns->conn; /* make sure */ } else { - sprintf(sql_command, "SELECT refdb_id, refdb_type, refdb_pubyear, refdb_startpage, refdb_endpage, refdb_abstract, refdb_title, refdb_volume, refdb_issue, refdb_booktitle, refdb_city, refdb_publisher, refdb_title_series, refdb_address, refdb_url, refdb_issn, refdb_periodical_id, refdb_pyother_info, refdb_secyear, refdb_secother_info, refdb_user1, refdb_user2, refdb_user3, refdb_user4, refdb_user5, refdb_misc1, refdb_misc2, refdb_misc3 FROM t_refdb WHERE refdb_id="ULLSPEC, (unsigned long long)n_orig_id); + sprintf(sql_command, "SELECT refdb_id, refdb_type, refdb_pubyear, refdb_startpage, refdb_endpage, refdb_abstract, refdb_title, refdb_volume, refdb_issue, refdb_booktitle, refdb_city, refdb_publisher, refdb_title_series, refdb_address, refdb_issn, refdb_periodical_id, refdb_pyother_info, refdb_secyear, refdb_secother_info, refdb_user1, refdb_user2, refdb_user3, refdb_user4, refdb_user5, refdb_misc1, refdb_misc2, refdb_misc3 FROM t_refdb WHERE refdb_id="ULLSPEC, (unsigned long long)n_orig_id); /* need a connection to item_dbname */ ptr_bibconns->conn_source = connect_to_db(ptr_clrequest, item_dbname, 0); @@ -1791,38 +1791,38 @@ } /*---------------------------------------------------------------*/ - else if (strcmp(item_type, "URL") == 0) { - if (!n_intext) { - if (strcmp(pubtype, "CHAP") == 0 || strcmp(pubtype, "BOOK") == 0) { - strcpy(mset_string, "book"); - } - else { - strcpy(mset_string, "journal"); - } - } - else { - strcpy(mset_string, "intext"); - } - if ((new_ref_buffer = set_mset(current_mset, mset_string, &ref_buffer, &nref_buffer_len)) == NULL) { - error = 801; - break; - } - - ref_buffer = new_ref_buffer; - - if ((new_ref_buffer = format_simple(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, n_intext, REFDB_URL, URLPRECEEDING, URLFOLLOWING, "ulink")) == NULL) { - error = 822; - break; - } - - if (ref_buffer[0]) { - if ((new_ref = mstrcat(*ptr_ref, ref_buffer, ptr_ref_len, 0)) == NULL) { - error = 801; - break; - } - - *ptr_ref = new_ref; - } - ref_buffer[0] = '\0'; - } +/* else if (strcmp(item_type, "URL") == 0) { */ +/* if (!n_intext) { */ +/* if (strcmp(pubtype, "CHAP") == 0 || strcmp(pubtype, "BOOK") == 0) { */ +/* strcpy(mset_string, "book"); */ +/* } */ +/* else { */ +/* strcpy(mset_string, "journal"); */ +/* } */ +/* } */ +/* else { */ +/* strcpy(mset_string, "intext"); */ +/* } */ +/* if ((new_ref_buffer = set_mset(current_mset, mset_string, &ref_buffer, &nref_buffer_len)) == NULL) { */ +/* error = 801; */ +/* break; */ +/* } */ + +/* ref_buffer = new_ref_buffer; */ + +/* if ((new_ref_buffer = format_simple(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, n_intext, REFDB_LINK0, LINK0PRECEEDING, LINK0FOLLOWING, "ulink")) == NULL) { */ +/* error = 822; */ +/* break; */ +/* } */ + +/* if (ref_buffer[0]) { */ +/* if ((new_ref = mstrcat(*ptr_ref, ref_buffer, ptr_ref_len, 0)) == NULL) { */ +/* error = 801; */ +/* break; */ +/* } */ + +/* *ptr_ref = new_ref; */ +/* } */ +/* ref_buffer[0] = '\0'; */ +/* } */ /*---------------------------------------------------------------*/ else if (strncmp(item_type, "USERDEF", 7) == 0) { @@ -1955,6 +1955,12 @@ ref_buffer = new_ref_buffer; - if (item_type[4] == '1') { - if ((new_ref_buffer = format_simple(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, n_intext, REFDB_LINK1, LINK1PRECEEDING, LINK1FOLLOWING, "link1")) == NULL) { + if (item_type[4] == '0') { + if ((new_ref_buffer = format_ulink(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, 0 /*LINK0*/, n_intext, LINK0PRECEEDING, LINK0FOLLOWING)) == NULL) { + error = 831; + break; + } + } + else if (item_type[4] == '1') { + if ((new_ref_buffer = format_ulink(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, 1 /*LINK1*/, n_intext, LINK1PRECEEDING, LINK1FOLLOWING)) == NULL) { error = 831; break; @@ -1962,5 +1968,5 @@ } else if (item_type[4] == '2') { - if ((new_ref_buffer = format_simple(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, n_intext, REFDB_LINK2, LINK2PRECEEDING, LINK2FOLLOWING, "link2")) == NULL) { + if ((new_ref_buffer = format_ulink(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, 2 /*LINK2*/, n_intext, LINK2PRECEEDING, LINK2FOLLOWING)) == NULL) { error = 832; break; @@ -1968,5 +1974,5 @@ } else if (item_type[4] == '3') { - if ((new_ref_buffer = format_simple(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, n_intext, REFDB_LINK3, LINK3PRECEEDING, LINK3FOLLOWING, "link3")) == NULL) { + if ((new_ref_buffer = format_ulink(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, 3 /*LINK3*/, n_intext, LINK3PRECEEDING, LINK3FOLLOWING)) == NULL) { error = 833; break; @@ -1974,5 +1980,5 @@ } else if (item_type[4] == '4') { - if ((new_ref_buffer = format_simple(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, n_intext, REFDB_LINK4, LINK4PRECEEDING, LINK4FOLLOWING, "link4")) == NULL) { + if ((new_ref_buffer = format_ulink(&ref_buffer, &nref_buffer_len, ptr_bibconns, dbires, dbi_style_res, 4 /*LINK4*/, n_intext, LINK4PRECEEDING, LINK4FOLLOWING)) == NULL) { error = 834; break; Index: backend-dbib.h =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend-dbib.h,v retrieving revision 1.9.2.2 retrieving revision 1.9.2.3 diff -u -U2 -r1.9.2.2 -r1.9.2.3 --- backend-dbib.h 10 Aug 2005 19:45:59 -0000 1.9.2.2 +++ backend-dbib.h 7 Sep 2005 23:45:00 -0000 1.9.2.3 @@ -41,5 +41,5 @@ char* format_notes(char** ptr_ref, size_t* ptr_ref_len, struct BIBCONNS* ptr_bibconns, dbi_result dbires, dbi_result dbires_ref, const char* username); - +char* format_ulink(char** ptr_ref, size_t* ptr_ref_len, struct BIBCONNS* ptr_bibconns, dbi_result dbires, dbi_result dbires_ref, int type, int n_intext, int n_preceeding_index, int n_following_index); Index: backend-html.c =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend-html.c,v retrieving revision 1.27.2.3 retrieving revision 1.27.2.4 diff -u -U2 -r1.27.2.3 -r1.27.2.4 --- backend-html.c 28 May 2005 20:07:47 -0000 1.27.2.3 +++ backend-html.c 7 Sep 2005 23:45:00 -0000 1.27.2.4 @@ -1368,57 +1368,79 @@ if (strstr((ptr_rendinfo->ptr_biblio_info)->format_string, "UR") != NULL || strstr((ptr_rendinfo->ptr_biblio_info)->format_string, "ALL") != NULL) { - item = get_refdb_url_copy(ptr_rendinfo->dbires); - if (item != NULL) { - if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), "<p class='ur'><a href=\"", ptr_rendinfo->ptr_ref_len, 0)) == NULL) { - LOG_PRINT(LOG_CRIT, get_status_msg(801)); - return 801; - } - else { - *(ptr_rendinfo->ptr_ref) = new_ref; - } + int i; + char *entitize_string; - if (sgml_entitize((char**)&item, NULL) == NULL) { - LOG_PRINT(LOG_CRIT, get_status_msg(801)); - free((char*)item); - return 801; - } + /* loop over all link types */ + for (i=0; i<5;i++) { + dbires = request_ulinks(conn, my_dbi_result_get_idval(ptr_rendinfo->dbires, "refdb_id"), 0 /* ref entry */, i /* link type */); + if (dbires == NULL) { + return 234; + } + + while ((item = get_ulink(dbires)) != NULL) { + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), "<p class='ur'><a href=\"", ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } + + if ((entitize_string = strdup(item)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + return 801; + } + + if (sgml_entitize(&entitize_string, NULL) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + free(entitize_string); + return 801; + } - if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), (char*)item, ptr_rendinfo->ptr_ref_len, 0)) == NULL) { - free((char*)item); - LOG_PRINT(LOG_CRIT, get_status_msg(801)); - return 801; - } - else { - *(ptr_rendinfo->ptr_ref) = new_ref; - } - - if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), "\">", ptr_rendinfo->ptr_ref_len, 0)) == NULL) { - LOG_PRINT(LOG_CRIT, get_status_msg(801)); - free((char*)item); - return 801; - } - else { - *(ptr_rendinfo->ptr_ref) = new_ref; - } + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), entitize_string, ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + free(entitize_string); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } + + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), "\">", ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + free(entitize_string); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } + + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), entitize_string, ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + free(entitize_string); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } - if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), (char*)item, ptr_rendinfo->ptr_ref_len, 0)) == NULL) { - LOG_PRINT(LOG_CRIT, get_status_msg(801)); - free((char*)item); - return 801; - } - else { - *(ptr_rendinfo->ptr_ref) = new_ref; - } - - free((char*)item); + free(entitize_string); + clean_request(dbires); - if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), "</a></p>\n", ptr_rendinfo->ptr_ref_len, 0)) == NULL) { - LOG_PRINT(LOG_CRIT, get_status_msg(801)); - return 801; - } - else { - *(ptr_rendinfo->ptr_ref) = new_ref; - } - } + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), "</a></p>\n", ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } + } /* end while */ + } /* end for */ } Index: backend-ris.c =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend-ris.c,v retrieving revision 1.14.2.4 retrieving revision 1.14.2.5 diff -u -U2 -r1.14.2.4 -r1.14.2.5 --- backend-ris.c 29 May 2005 16:54:21 -0000 1.14.2.4 +++ backend-ris.c 7 Sep 2005 23:45:01 -0000 1.14.2.5 @@ -458,12 +458,48 @@ /*----------------------------------------------------------------*/ - /* URL */ - if ((item = get_refdb_url_copy(ptr_rendinfo->dbires)) != NULL) { - if (print_field_ris(item, ptr_rendinfo, "\nUR - ") == NULL) { - free((char*)item); - return 801; + /* URL, L1 through L4 */ + + /* loop over all link types */ + for (i=0; i<5;i++) { + dbires = request_ulinks(conn, my_dbi_result_get_idval(ptr_rendinfo->dbires, "refdb_id"), 0 /* ref entry */, i /* link type */); + if (dbires == NULL) { + return 234; } - free((char*)item); - } + + while ((item = get_ulink(dbires)) != NULL) { + if (i == 0) { + if (print_field_ris(item, ptr_rendinfo, "\nUR - ") == NULL) { + clean_request(dbires); + return 801; + } + } + else if (i == 1) { + if (print_field_ris(item, ptr_rendinfo, "\nL1 - ") == NULL) { + clean_request(dbires); + return 801; + } + } + else if (i == 2) { + if (print_field_ris(item, ptr_rendinfo, "\nL2 - ") == NULL) { + clean_request(dbires); + return 801; + } + } + else if (i == 3) { + if (print_field_ris(item, ptr_rendinfo, "\nL3 - ") == NULL) { + clean_request(dbires); + return 801; + } + } + else if (i == 4) { + if (print_field_ris(item, ptr_rendinfo, "\nL4 - ") == NULL) { + clean_request(dbires); + return 801; + } + } + } + + clean_request(dbires); + } /* end for */ /*----------------------------------------------------------------*/ Index: backend-scrn.c =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend-scrn.c,v retrieving revision 1.17.2.2 retrieving revision 1.17.2.3 diff -u -U2 -r1.17.2.2 -r1.17.2.3 --- backend-scrn.c 17 Apr 2005 00:09:07 -0000 1.17.2.2 +++ backend-scrn.c 7 Sep 2005 23:45:01 -0000 1.17.2.3 @@ -698,14 +698,55 @@ /*----------------------------------------------------------------*/ - /* URL */ + /* URL, L1 through L4 */ if (strstr((ptr_rendinfo->ptr_biblio_info)->format_string, "UR") != NULL || strstr((ptr_rendinfo->ptr_biblio_info)->format_string, "ALL") != NULL) { - if ((item = get_refdb_url_copy(ptr_rendinfo->dbires)) != NULL) { - if (print_field_scrn(item, ptr_rendinfo, "\nURL: ") == NULL) { - free(item); - return 801; + int i; + char link_tag[12]; + + /* loop over all link types */ + for (i=0; i<5;i++) { + if (!i) { + strcpy(link_tag, "\nURL: "); } - free(item); - } + else if (i == 1) { + strcpy(link_tag, "\nPDF: "); + } + else if (i == 2) { + strcpy(link_tag, "\nFULLTEXT: "); + } + else if (i == 3) { + strcpy(link_tag, "\nRELATED: "); + } + else if (i == 4) { + strcpy(link_tag, "\nIMAGE: "); + } + + dbires = request_ulinks(conn, my_dbi_result_get_idval(ptr_rendinfo->dbires, "refdb_id"), 0 /* ref entry */, i /* link type */); + if (dbires == NULL) { + return 234; + } + + while ((citem = get_ulink(dbires)) != NULL) { + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), link_tag, ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } + + if ((new_ref = mstrcat(*(ptr_rendinfo->ptr_ref), (char*)citem, ptr_rendinfo->ptr_ref_len, 0)) == NULL) { + LOG_PRINT(LOG_CRIT, get_status_msg(801)); + clean_request(dbires); + return 801; + } + else { + *(ptr_rendinfo->ptr_ref) = new_ref; + } + + clean_request(dbires); + } /* end while */ + } /* end for */ } Index: backend.c =================================================================== RCS file: /cvsroot/refdb/refdb/src/backend.c,v retrieving revision 1.27.2.5 retrieving revision 1.27.2.6 diff -u -U2 -r1.27.2.5 -r1.27.2.6 --- backend.c 8 Aug 2005 00:08:29 -0000 1.27.2.5 +++ backend.c 7 Sep 2005 23:45:01 -0000 1.27.2.6 @@ -1044,7 +1044,7 @@ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ -char* get_refdb_url_copy(dbi_result dbires) { - return my_dbi_result_get_string_copy(dbires, "refdb_url"); -} +/* char* get_refdb_url_copy(dbi_result dbires) { */ +/* return my_dbi_result_get_string_copy(dbires, "refdb_url"); */ +/* } */ /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ @@ -1950,5 +1950,5 @@ get_keyword(): retrieves a keyword - char* get_author returns a pointer to a string containing the + char* get_keyword returns a pointer to a string containing the keyword @@ -1975,4 +1975,70 @@ /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + request_ulinks(): prepares the retrieval of ulinks + + dbi_result request_ulinks returns a pointer to a dbi result structure + which contains the ulinks + + dbi_result dbires database query result, pointing to the current + dataset (used only to retrieve the connection) + + int mode 0 = reference entry 1 = note entry + + int type 0 = URL, 1 = PDF, 2 = FULLTEXT 3 = RELATED 4 = IMAGE + + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ +dbi_result request_ulinks(dbi_conn conn, unsigned long long n_id, int mode, int type) { + char* sql_command; + char keymode[2][10] = {"REFERENCE", "NOTE"}; + char keytype[5][10] = {"URL", "PDF", "FULLTEXT", "RELATED", "IMAGE"}; + int error; + dbi_result dbires; + + sql_command = malloc(512); + + if (sql_command == NULL) { + return NULL; + } + + sprintf(sql_command, "SELECT t_link.link_url FROM t_link, t_xlink WHERE t_link.link_id=t_xlink.link_id AND t_xlink.xlink_type=\'%s\' AND t_xlink.xlink_source=\'%s\' AND t_xlink.xref_id="ULLSPEC, keytype[mode], keymode[mode], (unsigned long long)n_id); + + LOG_PRINT(LOG_DEBUG, sql_command); + dbires = dbi_conn_query(conn, sql_command); + free(sql_command); + if (!dbires) { + return NULL; + } + + return dbires; +} + +/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + get_ulink(): retrieves an ulink + + char* get_ulink returns a pointer to a string containing the + ulink + + dbi_result dbires database query result, pointing to the current + dataset + + ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ +const char* get_ulink(dbi_result dbires) { + const char* result; + + if (dbi_result_next_row(dbires)) { + result = my_dbi_result_get_string_idx(dbires, 1); + if (dbi_conn_error_flag(dbi_result_get_conn(dbires))) { + return NULL; + } + else { + return result; + } + } + else { + return NULL; + } +} + +/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ request_users(): prepares the retrieval of users of the currently selected database @@ -2646,57 +2712,57 @@ 181 ADDRESSFOLLOWING 182 ADDRESSSTYLE - 183 URLPRECEEDING - 184 URLFOLLOWING - 185 URLSTYLE - 186 USERDEF1PRECEEDING - 187 USERDEF1FOLLOWING - 188 USERDEF1STYLE - 189 USERDEF2PRECEEDING - 190 USERDEF2FOLLOWING - 191 USERDEF2STYLE - 192 USERDEF3PRECEEDING - 193 USERDEF3FOLLOWING - 194 USERDEF3STYLE - 195 USERDEF4PRECEEDING - 196 USERDEF4FOLLOWING - 197 USERDEF4STYLE - 198 USERDEF5PRECEEDING - 199 USERDEF5FOLLOWING - 200 USERDEF5STYLE - 201 MISC1PRECEEDING - 202 MISC1FOLLOWING - 203 MISC1STYLE - 204 MISC2PRECEEDING - 205 MISC2FOLLOWING - 206 MISC2STYLE - 207 MISC3PRECEEDING - 208 MISC3FOLLOWING - 209 MISC3STYLE - 210 NOTESPRECEEDING - 211 NOTESFOLLOWING - 212 NOTESSTYLE - 213 ABSTRACTPRECEEDING - 214 ABSTRACTFOLLOWING - 215 ABSTRACTSTYLE - 216 LINK1PRECEEDING - 217 LINK1FOLLOWING - 218 LINK1STYLE - 219 LINK2PRECEEDING - 220 LINK2FOLLOWING - 221 LINK2STYLE - 222 LINK3PRECEEDING - 223 LINK3FOLLOWING - 224 LINK3STYLE - 225 LINK4PRECEEDING - 226 LINK4FOLLOWING - 227 LINK4STYLE + deleted 183 URLPRECEEDING + deleted 184 URLFOLLOWING + deleted 185 URLSTYLE + 183 USERDEF1PRECEEDING + 184 USERDEF1FOLLOWING + 185 USERDEF1STYLE + 186 USERDEF2PRECEEDING + 187 USERDEF2FOLLOWING + 188 USERDEF2STYLE + 189 USERDEF3PRECEEDING + 190 USERDEF3FOLLOWING + 191 USERDEF3STYLE + 192 USERDEF4PRECEEDING + 193 USERDEF4FOLLOWING + 194 USERDEF4STYLE + 195 USERDEF5PRECEEDING + 196 USERDEF5FOLLOWING + 197 USERDEF5STYLE + 198 MISC1PRECEEDING + 199 MISC1FOLLOWING + 200 MISC1STYLE + 201 MISC2PRECEEDING + 202 MISC2FOLLOWING + 203 MISC2STYLE + 204 MISC3PRECEEDING + 205 MISC3FOLLOWING + 206 MISC3STYLE + 207 NOTESPRECEEDING + 208 NOTESFOLLOWING + 209 NOTESSTYLE + 210 ABSTRACTPRECEEDING + 211 ABSTRACTFOLLOWING + 212 ABSTRACTSTYLE + 213 LINK1PRECEEDING + 214 LINK1FOLLOWING + 215 LINK1STYLE + 216 LINK2PRECEEDING + 217 LINK2FOLLOWING + 218 LINK2STYLE + 219 LINK3PRECEEDING + 220 LINK3FOLLOWING + 221 LINK3STYLE + 222 LINK4PRECEEDING + 223 LINK4FOLLOWING + 224 LINK4STYLE */ /* now retrieve matching style information from REFSTYLE into*/ if (!strcmp(my_dbi_conn_get_cap(conn, "multiple_db"), "t")) { - sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP, PUBDATEALLFIRSTSEP, PUBDATEALLSECONDSEP, PAGESPAGERANGERANGESEPARATOR, SERIALPRECEEDING, SERIALFOLLOWING, SERIALSTYLE, ADDRESSPRECEEDING, ADDRESSFOLLOWING, ADDRESSSTYLE, URLPRECEEDING, URLFOLLOWING, URLSTYLE, USERDEF1PRECEEDING, USERDEF1FOLLOWING, USERDEF1STYLE, USERDEF2PRECEEDING, USERDEF2FOLLOWING, USERDEF2STYLE, USERDEF3PRECEEDING, USERDEF3FOLLOWING, USERDEF3STYLE, USERDEF4PRECEEDING, USERDEF4FOLLOWING, USERDEF4STYLE, USERDEF5PRECEEDING, USERDEF5FOLLOWING, USERDEF5STYLE, MISC1PRECEEDING, MISC1FOLLOWING, MISC1STYLE, MISC2PRECEEDING, MISC2FOLLOWING, MISC2STYLE, MISC3PRECEEDING, MISC3FOLLOWING, MISC3STYLE, NOTESPRECEEDING, NOTESFOLLOWING, NOTESSTYLE, ABSTRACTPRECEEDING, ABSTRACTFOLLOWING, ABSTRACTSTYLE, LINK1PRECEEDING, LINK1FOLLOWING, LINK1STYLE, LINK2PRECEEDING, LINK2FOLLOWING, LINK2STYLE, LINK3PRECEEDING, LINK3FOLLOWING, LINK3STYLE, LINK4PRECEEDING, LINK4FOLLOWING, LINK4STYLE from %s.REFSTYLE where PUBTYPE='%s' and CITSTYLEID="ULLSPEC, MAIN_DB, pubtype, (unsigned long long)citstyle_id); + sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP, PUBDATEALLFIRSTSEP, PUBDATEALLSECONDSEP, PAGESPAGERANGERANGESEPARATOR, SERIALPRECEEDING, SERIALFOLLOWING, SERIALSTYLE, ADDRESSPRECEEDING, ADDRESSFOLLOWING, ADDRESSSTYLE, USERDEF1PRECEEDING, USERDEF1FOLLOWING, USERDEF1STYLE, USERDEF2PRECEEDING, USERDEF2FOLLOWING, USERDEF2STYLE, USERDEF3PRECEEDING, USERDEF3FOLLOWING, USERDEF3STYLE, USERDEF4PRECEEDING, USERDEF4FOLLOWING, USERDEF4STYLE, USERDEF5PRECEEDING, USERDEF5FOLLOWING, USERDEF5STYLE, MISC1PRECEEDING, MISC1FOLLOWING, MISC1STYLE, MISC2PRECEEDING, MISC2FOLLOWING, MISC2STYLE, MISC3PRECEEDING, MISC3FOLLOWING, MISC3STYLE, NOTESPRECEEDING, NOTESFOLLOWING, NOTESSTYLE, ABSTRACTPRECEEDING, ABSTRACTFOLLOWING, ABSTRACTSTYLE, LINK1PRECEEDING, LINK1FOLLOWING, LINK1STYLE, LINK2PRECEEDING, LINK2FOLLOWING, LINK2STYLE, LINK3PRECEEDING, LINK3FOLLOWING, LINK3STYLE, LINK4PRECEEDING, LINK4FOLLOWING, LINK4STYLE from %s.REFSTYLE where PUBTYPE='%s' and CITSTYLEID="ULLSPEC, MAIN_DB, pubtype, (unsigned long long)citstyle_id); } else { - sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP, PUBDATEALLFIRSTSEP, PUBDATEALLSECONDSEP, PAGESPAGERANGERANGESEPARATOR, SERIALPRECEEDING, SERIALFOLLOWING, SERIALSTYLE, ADDRESSPRECEEDING, ADDRESSFOLLOWING, ADDRESSSTYLE, URLPRECEEDING, URLFOLLOWING, URLSTYLE, USERDEF1PRECEEDING, USERDEF1FOLLOWING, USERDEF1STYLE, USERDEF2PRECEEDING, USERDEF2FOLLOWING, USERDEF2STYLE, USERDEF3PRECEEDING, USERDEF3FOLLOWING, USERDEF3STYLE, USERDEF4PRECEEDING, USERDEF4FOLLOWING, USERDEF4STYLE, USERDEF5PRECEEDING, USERDEF5FOLLOWING, USERDEF5STYLE, MISC1PRECEEDING, MISC1FOLLOWING, MISC1STYLE, MISC2PRECEEDING, MISC2FOLLOWING, MISC2STYLE, MISC3PRECEEDING, MISC3FOLLOWING, MISC3STYLE, NOTESPRECEEDING, NOTESFOLLOWING, NOTESSTYLE, ABSTRACTPRECEEDING, ABSTRACTFOLLOWING, ABSTRACTSTYLE, LINK1PRECEEDING, LINK1FOLLOWING, LINK1STYLE, LINK2PRECEEDING, LINK2FOLLOWING, LINK2STYLE, LINK3PRECEEDING, LINK3FOLLOWING, LINK3STYLE, LINK4PRECEEDING, LINK4FOLLOWING, LINK4STYLE from REFSTYLE where PUBTYPE='%s' and CITSTYLEID="ULLSPEC, pubtype, (unsigned long long)citstyle_id); + sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP, PUBDATEALLFIRSTSEP, PUBDATEALLSECONDSEP, PAGESPAGERANGERANGESEPARATOR, SERIALPRECEEDING, SERIALFOLLOWING, SERIALSTYLE, ADDRESSPRECEEDING, ADDRESSFOLLOWING, ADDRESSSTYLE, USERDEF1PRECEEDING, USERDEF1FOLLOWING, USERDEF1STYLE, USERDEF2PRECEEDING, USERDEF2FOLLOWING, USERDEF2STYLE, USERDEF3PRECEEDING, USERDEF3FOLLOWING, USERDEF3STYLE, USERDEF4PRECEEDING, USERDEF4FOLLOWING, USERDEF4STYLE, USERDEF5PRECEEDING, USERDEF5FOLLOWING, USERDEF5STYLE, MISC1PRECEEDING, MISC1FOLLOWING, MISC1STYLE, MISC2PRECEEDING, MISC2FOLLOWING, MISC2STYLE, MISC3PRECEEDING, MISC3FOLLOWING, MISC3STYLE, NOTESPRECEEDING, NOTESFOLLOWING, NOTESSTYLE, ABSTRACTPRECEEDING, ABSTRACTFOLLOWING, ABSTRACTSTYLE, LINK1PRECEEDING, LINK1FOLLOWING, LINK1STYLE, LINK2PRECEEDING, LINK2FOLLOWING, LINK2STYLE, LINK3PRECEEDING, LINK3FOLLOWING, LINK3STYLE, LINK4PRECEEDING, LINK4FOLLOWING, LINK4STYLE from REFSTYLE where PUBTYPE='%s' and CITSTYLEID="ULLSPEC, pubtype, (unsigned long long)citstyle_id); } @@ -2715,8 +2781,8 @@ dbi_result_free(dbi_style_res); if (!strcmp(my_dbi_conn_get_cap(conn, "multiple_db"), "t")) { - sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP, PUBDATEALLFIRSTSEP, PUBDATEALLSECONDSEP, PAGESPAGERANGERANGESEPARATOR, SERIALPRECEEDING, SERIALFOLLOWING, SERIALSTYLE, ADDRESSPRECEEDING, ADDRESSFOLLOWING, ADDRESSSTYLE, URLPRECEEDING, URLFOLLOWING, URLSTYLE, USERDEF1PRECEEDING, USERDEF1FOLLOWING, USERDEF1STYLE, USERDEF2PRECEEDING, USERDEF2FOLLOWING, USERDEF2STYLE, USERDEF3PRECEEDING, USERDEF3FOLLOWING, USERDEF3STYLE, USERDEF4PRECEEDING, USERDEF4FOLLOWING, USERDEF4STYLE, USERDEF5PRECEEDING, USERDEF5FOLLOWING, USERDEF5STYLE, MISC1PRECEEDING, MISC1FOLLOWING, MISC1STYLE, MISC2PRECEEDING, MISC2FOLLOWING, MISC2STYLE, MISC3PRECEEDING, MISC3FOLLOWING, MISC3STYLE, NOTESPRECEEDING, NOTESFOLLOWING, NOTESSTYLE, ABSTRACTPRECEEDING, ABSTRACTFOLLOWING, ABSTRACTSTYLE, LINK1PRECEEDING, LINK1FOLLOWING, LINK1STYLE, LINK2PRECEEDING, LINK2FOLLOWING, LINK2STYLE, LINK3PRECEEDING, LINK3FOLLOWING, LINK3STYLE, LINK4PRECEEDING, LINK4FOLLOWING, LINK4STYLE from %s.REFSTYLE where PUBTYPE='GEN' and CITSTYLEID="ULLSPEC, MAIN_DB, (unsigned long long)citstyle_id); + sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP, PUBDATEALLFIRSTSEP, PUBDATEALLSECONDSEP, PAGESPAGERANGERANGESEPARATOR, SERIALPRECEEDING, SERIALFOLLOWING, SERIALSTYLE, ADDRESSPRECEEDING, ADDRESSFOLLOWING, ADDRESSSTYLE, USERDEF1PRECEEDING, USERDEF1FOLLOWING, USERDEF1STYLE, USERDEF2PRECEEDING, USERDEF2FOLLOWING, USERDEF2STYLE, USERDEF3PRECEEDING, USERDEF3FOLLOWING, USERDEF3STYLE, USERDEF4PRECEEDING, USERDEF4FOLLOWING, USERDEF4STYLE, USERDEF5PRECEEDING, USERDEF5FOLLOWING, USERDEF5STYLE, MISC1PRECEEDING, MISC1FOLLOWING, MISC1STYLE, MISC2PRECEEDING, MISC2FOLLOWING, MISC2STYLE, MISC3PRECEEDING, MISC3FOLLOWING, MISC3STYLE, NOTESPRECEEDING, NOTESFOLLOWING, NOTESSTYLE, ABSTRACTPRECEEDING, ABSTRACTFOLLOWING, ABSTRACTSTYLE, LINK1PRECEEDING, LINK1FOLLOWING, LINK1STYLE, LINK2PRECEEDING, LINK2FOLLOWING, LINK2STYLE, LINK3PRECEEDING, LINK3FOLLOWING, LINK3STYLE, LINK4PRECEEDING, LINK4FOLLOWING, LINK4STYLE from %s.REFSTYLE where PUBTYPE='GEN' and CITSTYLEID="ULLSPEC, MAIN_DB, (unsigned long long)citstyle_id); } else { - sprintf(sql_command, "SELECT ID, QSTYLE, XSTYLE, YSTYLE, ZSTYLE, QABBREVIATEFIRST, XABBREVIATEFIRST, YABBREVIATEFIRST, ZABBREVIATEFIRST, QABBREVIATESUBSEQ, XABBREVIATESUBSEQ, YABBREVIATESUBSEQ, ZABBREVIATESUBSEQ, QABBREVIATEFIRSTMAXAUTHOR, XABBREVIATEFIRSTMAXAUTHOR, YABBREVIATEFIRSTMAXAUTHOR, ZABBREVIATEFIRSTMAXAUTHOR, QABBREVIATESUBSEQMAXAUTHOR, XABBREVIATESUBSEQMAXAUTHOR, YABBREVIATESUBSEQMAXAUTHOR, ZABBREVIATESUBSEQMAXAUTHOR, QABBREVIATEFIRSTDISPLAYAUTHOR, XABBREVIATEFIRSTDISPLAYAUTHOR, YABBREVIATEFIRSTDISPLAYAUTHOR, ZABBREVIATEFIRSTDISPLAYAUTHOR, QABBREVIATESUBSEQDISPLAYAUTHOR, XABBREVIATESUBSEQDISPLAYAUTHOR, YABBREVIATESUBSEQDISPLAYAUTHOR, ZABBREVIATESUBSEQDISPLAYAUTHOR, QAEMPTY, XAEMPTY, YAEMPTY, ZAEMPTY, QASAME, XASAME, YASAME, ZASAME, QPRECEEDING, XPRECEEDING, YPRECEEDING, ZPRECEEDING, QFOLLOWING, XFOLLOWING, YFOLLOWING, ZFOLLOWING, QAUTHORSEPSTWOSEPS, XAUTHORSEPSTWOSEPS, YAUTHORSEPSTWOSEPS, ZAUTHORSEPSTWOSEPS, QAUTHORSEPSTHREESEPSTHREESEPSEACH, XAUTHORSEPSTHREESEPSTHREESEPSEACH, YAUTHORSEPSTHREESEPSTHREESEPSEACH, ZAUTHORSEPSTHREESEPSTHREESEPSEACH, QAUTHORSEPSTHREESEPSTHREESEPSLAST, XAUTHORSEPSTHREESEPSTHREESEPSLAST, YAUTHORSEPSTHREESEPSTHREESEPSLAST, ZAUTHORSEPSTHREESEPSTHREESEPSLAST, QAUTHORNAMESNAMEFIRSTNAMEORDER, XAUTHORNAMESNAMEFIRSTNAMEORDER, YAUTHORNAMESNAMEFIRSTNAMEORDER, ZAUTHORNAMESNAMEFIRSTNAMEORDER, QAUTHORNAMESNAMEFIRSTINITIALSTYLE, XAUTHORNAMESNAMEFIRSTINITIALSTYLE, YAUTHORNAMESNAMEFIRSTINITIALSTYLE, ZAUTHORNAMESNAMEFIRSTINITIALSTYLE, QAUTHORNAMESNAMEFIRSTUPPERCASE, XAUTHORNAMESNAMEFIRSTUPPERCASE, YAUTHORNAMESNAMEFIRSTUPPERCASE, ZAUTHORNAMESNAMEFIRSTUPPERCASE, QAUTHORNAMESNAMEOTHERNAMEORDER, XAUTHORNAMESNAMEOTHERNAMEORDER, YAUTHORNAMESNAMEOTHERNAMEORDER, ZAUTHORNAMESNAMEOTHERNAMEORDER, QAUTHORNAMESNAMEOTHERINITIALSTYLE, XAUTHORNAMESNAMEOTHERINITIALSTYLE, YAUTHORNAMESNAMEOTHERINITIALSTYLE, ZAUTHORNAMESNAMEOTHERINITIALSTYLE, QAUTHORNAMESNAMEOTHERUPPERCASE, XAUTHORNAMESNAMEOTHERUPPERCASE, YAUTHORNAMESNAMEOTHERUPPERCASE, ZAUTHORNAMESNAMEOTHERUPPERCASE, QTEXTTEXTSINGLEPRECEEDING, XTEXTTEXTSINGLEPRECEEDING, YTEXTTEXTSINGLEPRECEEDING, ZTEXTTEXTSINGLEPRECEEDING, QTEXTTEXTSINGLEFOLLOWING, XTEXTTEXTSINGLEFOLLOWING, YTEXTTEXTSINGLEFOLLOWING, ZTEXTTEXTSINGLEFOLLOWING, QTEXTTEXTMULTIPLEPRECEEDING, XTEXTTEXTMULTIPLEPRECEEDING, YTEXTTEXTMULTIPLEPRECEEDING, ZTEXTTEXTMULTIPLEPRECEEDING, QTEXTTEXTMULTIPLEFOLLOWING, XTEXTTEXTMULTIPLEFOLLOWING, YTEXTTEXTMULTIPLEFOLLOWING, ZTEXTTEXTMULTIPLEFOLLOWING, PUBDATEPRECEEDING, PUBDATEFOLLOWING, PUBDATEFORMAT, PUBDATESEQUENCE, PUBDATEMONTHFORMAT, PUBDATEDAYFORMAT, PUBDATEYEARFORMAT, PUBDATEPADLEADINGZERO, PUBDATESTYLE, PUBDATESECPRECEEDING, PUBDATESECFOLLOWING, PUBDATESECFORMAT, PUBDATESECSEQUENCE, PUBDATESECMONTHFORMAT, PUBDATESECDAYFORMAT, PUBDATESECYEARFORMAT, PUBDATESECPADLEADINGZERO, PUBDATESECSTYLE, PUBDATEALLPRECEEDING, PUBDATEALLFOLLOWING, PUBDATEALLFORMAT, PUBDATEALLSEQUENCE, PUBDATEALLMONTHFORMAT, PUBDATEALLDAYFORMAT, PUBDATEALLYEARFORMAT, PUBDATEALLPADLEADINGZERO, PUBDATEALLSTYLE, TITLEPRECEEDING, TITLEFOLLOWING, TITLECASE, TITLESTYLE, BOOKTITLEPRECEEDING, BOOKTITLEFOLLOWING, BOOKTITLECASE, BOOKTITLESTYLE, SERIESTITLEPRECEEDING, SERIESTITLEFOLLOWING, SERIESTITLECASE, SERIESTITLESTYLE, ALLTITLEPRECEEDING, ALLTITLEFOLLOWING, ALLTITLECASE, ALLTITLESTYLE, JOURNALNAMEPRECEEDING, JOURNALNAMEFOLLOWING, JOURNALNAMECASE, JOURNALNAMEDEFAULTTEXT, JOURNALNAMEALTERNATETEXT, JOURNALNAMEPUNCTUATION, JOURNALNAMESTYLE, VOLUMEPRECEEDING, VOLUMEFOLLOWING, VOLUMESTYLE, ISSUEPRECEEDING, ISSUEFOLLOWING, ISSUESTYLE, PAGESSTYLE, PAGESSINGLEPAGEPRECEEDING, PAGESSINGLEPAGEFOLLOWING, PAGESPAGERANGEPRECEEDING, PAGESPAGERANGEFOLLOWING, PAGESPAGERANGETYPE, PUBLISHERPRECEEDING, PUBLISHERFOLLOWING, PUBLISHERSTYLE, PUBPLACEPRECEEDING, PUBPLACEFOLLOWING, PUBPLACESTYLE, PAGESPRECEEDING, PAGESFOLLOWING, REFNUMBERPRECEEDING, REFNUMBERFOLLOWING, REFNUMBERSTYLE, PUBDATEFIRSTSEP, PUBDATESECONDSEP, PUBDATESECFIRSTSEP, PUBDATESECSECONDSEP... [truncated message content] |