Fixed UID/GID existing

pull/193/head
Ivan Dmitrievich Yartsev 10 months ago
parent 8e1f12c2fe
commit 0ccd29acc7

@ -1367,8 +1367,7 @@ void on_group_save(GtkWidget *self, dictionary *dict){
int config_size=0; int config_size=0;
int final_size=0; int final_size=0;
config_str config_users = yon_config_get_all_by_key(USERADD_SEARCH_macro,&config_size); config_str config_users = yon_config_get_all_by_key(GROUPADD_SEARCH_macro,&config_size);
yon_char_parsed_prepend_strings(config_users,config_size,":");
config_str final = yon_char_parsed_merge(main_config.groups,main_config.groups_size,config_users,config_size,&final_size); config_str final = yon_char_parsed_merge(main_config.groups,main_config.groups_size,config_users,config_size,&final_size);
if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UnuniqueGIDCheck))){ if (!gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->UnuniqueGIDCheck))){
int found=0; int found=0;
@ -1376,11 +1375,16 @@ void on_group_save(GtkWidget *self, dictionary *dict){
for (int i=0;i<final_size;i++){ for (int i=0;i<final_size;i++){
int parsed_size; int parsed_size;
config_str parsed = yon_char_parse(final[i],&parsed_size,":"); config_str parsed = yon_char_parse(final[i],&parsed_size,":");
if (parsed_size>1&&!strcmp(parsed[2],uid_string)&&strcmp(parsed[2],window->last_gid)) found = 1; if (parsed_size>2&&!strcmp(parsed[2],uid_string)){
if (yon_char_is_empty(window->last_gid)||(!yon_char_is_empty(window->last_gid)&&strcmp(parsed[2],window->last_gid))){
found = yon_char_parsed_check_exist(config_users,config_size,final[i])>-1?1:2;
break;
}
}
if (parsed_size) yon_char_parsed_free(parsed,parsed_size); if (parsed_size) yon_char_parsed_free(parsed,parsed_size);
} }
if (found){ if (found){
yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),GID_ALREADY_EXIST_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),found==1?GID_ALREADY_EXIST_CONFIG_LABEL:GID_ALREADY_EXIST_SYSTEM_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
yon_ubl_status_highlight_incorrect(window->userUIDEntry); yon_ubl_status_highlight_incorrect(window->userUIDEntry);
return; return;
} }
@ -1986,11 +1990,17 @@ void on_user_save(GtkWidget *self, dictionary *dict){
for (int i=0;i<final_size;i++){ for (int i=0;i<final_size;i++){
int parsed_size; int parsed_size;
config_str parsed = yon_char_parse(final[i],&parsed_size,":"); config_str parsed = yon_char_parse(final[i],&parsed_size,":");
if (parsed_size>1&&!strcmp(parsed[2],uid_string)&&(!yon_char_is_empty(window->last_uid)&&strcmp(parsed[2],window->last_uid))) found = 1; if (parsed_size>2&&!strcmp(parsed[2],uid_string)){
if (yon_char_is_empty(window->last_uid)||(!yon_char_is_empty(window->last_uid)&&strcmp(parsed[2],window->last_uid))){
found = yon_char_parsed_check_exist(config_users,config_size,final[i])>-1?1:2;
break;
}
}
if (parsed_size) yon_char_parsed_free(parsed,parsed_size); if (parsed_size) yon_char_parsed_free(parsed,parsed_size);
} }
if (found){ if (found){
yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),UID_ALREADY_EXIST_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE); yon_ubl_status_box_spawn(GTK_CONTAINER(window->StatusBox),found==1?UID_ALREADY_EXIST_CONFIG_LABEL:UID_ALREADY_EXIST_SYSTEM_LABEL,5,BACKGROUND_IMAGE_FAIL_TYPE);
yon_ubl_status_highlight_incorrect(window->userUIDEntry); yon_ubl_status_highlight_incorrect(window->userUIDEntry);
return; return;
} }

