diff --git a/ChangeLog b/ChangeLog index 587cda03..fd7b99a0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -20,16 +20,21 @@ v0.51.1 21-Feb-2004 In edit message areas added setup for character set for the area. Also added global edit for character set. In several places where groups need to be tagged, there is now - a switch (*) to select/deslect all groups at once. + a switch (*) to select/deselect all groups at once. In the user editor the sex is now changed with the spacebar to prevent typing errors. In the user editor added character set edit in the second screen. Removed users fullscreen chat setting, not used. + Added menu setup for change character set, menu 321. mbsebbs: Writes the ^aCHRS: kludge again in new created messages. Changed ^aPID to include OS and CPU. + Added user selecting a character set, menu 321. + Added login check to see if user has a valid character set. + Added Control-U 9 to display file to show the users character + set in the menus screens. mbmsg: Writes the ^aCHRS: kludge again in new created messages. @@ -42,6 +47,12 @@ v0.51.1 21-Feb-2004 mbfido: Changed ^aTID to include OS and CPU. + examples: + Added change character set in English menus and textfiles. + + lang: + Added language prompts 23, 24 and 25. + v0.51.0 09-Feb-2004 - 21-Feb-2004 diff --git a/examples/menus-en.tar b/examples/menus-en.tar index 24623956..ed112aa8 100644 Binary files a/examples/menus-en.tar and b/examples/menus-en.tar differ diff --git a/examples/txtfiles-en.tar b/examples/txtfiles-en.tar index 6b15a7b6..3cc03eb3 100644 Binary files a/examples/txtfiles-en.tar and b/examples/txtfiles-en.tar differ diff --git a/html/menus/control.html b/html/menus/control.html index 98ba5c81..94669a99 100644 --- a/html/menus/control.html +++ b/html/menus/control.html @@ -14,7 +14,7 @@
-+Last update 02-Mar-2003
Last update 24-Feb-2004
MBSE BBS Control Codes in ANSI and ASCII files
@@ -119,6 +119,7 @@ For example: ^B32000^BThis is the text^B
6 User's Second address line. 7 User's Third address line. 8 User's OLR Extended Onfo (On/Off). + 9 User's charactewr set. diff --git a/lang/Language.xref b/lang/Language.xref index 2e6b0c35..448e167c 100644 --- a/lang/Language.xref +++ b/lang/Language.xref @@ -21,9 +21,9 @@ 20 door.c |The door is in use by another user, try again later 21 mail.c YN| Is this correct [y/N]: 22 mail.c |Could not parse -23 .c | -24 .c | -25 .c | +23 change.c |Select your preferred character set +24 change.c |Select character set (Enter to Quit): +25 change.c |Character set now set to: 26 .c | 27 .c | 28 .c | @@ -33,8 +33,8 @@ 32 .c | 33 .c | 34 .c | -35 .c | -36 .c | +35 .c |In use for internationalization +36 .c |In use for internationalization 37 newuser.c |MBSE Bulletin Board System - NEW USER REGISTRATION 38 newuser.c |Use this name: 39 newuser.c |Please enter new password : @@ -263,7 +263,7 @@ 262 change.c |Protocol: Can't open protocol file. 263 change.c |Select your preferred file transfer protcol 264 change.c |Select Protocol (Enter to Quit): -265 change.c |Ivalid selection, please try again! +265 change.c |Invalid selection, please try again! 266 change.c |Protocol now set to: 267 file.c |Enter keyword to use for Search: 268 file.c |File Search by Keyword diff --git a/lang/dutch.txt b/lang/dutch.txt index d94ee524..52483e18 100644 --- a/lang/dutch.txt +++ b/lang/dutch.txt @@ -21,9 +21,9 @@ HR|Exporteer naar (H)ome of (R)egels directory: |De door is in gebruik door een andere gebruiker, probeer het later nog eens JN| Is dit juist [j/N]: |Niet te verwerken -| -| -| +|Kies Uw karakter set +|Kies karakter set (Enter is Stop): +|Karakter set is nu: | | | diff --git a/lang/english.txt b/lang/english.txt index 334f712e..7df8b610 100644 --- a/lang/english.txt +++ b/lang/english.txt @@ -21,9 +21,9 @@ HR|Export to (H)ome or (R)ules directory: |The door is in use by another user, try again later YN| Is this correct [y/N]: |Could not parse -| -| -| +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/lang/french.txt b/lang/french.txt index f94e7c7f..f8420dc6 100644 --- a/lang/french.txt +++ b/lang/french.txt @@ -18,12 +18,12 @@ HR|Exporter vers le r |Ceci n'est pas un simple fichier texte. |Vous ne pouvez vous connecter que |fois simultanément. -| -| -| -| -| -| +|The door is in use by another user, try again later +YN| Is this correct [y/N]: +|Could not parse +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/lang/galego.txt b/lang/galego.txt index f4b06a4a..3cf98b9c 100644 --- a/lang/galego.txt +++ b/lang/galego.txt @@ -21,9 +21,9 @@ HR|Exportar |Outro usuario est a usar esa door, proba mais tarde SN| ‚ correcto [s/N]: |Non podo interpretar -| -| -| +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/lang/german.txt b/lang/german.txt index 0b563907..8821243a 100644 --- a/lang/german.txt +++ b/lang/german.txt @@ -21,9 +21,9 @@ HR|Export in (H)ome oder (R)ules Direktorie: |The door is in use by another user, try again later YN| Is this correct [y/N]: |Could not parse -| -| -| +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/lang/germandu.txt b/lang/germandu.txt index 99b6e42d..bf0007f5 100644 --- a/lang/germandu.txt +++ b/lang/germandu.txt @@ -21,9 +21,9 @@ HR|Export in (H)ome oder (R)ules Direktorie: |The door is in use by another user, try again later YN| Is this correct [y/N]: |Could not parse -| -| -| +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/lang/italian.txt b/lang/italian.txt index 37927034..be59123f 100644 --- a/lang/italian.txt +++ b/lang/italian.txt @@ -21,9 +21,9 @@ HR|Export to (H)ome or (R)ules directory: |The door is in use by another user, try again later YN| Is this correct [y/N]: |Could not parse -| -| -| +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/lang/spanish.txt b/lang/spanish.txt index ee97c41b..d21f0a9d 100644 --- a/lang/spanish.txt +++ b/lang/spanish.txt @@ -21,9 +21,9 @@ PR|Exportar al directorio (P)ersonal o de (R)eglas: |Otro usuario est usando esa door, int‚ntalo m s tarde. SN| Es correcto [s/N]: |No puedo iterpretar -| -| -| +|Select your preferred character set +|Select character set (Enter to Quit): +|Character set now set to: | | | diff --git a/mbsebbs/change.c b/mbsebbs/change.c index 2ed60ecf..dccc50ac 100644 --- a/mbsebbs/change.c +++ b/mbsebbs/change.c @@ -976,3 +976,64 @@ void Chg_OLR_ExtInfo() } + +/* + * Change character set. + */ +void Chg_Charset() +{ + int i; + char *temp; + + temp = calloc(81, sizeof(char)); + ReadExitinfo(); + Syslog('+', "Old character set %s", getchrs(exitinfo.Charset)); + + while(TRUE) { + colour(CFG.HiliteF, CFG.HiliteB); + /* Select your preferred character set */ + printf("\n%s\n\n", (char *) Language(23)); + + colour(LIGHTBLUE, BLACK); + for (i = (FTNC_NONE + 1); i <= FTNC_MAXCHARS; i++) { + colour(LIGHTBLUE, BLACK); + printf("%2d ", i); + colour(LIGHTCYAN, BLACK); + printf("%-9s ", getchrs(i)); + colour(LIGHTMAGENTA, BLACK); + printf("%s\n", getchrsdesc(i)); + } + + colour(CFG.HiliteF, CFG.HiliteB); + /* Select character set (Enter to Quit): */ + printf("\n%s", (char *) Language(24)); + + fflush(stdout); + Getnum(temp, 2); + + if (((strcmp(temp, "")) == 0) && (exitinfo.Charset != FTNC_NONE)) { + free(temp); + return; + } + + i = atoi(temp); + + if ((i > FTNC_NONE) && (i <= FTNC_MAXCHARS)) { + exitinfo.Charset = i; + Syslog('+', "New character set %s", getchrs(exitinfo.Charset)); + WriteExitinfo(); + free(temp); + colour(LIGHTGREEN, BLACK); + /* Character set now set to: */ + printf("\n\n%s%s\n\n", (char *) Language(25), getchrs(i)); + Pause(); + return; + } + + Enter(2); + /* Invalid selection, please try again! */ + pout(LIGHTRED, BLACK, (char *) Language(265)); + Enter(2); + } +} + diff --git a/mbsebbs/change.h b/mbsebbs/change.h index 89349860..c21c170d 100644 --- a/mbsebbs/change.h +++ b/mbsebbs/change.h @@ -1,6 +1,7 @@ #ifndef _CHANGE_H #define _CHANGE_H +/* $Id$ */ int Chg_Language(int); /* Change language */ void Chg_Password(void); /* Change BBS Password */ @@ -23,6 +24,7 @@ void Chg_DOB(void); /* Change Date of Birth */ void Chg_Protocol(void); /* Change default transfer protocol. */ void Set_Protocol(char *); /* Set default protocol */ void Chg_OLR_ExtInfo(void); /* Set OLR Extended Info */ +void Chg_Charset(void); /* Change character set */ + #endif - diff --git a/mbsebbs/dispfile.c b/mbsebbs/dispfile.c index b4b3ef5b..879ecf6c 100644 --- a/mbsebbs/dispfile.c +++ b/mbsebbs/dispfile.c @@ -552,6 +552,10 @@ void ControlCodeU(int ch) printf("%s", exitinfo.OL_ExtInfo ? (char *) Language(147) : (char *) Language(148)); break; + case '9': + printf("%s", getchrs(exitinfo.Charset)); + break; + default: printf(" "); } diff --git a/mbsebbs/menu.c b/mbsebbs/menu.c index 4ba4e50d..28294b02 100644 --- a/mbsebbs/menu.c +++ b/mbsebbs/menu.c @@ -657,6 +657,10 @@ void DoMenu(int Type) Chg_OLR_ExtInfo(); break; + case 321: + Chg_Charset(); + break; + case 401: Oneliner_Add(); break; diff --git a/mbsebbs/user.c b/mbsebbs/user.c index 0bef2931..80494276 100644 --- a/mbsebbs/user.c +++ b/mbsebbs/user.c @@ -448,6 +448,13 @@ void user() if (! InitExitinfo()) Good_Bye(MBERR_INIT_ERROR); + /* + * If user has not set a preferred character set, force this + */ + if (exitinfo.Charset == FTNC_NONE) { + Chg_Charset(); + } + GetLastUser(); StartTime = xstrcpy(GetLocalHM()); ChangeHomeDir(exitinfo.Name, exitinfo.Email); diff --git a/mbsetup/ledit.c b/mbsetup/ledit.c index 59a76a34..daa8c739 100644 --- a/mbsetup/ledit.c +++ b/mbsetup/ledit.c @@ -2170,6 +2170,7 @@ char *getmenutype(int val) case 318: return (char *)"Change address"; case 319: return (char *)"Change .signature file"; case 320: return (char *)"Change OLR Extended Info"; + case 321: return (char *)"Change character set"; case 401: return (char *)"Add oneliner"; case 402: return (char *)"List oneliners"; diff --git a/mbsetup/m_menu.c b/mbsetup/m_menu.c index 384fc27b..6b2ca48e 100644 --- a/mbsetup/m_menu.c +++ b/mbsetup/m_menu.c @@ -192,7 +192,7 @@ int GetMenuType(void) case 1: return GetSubmenu(1, 22); case 2: return GetSubmenu(101, 19); case 3: return GetSubmenu(201, 21); - case 4: return GetSubmenu(301, 20); + case 4: return GetSubmenu(301, 21); case 5: return GetSubmenu(401, 5); case 6: return GetSubmenu(501, 6); default: return 0;