From 6fecf28c41b66134f1484299b9d0b8bf4d892514 Mon Sep 17 00:00:00 2001 From: Stefan Ritt Date: Tue, 28 Nov 2006 11:20:58 +0000 Subject: [PATCH] Release 2.6.3-1 SVN revision: 1762 --- doc/ChangeLog | 41 ++++++++++++ doc/index.html | 2 +- resources/eloglang.brazilian | 1 - resources/eloglang.bulgarian | 1 - resources/eloglang.czech | 1 - resources/eloglang.danish | 1 - resources/eloglang.dutch | 2 - resources/eloglang.french | 1 - resources/eloglang.german | 1 - resources/eloglang.italian | 1 - resources/eloglang.japanese | 1 - resources/eloglang.spanish | 1 - resources/eloglang.swedish | 1 - resources/eloglang.turkish | 1 - resources/eloglang.zh_CN-GB2312 | 1 - resources/eloglang.zh_CN-UTF8 | 1 - src/elogd.c | 115 ++++++++++++++++---------------- 17 files changed, 100 insertions(+), 73 deletions(-) diff --git a/doc/ChangeLog b/doc/ChangeLog index 7d53779e..edac23e7 100755 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,44 @@ +Version 2.6.3, released Nov. 28th, 2006 +======================================= + +- Fixed wrong directory for synchronization MD5 files +- Implemented "Tooltip " +- Implemented "muserlist" +- Fixed wrong display of smileys with uppercase characters +- Implemented "useremail" attribute type +- Moved menu bar to bottom on "new user page" +- Fixed wrong DST calculation in my_timezone +- Implemented "all display limit" +- Applied patch from Ulf Harnhammer to fix incorrect handling of *printf() calls +- Prevent crash if logbook "global" is accessed and a logbook "global" is defined in config file +- Skip comment lines in config file starting with '#' or ';' correctly +- Mention that password file must reside in logbook directory +- Skip "entries per page" in CSV, XML and RAW export +- Fixed wrong timezone under MacOSX +- Fixed wrong date display in threaded mode +- Improved performance of rsputs_elcode somehow +- Fixed problem with activating user accounts under non-english languages +- Improved error output if password file cannot be opened +- Fixed wrong "Suppress email notification" with conditional attributes +- Added czech translation +- Display activation message +- Changed ?) smiley to ?-) +- Implemented "suppress email on edit" +- Implemented 'allowed encoding' option +- Changed location of bottom/top text files +- Fixed wrong truncation of email recipient +- Added 'preset on duplicate' +- Do attribute substitution in email recipients +- Display proper error message if config file cannot be read +- Added 'preview attachments' and 'main tab url' +- Added "Main tab URL" +- Preview attachments in edit form if not turned off via "Preview attachments = 0" +- moved password file, log file etc. to logbook directory +- improved shell substitution speed +- Changed eek.png to astonished.png +- Fixed bug with multiple conditions which was introduced in SVN 1696 +- Fixed inline image insertion in Internet Explorer + Version 2.6.2, released July 11th, 2006 ======================================= diff --git a/doc/index.html b/doc/index.html index 442a00d1..7508b34e 100755 --- a/doc/index.html +++ b/doc/index.html @@ -25,7 +25,7 @@  [Links]  * 

Home of the Electronic Logbook package by Stefan Ritt

-
Current version is : 2.6.2
+
Current version is : 2.6.3

  What is ELOG ?  