@ -189,8 +189,10 @@
#define PASSWORD_NO_SET_LABEL _("Not specified") #define PASSWORD_NO_SET_LABEL _("Not specified")
#define UID_ALREADY_EXIST_LABEL _("UID already busy") #define UID_ALREADY_EXIST_CONFIG_LABEL _("UID already exists in configuration")
#define GID_ALREADY_EXIST_LABEL _("GID already busy") #define UID_ALREADY_EXIST_SYSTEM_LABEL _("UID already exists in system")
#define GID_ALREADY_EXIST_CONFIG_LABEL _("GID already exists in configuration")
#define GID_ALREADY_EXIST_SYSTEM_LABEL _("GID already exists in system")
//ubl-settings-usergroups-password.glade //ubl-settings-usergroups-password.glade
#define PASSWORD_REPEAT_LABEL _("Repeat password:") #define PASSWORD_REPEAT_LABEL _("Repeat password:")

@ -1187,6 +1187,7 @@
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">False</property> <property name="receives-default">False</property>
<property name="halign">start</property> <property name="halign">start</property>
<property name="active">True</property>
<property name="draw-indicator">True</property> <property name="draw-indicator">True</property>
</object> </object>
<packing> <packing>
@ -1202,6 +1203,7 @@
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">False</property> <property name="receives-default">False</property>
<property name="halign">start</property> <property name="halign">start</property>
<property name="active">True</property>
<property name="draw-indicator">True</property> <property name="draw-indicator">True</property>
</object> </object>
<packing> <packing>

@ -666,83 +666,91 @@ msgid "Not specified"
msgstr "" msgstr ""
#: source/ubl-strings.h:192 #: source/ubl-strings.h:192
msgid "UID already busy" msgid "UID already exists in configuration"
msgstr "" msgstr ""
#: source/ubl-strings.h:193 #: source/ubl-strings.h:193
msgid "GID already busy" msgid "UID already exists in system"
msgstr "" msgstr ""
#: source/ubl-strings.h:196 #: source/ubl-strings.h:194
msgid "GID already exists in configuration"
msgstr ""
#: source/ubl-strings.h:195
msgid "GID already exists in system"
msgstr ""
#: source/ubl-strings.h:198
msgid "Repeat password:" msgid "Repeat password:"
msgstr "" msgstr ""
#: source/ubl-strings.h:197 #: source/ubl-strings.h:199
msgid "Password hash:" msgid "Password hash:"
msgstr "" msgstr ""
#: source/ubl-strings.h:198 #: source/ubl-strings.h:200
msgid "Do not encrypt password" msgid "Do not encrypt password"
msgstr "" msgstr ""
#: source/ubl-strings.h:201 #: source/ubl-strings.h:203
msgid "Additional configuration of service parameter saving" msgid "Additional configuration of service parameter saving"
msgstr "" msgstr ""
#: source/ubl-strings.h:202 #: source/ubl-strings.h:204
msgid "" msgid ""
"At every system shutdown save changes of (root)/var/lib/samba\n" "At every system shutdown save changes of (root)/var/lib/samba\n"
"into (hd)/ublinux-data/rootcopy" "into (hd)/ublinux-data/rootcopy"
msgstr "" msgstr ""
#: source/ubl-strings.h:203 #: source/ubl-strings.h:205
msgid "For system save mode \"Sandbox\"" msgid "For system save mode \"Sandbox\""
msgstr "" msgstr ""
#: source/ubl-strings.h:206 #: source/ubl-strings.h:208
msgid "Group deletion" msgid "Group deletion"
msgstr "" msgstr ""
#: source/ubl-strings.h:207 #: source/ubl-strings.h:209
msgid "Confirm group(-s) deletion:" msgid "Confirm group(-s) deletion:"
msgstr "" msgstr ""
#: source/ubl-strings.h:209 #: source/ubl-strings.h:211
msgid "User deletion" msgid "User deletion"
msgstr "" msgstr ""
#: source/ubl-strings.h:210 #: source/ubl-strings.h:212
msgid "Confirm user(-s) deletion:" msgid "Confirm user(-s) deletion:"
msgstr "" msgstr ""
#: source/ubl-strings.h:211 #: source/ubl-strings.h:213
msgid "Chosen" msgid "Chosen"
msgstr "" msgstr ""
#: source/ubl-strings.h:212 #: source/ubl-strings.h:214
msgid "User" msgid "User"
msgstr "" msgstr ""
#: source/ubl-strings.h:213 #: source/ubl-strings.h:215
msgid "Home directory" msgid "Home directory"
msgstr "" msgstr ""
#: source/ubl-strings.h:214 #: source/ubl-strings.h:216
msgid "Delete home directory" msgid "Delete home directory"
msgstr "" msgstr ""
#: source/ubl-strings.h:216 #: source/ubl-strings.h:218
msgid "Configuration users" msgid "Configuration users"
msgstr "" msgstr ""
#: source/ubl-strings.h:217 #: source/ubl-strings.h:219
msgid "Configuration groups" msgid "Configuration groups"
msgstr "" msgstr ""
#: source/ubl-strings.h:218 #: source/ubl-strings.h:220
msgid "System users" msgid "System users"
msgstr "" msgstr ""
#: source/ubl-strings.h:219 #: source/ubl-strings.h:221
msgid "System groups" msgid "System groups"
msgstr "" msgstr ""

