summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mbbsd/user.c46
1 files changed, 31 insertions, 15 deletions
diff --git a/mbbsd/user.c b/mbbsd/user.c
index cd7f3b66..74dd74d4 100644
--- a/mbbsd/user.c
+++ b/mbbsd/user.c
@@ -468,7 +468,7 @@ uinfo_query(userec_t * u, int real, int unum)
break;
}
#ifdef FOREIGN_REG
- if (getdata_str(i++, 0, "���y 1)���� 2)�~��G", buf, 2, DOECHO, x.uflag2 & FOREIGN ? "2" : "1"))
+ if (getdata_str(i++, 0, "�~�� 1)�x�W 2)��L�G", buf, 2, DOECHO, x.uflag2 & FOREIGN ? "2" : "1"))
if ((fail = atoi(buf)) > 0){
if (fail == 2){
x.uflag2 |= FOREIGN;
@@ -1092,6 +1092,9 @@ static int HaveRejectStr(char *s, char **rej)
static char *isvalidname(char *rname)
{
+#ifdef FOREIGN_REG
+ return NULL;
+#else
char *rejectstr[] =
{"��", "�D", "���Y", "�p��", "�p��", "���H", "�Ѥ�", "�ѧ�", "�_��",
"����", "�ӭ�", "���Y", "�p�n", "�p�j", "���k", "�p�f", "�j�Y",
@@ -1107,10 +1110,13 @@ static char *isvalidname(char *rname)
!(strlen(rname) >= 4 && strncmp(&rname[0], &rname[2], 2) == 0))
return NULL;
return "�z����J�����T";
+#endif
+
}
static char *isvalidcareer(char *career)
{
+#ifndef FOREIGN_REG
char *rejectstr[] = {NULL};
if (!(removespace(career) && career[0] < 0 && strlen(career) >= 6) ||
strcmp(career, "�a��") == 0 || HaveRejectStr(career, rejectstr) )
@@ -1121,6 +1127,7 @@ static char *isvalidcareer(char *career)
return "�·нХ[�Ǯըt��";
if (strcmp(career, "�ǥͰ���") == 0)
return "�·п�J�ǮզW��";
+#endif
return NULL;
}
@@ -1153,8 +1160,8 @@ static char *isvalidphone(char *phone)
for( i = 0 ; phone[i] != 0 ; ++i )
if( !isdigit(phone[i]) )
return "�Ф��n�[���j�Ÿ�";
- if (!removespace(phone) || phone[0] != '0' ||
- strlen(phone) < 9 || phone[1] == '0' ||
+ if (!removespace(phone) ||
+ strlen(phone) < 9 ||
strstr(phone, "00000000") != NULL ||
strstr(phone, "22222222") != NULL ) {
return "�o�ӹq�ܸ��X�ä��X�k(�Чt�ϽX)" ;
@@ -1293,7 +1300,7 @@ u_register(void)
#ifdef FOREIGN_REG
fore[0] = 'y';
fore[1] = 0;
- getfield(2, "Y/n", "�O�_�������y�H", fore, 2);
+ getfield(2, "Y/n", "�O�_���x�W�~����H", fore, 2);
if (fore[0] == 'n')
fore[0] |= FOREIGN;
else
@@ -1313,10 +1320,10 @@ u_register(void)
else{
int i;
while( 1 ){
- getfield(3, "0123456789", "�@�Ӹ��X", ident, 11);
- move(5, 2);
- prints("�`�N�G�@�Ӹ��X���~�̱N�L�k���o�i�@�B���v���I");
- getdata(6, 0, "�O�_�T�w(Y/N)", ans, sizeof(ans), LCECHO);
+ getfield(4, "0123456789","�����Ҹ� �@�Ӹ��X �� SSN", ident, 11);
+ move(6, 2);
+ prints("���X���~�̱N�L�k���o�i�@�B���v���I");
+ getdata(7, 2, "�O�_�T�w(Y/N)", ans, sizeof(ans), LCECHO);
if (ans[0] == 'y' || ans[0] == 'Y')
break;
vmsg("�Э��s��J(�Y�����D�·Ц�SYSOP�O)");
@@ -1326,22 +1333,27 @@ u_register(void)
ident[0] -= 32;
if( ispersonalid(ident) ){
fore[0] = 0;
- vmsg("�z�������w��אּ�����y");
+ vmsg("�z�������w��אּ�x�W�~��");
}
}
#endif
while (1) {
- getfield(8, "�ХΤ���", "�u��m�W", rname, 20);
+ getfield(8,
+#ifdef FOREIGN_REG
+ "�ХΥ��W",
+#else
+ "�ХΤ���",
+#endif
+ "�u��m�W", rname, 20);
if( (errcode = isvalidname(rname)) == NULL )
break;
else
vmsg(errcode);
}
- move(6, 0);
- prints("�·бz�ɶq�ԲӪ���g�z���A�ȳ��, �j�M�|�սг·�"
- "�[\033[1;33m�t��\033[m, ���q���Х[¾��\n"
- "�Ф��n��²�g�H�K�y���~�| :)"
+ move(11, 0);
+ prints(" �ɶq�ԲӪ���g�z���A�ȳ��, �j�M�|�սг·�"
+ " �[\033[1;33m�t��\033[m, ���q���Х[¾��\n"
);
while (1) {
getfield(9, "�Ǯ�(�t\033[1;33m�t�Ҧ~��\033[m)�γ��¾��",
@@ -1355,7 +1367,11 @@ u_register(void)
getfield(11, "�t\033[1;33m����\033[m�Ϊ��츹�X"
"(�x�_�Х[\033[1;33m��F��\033[m)",
"�ثe���}", addr, 50);
- if( (errcode = isvalidaddr(addr)) == NULL )
+ if( (errcode = isvalidaddr(addr)
+#ifdef FOREIGN_REG
+ && fore[0] ==0
+#endif
+ ) == NULL )
break;
else
vmsg(errcode);