diff --git a/resources/eloglang.brazilian b/resources/eloglang.brazilian index 776ddf3b..d85dc3ae 100755 --- a/resources/eloglang.brazilian +++ b/resources/eloglang.brazilian @@ -130,7 +130,6 @@ Requested = Requerido ELOG user config = Configurao do usurio do ELOG Select user = Selecione o usurio User [%s] has been deleted = Usurio [%s] foi removido -Enable email notifications = Permite notificaes por email Remove user = Remover usurio New user = Novo usurio No Email address registered with user name "%s" = No h endereo de email registrado com esse nome de usurio "%s" diff --git a/resources/eloglang.bulgarian b/resources/eloglang.bulgarian index aeab9947..9662f82e 100755 --- a/resources/eloglang.bulgarian +++ b/resources/eloglang.bulgarian @@ -92,7 +92,6 @@ ELOG user config = Select user = Login name = Full name = -Enable email notifications = . All entries = Entries = ELOG password recovery = ELOG diff --git a/resources/eloglang.czech b/resources/eloglang.czech index 235ab901..91808c7a 100644 --- a/resources/eloglang.czech +++ b/resources/eloglang.czech @@ -131,7 +131,6 @@ Display = Zobraz entries per page = položek na stránku Toggle all = Odeber vše Selected entries = Označené položky -Enable email notifications = Povol oznámení příchodu Emailu A old entry has been updated on %s = Položka %s byla obnovena Collapse = Sbalit Expand = Rozbalit diff --git a/resources/eloglang.danish b/resources/eloglang.danish index 79def1f4..46647a41 100755 --- a/resources/eloglang.danish +++ b/resources/eloglang.danish @@ -131,7 +131,6 @@ Display = Vis entries per page = Indlg per side Toggle all = Vis alle Selected entries = Vlg Indlg -Enable email notifications = Aktiver email notificering A old entry has been updated on %s = Et ldre indlg af %s er ndret Collapse = Fold Sammen Expand = Fold Ud diff --git a/resources/eloglang.dutch b/resources/eloglang.dutch index 2ef432a7..3bb5d658 100755 --- a/resources/eloglang.dutch +++ b/resources/eloglang.dutch @@ -132,7 +132,6 @@ Display = Toon entries per page = berichten per pagina Toggle all = Toon alles Selected entries = Geselecteerde berichten -Enable email notifications=Automatisch e-mail aankondiging A old entry has been updated on %s = Een ouder bericht is op %s gewijzigd Collapse = Samenvatten Expand = Uitbreiden @@ -404,7 +403,6 @@ File not found at URL "%s" = Kan bestand niet gevonden bij URL "%s" Entry size too large for email notification = Please specify a valid email address = Cannot send email notification to "%s" = -Enable email notifications = text = From = Error: Command "%s" is not allowed for user "%s" = diff --git a/resources/eloglang.french b/resources/eloglang.french index 2e9d1726..8bc78c2e 100755 --- a/resources/eloglang.french +++ b/resources/eloglang.french @@ -130,7 +130,6 @@ Display = Afficher entries per page = entres par page Toggle all = Basculer tout Selected entries = Entres slectionnes -Enable email notifications = Notifications automatiques par ml. A old entry has been updated on %s = Une entre existante a t mise jour dans le registre %s Collapse = Rduire Expand = Dvelopper diff --git a/resources/eloglang.german b/resources/eloglang.german index 25fd7bca..be627216 100755 --- a/resources/eloglang.german +++ b/resources/eloglang.german @@ -131,7 +131,6 @@ Display = Zeige entries per page = Eintrge pro Seite Toggle all = Alle umschalten Selected entries = Ausgewhlte Eintrge -Enable email notifications = Email-Benachrichtigung ermglichen A old entry has been updated on %s = Ein alter Eintrag wurde von %s gendert Collapse = eingeklappt Expand = erweitert diff --git a/resources/eloglang.italian b/resources/eloglang.italian index 141a94c0..62ecd943 100755 --- a/resources/eloglang.italian +++ b/resources/eloglang.italian @@ -131,7 +131,6 @@ Display = Mostra entries per page = elementi per pagina Toggle all = Inverti Selected entries = Elementi selezionati -Enable email notifications = Attiva la notifica per e-mail A old entry has been updated on %s = Un vecchio elemento stato aggiornato su %s Collapse = Restringi Expand = Espandi diff --git a/resources/eloglang.japanese b/resources/eloglang.japanese index 3760c454..470b2c7e 100755 --- a/resources/eloglang.japanese +++ b/resources/eloglang.japanese @@ -92,7 +92,6 @@ Requested = ELOG user config = ELOG[U[ݒ Select user = [U[I User [%s] has been deleted = [U[[%s]폜܂ -Enable email notifications = dq[ʒmsȂ Change password = pX[hύX Remove user = [U[폜 New user = VK[U[ diff --git a/resources/eloglang.spanish b/resources/eloglang.spanish index edf077e6..add9689b 100755 --- a/resources/eloglang.spanish +++ b/resources/eloglang.spanish @@ -130,7 +130,6 @@ Requested = Pedido ELOG user config = Configuracion de usuario ELOG Select user = Elegir usuario User [%s] has been deleted = El usuario [%s] ha sido borrado -Enable email notifications = Habilitar notificacion por email Remove user = Eliminar usuario New user = Nuevo usuario No Email address registered with user name "%s" = No se encuentra registrado un usuario con direccion de email "%s" diff --git a/resources/eloglang.swedish b/resources/eloglang.swedish index 56e6a0a0..1dc59f12 100644 --- a/resources/eloglang.swedish +++ b/resources/eloglang.swedish @@ -120,7 +120,6 @@ Display = Visa entries per page = poster per sida Toggle all = Visa alla Selected entries = Vlj post -Enable email notifications = Aktivera sndning av e-post Collapse = Kollapsa Expand = Expandera Full = Fullstndig diff --git a/resources/eloglang.turkish b/resources/eloglang.turkish index a394879e..a0683cc2 100755 --- a/resources/eloglang.turkish +++ b/resources/eloglang.turkish @@ -134,7 +134,6 @@ Display = G entries per page = her bir sayfadaki girdiler Toggle all = Hepsini iaretle/temizle Selected entries = Seilmi girdiler -Enable email notifications = E-posta bildirimlerini an A old entry has been updated on %s = %s'deki eski bir girdi gncellendi Collapse = Topla Expand = A diff --git a/resources/eloglang.zh_CN-GB2312 b/resources/eloglang.zh_CN-GB2312 index 8a414f1f..c40f6cda 100644 --- a/resources/eloglang.zh_CN-GB2312 +++ b/resources/eloglang.zh_CN-GB2312 @@ -132,7 +132,6 @@ Display = entries per page = ¼ÿҳ Toggle all = ѡȫ Selected entries = ѡ¼ -Enable email notifications = 򿪵ʼͨ A old entry has been updated on %s = %s һɼ¼Ѿ Collapse = ۵ Expand = չ diff --git a/resources/eloglang.zh_CN-UTF8 b/resources/eloglang.zh_CN-UTF8 index 556338e1..0affc575 100644 --- a/resources/eloglang.zh_CN-UTF8 +++ b/resources/eloglang.zh_CN-UTF8 @@ -132,7 +132,6 @@ Display = 显示 entries per page = 记录每页 Toggle all = 反向选择全部 Selected entries = 已选记录 -Enable email notifications = 打开电子邮件通报 A old entry has been updated on %s = %s 里的一条旧记录已经被更新 Collapse = 折叠 Expand = 展开 diff --git a/src/elogd.c b/src/elogd.c index 74f18cc0..5db30779 100755 --- a/src/elogd.c +++ b/src/elogd.c @@ -10,7 +10,7 @@ \********************************************************************/ /* Version of ELOG */ -#define VERSION "2.6.2" +#define VERSION "2.6.3" char svn_revision[] = "$Id$"; /* ELOG identification */ @@ -5618,27 +5618,27 @@ typedef struct { PATTERN_LIST pattern_list[] = { /* smileys */ - {":))", "\"Happy\""}, + {":))", "\"Happy\""}, {":-))", "\"Happy\""}, - {":)", "\"Smile\""}, - {":-)", "\"Smile\""}, - {":(", "\"Frown\""}, - {":-(", "\"Frown\""}, - {";)", "\"Wink\""}, - {";-)", "\"Wink\""}, - {":d", "\"Big"}, - {"?-)", "\"Confused\""}, - {";(", "\"Crying\""}, - {";-(", "\"Crying\""}, - {":]", "\"Pleased\""}, - {":-]", "\"Pleased\""}, - {":o", "\"Yawn\""}, - {":-o", "\"Yawn\""}, - {"8-)", "\"Cool\""}, - {"8o", "\"Astonished\""}, - {"x-(", "\"Mad\""}, - {":p", "\"Tongue\""}, - {":-p", "\"Tongue\""}, + {":)", "\"Smile\""}, + {":-)", "\"Smile\""}, + {":(", "\"Frown\""}, + {":-(", "\"Frown\""}, + {";)", "\"Wink\""}, + {";-)", "\"Wink\""}, + {":d", "\"Big"}, + {"?-)", "\"Confused\""}, + {";(", "\"Crying\""}, + {";-(", "\"Crying\""}, + {":]", "\"Pleased\""}, + {":-]", "\"Pleased\""}, + {":o", "\"Yawn\""}, + {":-o", "\"Yawn\""}, + {"8-)", "\"Cool\""}, + {"8o", "\"Astonished\""}, + {"x-(", "\"Mad\""}, + {":p", "\"Tongue\""}, + {":-p", "\"Tongue\""}, /* formatting */ {"[b]", ""}, @@ -5719,8 +5719,8 @@ void rsputs_elcode(LOGBOOK * lbs, BOOL email_notify, const char *str) m = 0; /* make lower case copy of str */ - lstr = xmalloc(strlen(str)+1); - for (pd=lstr, p=(char *)str ; *p ; p++,pd++) + lstr = xmalloc(strlen(str) + 1); + for (pd = lstr, p = (char *) str; *p; p++, pd++) *pd = tolower(*p); *pd = 0; @@ -7242,7 +7242,7 @@ void show_standard_title(char *logbook, char *text, int printable) rsprintf("\n"); if (level == 0 && getcfg("global", "main tab", str, sizeof(str)) - && !getcfg_topgroup()) { + && !getcfg_topgroup()) { if (getcfg("global", "main tab url", url, sizeof(url))) rsprintf("
%s\n", url, str); else @@ -7250,7 +7250,7 @@ void show_standard_title(char *logbook, char *text, int printable) } if (level == 1 && getcfg("global", "main tab", str, sizeof(str)) - && getcfg_topgroup()) { + && getcfg_topgroup()) { if (getcfg("global", "main tab url", url, sizeof(url))) rsprintf("%s\n", url, str); else @@ -8535,7 +8535,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL /* remove any leading directory, to accept only files in the logbook directory ! */ if (strchr(att[0], DIR_SEPARATOR)) { strlcpy(str, att[0], sizeof(str)); - strlcpy(att[0], strrchr(str, DIR_SEPARATOR)+1, 256); + strlcpy(att[0], strrchr(str, DIR_SEPARATOR) + 1, 256); } } @@ -8709,8 +8709,8 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL sprintf(str, "Preset %s", attr_list[index]); if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0) { - if ((!bedit && !breply && !bduplicate) || /* don't subst on edit or reply */ - (breedit && i == 2)) { /* subst on reedit only if preset is under condition */ + if ((!bedit && !breply && !bduplicate) || /* don't subst on edit or reply */ + (breedit && i == 2)) { /* subst on reedit only if preset is under condition */ /* do not format date for date attributes */ i = build_subst_list(lbs, slist, svalue, attrib, @@ -8732,7 +8732,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL sprintf(str, "Preset on reply %s", attr_list[index]); if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && breply) { - if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */ + if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */ /* do not format date for date attributes */ i = build_subst_list(lbs, slist, svalue, attrib, @@ -8754,7 +8754,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL sprintf(str, "Preset on duplicate %s", attr_list[index]); if ((i = getcfg(lbs->name, str, preset, sizeof(preset))) > 0 && bduplicate) { - if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */ + if (!breedit || (breedit && i == 2)) { /* subst on reedit only if preset is under condition */ /* do not format date for date attributes */ i = build_subst_list(lbs, slist, svalue, attrib, @@ -8774,7 +8774,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL } } - } else // if (_condition[0]) + } else // if (_condition[0]) n_attr = lbs->n_attr; @@ -9464,12 +9464,12 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL if (j < n_moptions) rsprintf - ("\n", - str, str, full_name); + ("\n", + str, str, full_name); else rsprintf - ("\n", - str, str, full_name); + ("\n", + str, str, full_name); rsprintf("\n", str, full_name); rsprintf("\n"); @@ -10114,7 +10114,8 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL allowed_encoding = 3; if (allowed_encoding < 1 || allowed_encoding > 7) { - rsprintf("

Invalid \"Allowed encoding\" in configuration file, value must be between 1 and 7

\n"); + rsprintf + ("

Invalid \"Allowed encoding\" in configuration file, value must be between 1 and 7

\n"); rsprintf("\n"); show_bottom_text(lbs); rsprintf("\r\n"); @@ -10135,9 +10136,9 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL rsprintf(""); else rsprintf - (""); + (""); rsprintf - ("\n"); + ("\n"); } if (allowed_encoding & 1) { @@ -10145,7 +10146,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL rsprintf(""); else rsprintf - (""); + (""); rsprintf("\n"); } @@ -10154,7 +10155,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL rsprintf(""); else rsprintf - (""); + (""); rsprintf("\n"); } } @@ -10266,7 +10267,8 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL rsprintf("\n", str, att[index]); rsprintf("%s\n", att[index] + 14); - rsprintf("  "); strlcpy(file_name, lbs->data_dir, sizeof(file_name)); @@ -10287,7 +10289,7 @@ void show_edit_form(LOGBOOK * lbs, int message_id, BOOL breply, BOOL bedit, BOOL strcpy(str, att[index]); str[13] = 0; strcpy(file_enc, att[index] + 14); - url_encode(file_enc, sizeof(file_enc)); /* for file names with special characters like "+" */ + url_encode(file_enc, sizeof(file_enc)); /* for file names with special characters like "+" */ sprintf(ref, "%s/%s", str, file_enc); if (is_image(att[index])) { @@ -10384,7 +10386,7 @@ void show_find_form(LOGBOOK * lbs) { int i, j; char str[NAME_LENGTH], mode[NAME_LENGTH], comment[NAME_LENGTH], option[NAME_LENGTH], - login_name[256], full_name[256]; + login_name[256], full_name[256]; /*---- header ----*/ @@ -11829,7 +11831,7 @@ void show_config_page(LOGBOOK * lbs) sprintf(str, " %s <%s>", getparam("new_user_name"), getparam("new_user_email")); rsprintf(loc("Activation notice has been sent to %s"), str); rsprintf("\n"); - } + } /*---- menu buttons ----*/ @@ -16389,7 +16391,7 @@ void show_page_filters(LOGBOOK * lbs, int n_msg, int page_n, BOOL mode_commands, /*------------------------------------------------------------------*/ -void show_page_navigation(LOGBOOK *lbs, int n_msg, int page_n, int n_page) +void show_page_navigation(LOGBOOK * lbs, int n_msg, int page_n, int n_page) { int i, num_pages, skip, max_n_msg; char ref[256], str[256]; @@ -17275,7 +17277,7 @@ void show_elog_list(LOGBOOK * lbs, int past_n, int last_n, int page_n, BOOL defa } if (attr_flags[i] & AF_MUSERLIST) { - for (j = 0; j < MAX_N_LIST ; j++) { + for (j = 0; j < MAX_N_LIST; j++) { sprintf(str, "%s_%d", attr_list[i], j); if (isparam(str)) { filtering = TRUE; @@ -17408,7 +17410,7 @@ void show_elog_list(LOGBOOK * lbs, int past_n, int last_n, int page_n, BOOL defa /* OR of any of the values */ searched = found = FALSE; - for (j = 0; j < MAX_N_LIST ; j++) { + for (j = 0; j < MAX_N_LIST; j++) { sprintf(str, "%s_%d", attr_list[i], j); if (isparam(str)) { searched = TRUE; @@ -17912,7 +17914,7 @@ void show_elog_list(LOGBOOK * lbs, int past_n, int last_n, int page_n, BOOL defa disp_filter = TRUE; } if (attr_flags[i] & (AF_MULTI | AF_MUSERLIST)) { - for (j = 0; j < MAX_N_LIST ; j++) { + for (j = 0; j < MAX_N_LIST; j++) { sprintf(str, "%s_%d", attr_list[i], j); if (isparam(str)) disp_filter = TRUE; @@ -18060,7 +18062,7 @@ void show_elog_list(LOGBOOK * lbs, int past_n, int last_n, int page_n, BOOL defa line[0] = 0; - for (j = 0; j < MAX_N_LIST ; j++) { + for (j = 0; j < MAX_N_LIST; j++) { sprintf(iattr, "%s_%d", attr_list[i], j); if (isparam(iattr)) { if (line[0]) @@ -19925,7 +19927,7 @@ void submit_elog(LOGBOOK * lbs) if (mindex == MAX_N_LIST) mindex = 0; else - index--; /* repeat this loop */ + index--; /* repeat this loop */ } else strcpy(str2, ua); @@ -19970,7 +19972,7 @@ void submit_elog(LOGBOOK * lbs) } if (!getcfg(lbs->name, "Suppress Email to users", str, sizeof(str)) - || atoi(str) == 0) { + || atoi(str) == 0) { /* go through password file */ for (index = 0;; index++) { if (!enum_user_line(lbs, index, user, sizeof(user))) @@ -20007,10 +20009,10 @@ void submit_elog(LOGBOOK * lbs) if (strlen(mail_to) > 0) { if (strlen(mail_to) > 4 && mail_to[strlen(mail_to) - 4] == ',') - mail_to[strlen(mail_to) - 4] = 0; /* strip last ',\r\n\t' */ + mail_to[strlen(mail_to) - 4] = 0; /* strip last ',\r\n\t' */ if (strlen(rcpt_to) > 1 && mail_to[strlen(rcpt_to) - 1] == ',') - rcpt_to[strlen(rcpt_to) - 1] = 0; /* strip last ',' */ + rcpt_to[strlen(rcpt_to) - 1] = 0; /* strip last ',' */ if (compose_email (lbs, rcpt_to, mail_to, message_id, attrib, mail_param, isparam("edit_id"), att_file, isparam("encoding") ? getparam("encoding") : "plain") == 0) @@ -22991,8 +22993,7 @@ void interprete(char *lbook, char *path) if (!check_user_password(lbs, isparam("unm") ? getparam("unm") : "", - isparam("upwd") ? getparam("upwd") : "", - _cmdline)) + isparam("upwd") ? getparam("upwd") : "", _cmdline)) return; } } @@ -25854,8 +25855,8 @@ int main(int argc, char *argv[]) strcpy(logbook_dir, "logbooks"); /* strip trailing dir separator */ - if (logbook_dir[strlen(logbook_dir)-1] == DIR_SEPARATOR) - logbook_dir[strlen(logbook_dir)-1] = 0; + if (logbook_dir[strlen(logbook_dir) - 1] == DIR_SEPARATOR) + logbook_dir[strlen(logbook_dir) - 1] = 0; /* check for directories */ if (logbook_dir[0] && stat(logbook_dir, &finfo) < 0) {