@ -219,16 +219,19 @@ msgstr "Дополнительные настройки сохранения"
#: source/ubl-strings.h:54 #: source/ubl-strings.h:54
msgid "This user doesn't exist in configuration. Are you sure want to add user" msgid "This user doesn't exist in configuration. Are you sure want to add user"
msgstr "Пользователь в конфигурации отсутствует, но его можно добавить. Вы действительно хотите добавить пользователя" msgstr ""
"Пользователь в конфигурации отсутствует, но его можно добавить. Вы "
"действительно хотите добавить пользователя"
#: source/ubl-strings.h:54 source/ubl-strings.h:56 #: source/ubl-strings.h:54 source/ubl-strings.h:56
#, fuzzy
msgid "to configuration?" msgid "to configuration?"
msgstr "в конфигурацию?" msgstr "в конфигурацию?"
#: source/ubl-strings.h:55 #: source/ubl-strings.h:55
msgid "This user exists in configuration. Are you sure want to update user" msgid "This user exists in configuration. Are you sure want to update user"
msgstr "Пользователь уже присутствует в конфигурации. Хотите обновить данные пользователя" msgstr ""
"Пользователь уже присутствует в конфигурации. Хотите обновить данные "
"пользователя"
#: source/ubl-strings.h:55 source/ubl-strings.h:57 #: source/ubl-strings.h:55 source/ubl-strings.h:57
msgid "data at configuration?" msgid "data at configuration?"
@ -237,7 +240,9 @@ msgstr "в конфигурации?"
#: source/ubl-strings.h:56 #: source/ubl-strings.h:56
msgid "" msgid ""
"This group doesn't exist in configuration. Are you sure want to add group" "This group doesn't exist in configuration. Are you sure want to add group"
msgstr "Группа в конфигурации отсутствует, но ей можно добавить. Вы действительно хотите добавить группу" msgstr ""
"Группа в конфигурации отсутствует, но ей можно добавить. Вы действительно "
"хотите добавить группу"
#: source/ubl-strings.h:57 #: source/ubl-strings.h:57
msgid "This group exists in configuration. Are you sure want to update group" msgid "This group exists in configuration. Are you sure want to update group"
@ -710,30 +715,38 @@ msgid "Not specified"
msgstr "Не задан" msgstr "Не задан"
#: source/ubl-strings.h:192 #: source/ubl-strings.h:192
msgid "UID already busy" msgid "UID already exists in configuration"
msgstr "UID уже существует" msgstr "UID уже существует в конфигурации"
#: source/ubl-strings.h:193 #: source/ubl-strings.h:193
msgid "GID already busy" msgid "UID already exists in system"
msgstr "GID уже существует" msgstr "UID уже существует в системе"
#: source/ubl-strings.h:194
msgid "GID already exists in configuration"
msgstr "GID уже существует в конфигурации"
#: source/ubl-strings.h:195
msgid "GID already exists in system"
msgstr "GID уже существует в системе"
#: source/ubl-strings.h:196 #: source/ubl-strings.h:198
msgid "Repeat password:" msgid "Repeat password:"
msgstr "Подтверждение пароля:" msgstr "Подтверждение пароля:"
#: source/ubl-strings.h:197 #: source/ubl-strings.h:199
msgid "Password hash:" msgid "Password hash:"
msgstr "Хэш пароля:" msgstr "Хэш пароля:"
#: source/ubl-strings.h:198 #: source/ubl-strings.h:200
msgid "Do not encrypt password" msgid "Do not encrypt password"
msgstr "Не шифровать пароль" msgstr "Не шифровать пароль"
#: source/ubl-strings.h:201 #: source/ubl-strings.h:203
msgid "Additional configuration of service parameter saving" msgid "Additional configuration of service parameter saving"
msgstr "Дополнительные настройки сохранения параметров сервисов" msgstr "Дополнительные настройки сохранения параметров сервисов"
#: source/ubl-strings.h:202 #: source/ubl-strings.h:204
msgid "" msgid ""
"At every system shutdown save changes of (root)/var/lib/samba\n" "At every system shutdown save changes of (root)/var/lib/samba\n"
"into (hd)/ublinux-data/rootcopy" "into (hd)/ublinux-data/rootcopy"
@ -741,54 +754,54 @@ msgstr ""
"При каждом завершении работы ОС сохранять изменения (root)/var/lib/samba\n" "При каждом завершении работы ОС сохранять изменения (root)/var/lib/samba\n"
"в (hd)/ublinux-data/rootcopy/" "в (hd)/ublinux-data/rootcopy/"
#: source/ubl-strings.h:203 #: source/ubl-strings.h:205
msgid "For system save mode \"Sandbox\"" msgid "For system save mode \"Sandbox\""
msgstr "Для режима сохранения системы \"Песочница\"" msgstr "Для режима сохранения системы \"Песочница\""
#: source/ubl-strings.h:206 #: source/ubl-strings.h:208
msgid "Group deletion" msgid "Group deletion"
msgstr "Удаление групп(-ы)" msgstr "Удаление групп(-ы)"
#: source/ubl-strings.h:207 #: source/ubl-strings.h:209
msgid "Confirm group(-s) deletion:" msgid "Confirm group(-s) deletion:"
msgstr "Подтвердите удаление групп(-ы):" msgstr "Подтвердите удаление групп(-ы):"
#: source/ubl-strings.h:209 #: source/ubl-strings.h:211
msgid "User deletion" msgid "User deletion"
msgstr "Удаление пользователя(-ей)" msgstr "Удаление пользователя(-ей)"
#: source/ubl-strings.h:210 #: source/ubl-strings.h:212
msgid "Confirm user(-s) deletion:" msgid "Confirm user(-s) deletion:"
msgstr "Подтвердите удаление пользователя (-ей):" msgstr "Подтвердите удаление пользователя (-ей):"
#: source/ubl-strings.h:211 #: source/ubl-strings.h:213
msgid "Chosen" msgid "Chosen"
msgstr "Выбран" msgstr "Выбран"
#: source/ubl-strings.h:212 #: source/ubl-strings.h:214
msgid "User" msgid "User"
msgstr "Пользователь" msgstr "Пользователь"
#: source/ubl-strings.h:213 #: source/ubl-strings.h:215
msgid "Home directory" msgid "Home directory"
msgstr "Домашний каталог" msgstr "Домашний каталог"
#: source/ubl-strings.h:214 #: source/ubl-strings.h:216
msgid "Delete home directory" msgid "Delete home directory"
msgstr "Удалить домашний каталог" msgstr "Удалить домашний каталог"
#: source/ubl-strings.h:216 #: source/ubl-strings.h:218
msgid "Configuration users" msgid "Configuration users"
msgstr "Пользователи конфигурации" msgstr "Пользователи конфигурации"
#: source/ubl-strings.h:217 #: source/ubl-strings.h:219
msgid "Configuration groups" msgid "Configuration groups"
msgstr "Группы конфигурации" msgstr "Группы конфигурации"
#: source/ubl-strings.h:218 #: source/ubl-strings.h:220
msgid "System users" msgid "System users"
msgstr "Пользователи системы" msgstr "Пользователи системы"
#: source/ubl-strings.h:219 #: source/ubl-strings.h:221
msgid "System groups" msgid "System groups"
msgstr "Группы системы" msgstr "Группы системы"

Loading…
Cancel
Save