diff --git a/source/ubl-settings-usergroups.c b/source/ubl-settings-usergroups.c
index bcb9bd3..aa9bebc 100644
--- a/source/ubl-settings-usergroups.c
+++ b/source/ubl-settings-usergroups.c
@@ -6,7 +6,7 @@ config main_config;
int yon_load_proceed(YON_CONFIG_TYPE type){
yon_config_load_register(YON_CONFIG_DEFAULT,"users","DEFAULTPASSWD DEFAULTROOTPASSWD USERGROUPS DEFAULTUSER HASHPASSWD ADDADM",NULL);
- yon_config_load_register_no_cleaning(type,"users","DEFAULTPASSWD DEFAULTROOTPASSWD DEFAULTUSER HASHPASSWD USERGROUPS ADDADM USERADD[*] USERSHADOW[*] GROUPADD[*]","[system]","SYSTEMBOOT_STATEMODE","[save]","SAVE_ROOTCOPY_CHANGES",NULL);
+ yon_config_load_register_no_cleaning(type,"users","DEFAULTPASSWD DEFAULTROOTPASSWD DEFAULTUSER HASHPASSWD USERGROUPS ADDADM USERADD[*] USERADD_SYNC USERSHADOW[*] GROUPADD[*]","[system]","SYSTEMBOOT_STATEMODE","[save]","SAVE_ROOTCOPY_CHANGES",NULL);
if (type!=YON_CONFIG_GLOBAL){
yon_config_load_register_no_cleaning(YON_CONFIG_GLOBAL,"users","DEFAULTPASSWD DEFAULTROOTPASSWD",NULL);
}
@@ -79,7 +79,7 @@ void yon_interface_update(main_window *widgets){
char *pars = "";
if (parameters_size>5&&strcmp(parameters[5],"x")&&strcmp(parameters[5],"")){
- if (!check_is_password_hash(parameters[5])){
+ if (!check_is_password_hash(parameters[5])&¶meters[5][0]!='%'&¶meters[5][1]!='%'){
pars = ENCRYPTED_LABEL;
} else {
pars = UNENCRYPTED_LABEL;
@@ -125,7 +125,7 @@ void yon_interface_update(main_window *widgets){
char *pars="";
if (parameters_size>3&&strcmp(parameters[3],"x")&&strcmp(parameters[3],"")){
- if (!check_is_password_hash(parameters[3])){
+ if (!check_is_password_hash(parameters[3])&¶meters[5][0]!='%'&¶meters[5][1]!='%'){
pars = ENCRYPTED_LABEL;
} else {
pars = UNENCRYPTED_LABEL;
@@ -355,6 +355,11 @@ void yon_hide_passwords(template_saving_window *window){
}
}
+void on_save_done(main_window *widgets){
+ on_config_update(NULL,widgets);
+}
+
+
void on_config_save(GtkWidget *self, main_window *widgets){
yon_accept_changes();
yon_samba_sync_proceed();
@@ -417,12 +422,13 @@ void on_config_save(GtkWidget *self, main_window *widgets){
}
}
-void on_config_global_save(){
+void on_config_global_save(GtkWidget *self, main_window *widgets){
yon_accept_changes();
yon_samba_sync_proceed();
template_saving_window *window = yon_save_proceed("global",YON_CONFIG_GLOBAL,"users", "DEFAULTPASSWD DEFAULTROOTPASSWD DEFAULTUSER HASHPASSWD USERGROUPS ADDADM USERADD[*] USERSHADOW[*] GROUPADD[*]",NULL);
- if (window) yon_hide_passwords(window);
-
+ if (window){
+ yon_hide_passwords(window);
+ }
}
void on_config_local_save(GtkWidget *self, main_window *widgets){
@@ -620,8 +626,11 @@ yon_confirmation_window *yon_delete_confirmation_new(){
window->CancelButton = yon_gtk_builder_get_widget(builder,"CancelButton");
window->AcceptButton = yon_gtk_builder_get_widget(builder,"AcceptButton");
window->DeletionTree = yon_gtk_builder_get_widget(builder,"DeletionTree");
+ window->HatLabel = yon_gtk_builder_get_widget(builder,"userTitleNameLabel");
window->DeleteCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"DeleteCell"));
window->DeleteHomeCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"DeleteHomeCell"));
+ window->UserCell = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(builder,"UserCell"));
+ window->TitleLabel = yon_gtk_builder_get_widget(builder,"TitleLabel");
window->list = GTK_LIST_STORE(gtk_builder_get_object(builder,"liststore1"));
gtk_window_set_title(GTK_WINDOW(window->Window),DELETE_CONFIRMATION_TITLE_LABEL);
g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL);
@@ -679,6 +688,9 @@ void yon_group_delete_confirmation_open(main_window *widgets){
gtk_window_set_transient_for(GTK_WINDOW(window->Window),GTK_WINDOW(widgets->Window));
GtkTreeIter iter,itar;
dictionary *dict = NULL;
+ gtk_label_set_text(GTK_LABEL(window->TitleLabel),DELETE_GROUP_CONFIRMATION_CONFIRM_LABEL);
+ gtk_tree_view_column_set_title(window->UserCell,GROUP_LABEL);
+ gtk_label_set_text(GTK_LABEL(window->HatLabel),DELETE_GROUP_CONFIRMATION_TITLE_LABEL);
gtk_tree_view_column_set_visible(gtk_tree_view_get_column(GTK_TREE_VIEW(window->DeletionTree),2),0);
gtk_tree_view_column_set_visible(gtk_tree_view_get_column(GTK_TREE_VIEW(window->DeletionTree),3),0);
gtk_tree_view_column_set_visible(gtk_tree_view_get_column(GTK_TREE_VIEW(window->DeletionTree),4),0);
@@ -883,6 +895,7 @@ void on_password_change(GtkWidget *self, dictionary *entry_dict){
if (!check_is_password_hash(password)){
gtk_entry_set_text(GTK_ENTRY(window->PasswordHashEntry),password);
} else {
+ if (password[0]=='%'&&password[1]=='%')
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->NoEncriptionCheck),1);
gtk_entry_set_text(GTK_ENTRY(window->PasswordEntry),password);
}
@@ -959,6 +972,32 @@ void on_expiration_clicked(GtkWidget *self, ubl_settings_usergroups_user_window
yon_char_parsed_free(hash_algos,hash_size);
}
+ void on_users_boot_toggled(GtkToggleButton *self){
+ if (gtk_toggle_button_get_active(self)){
+ char *parameter = yon_config_get_by_key("USERADD_SYNC");
+ if (!parameter){
+ yon_config_register("USERADD_SYNC","users","boot");
+ } else {
+ yon_config_append("USERADD_SYNC","boot",",");
+ }
+ } else {
+ yon_config_remove_element("USERADD_SYNC","boot",",");
+ }
+ }
+
+ void on_users_shutdown_toggled(GtkToggleButton *self){
+ if (gtk_toggle_button_get_active(self)){
+ char *parameter = yon_config_get_by_key("USERADD_SYNC");
+ if (!parameter){
+ yon_config_register("USERADD_SYNC","users","shutdown");
+ } else {
+ yon_config_append("USERADD_SYNC","shutdown",",");
+ }
+ } else {
+ yon_config_remove_element("USERADD_SYNC","shutdown",",");
+ }
+ }
+
ubl_settings_usergroups_additional_settings_window *yon_ubl_settings_usergroups_additional_settings_new(){
ubl_settings_usergroups_additional_settings_window *window = malloc(sizeof(ubl_settings_usergroups_additional_settings_window));
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_ubl_settings_usergroups_additional_settings);
@@ -976,9 +1015,20 @@ ubl_settings_usergroups_additional_settings_window *yon_ubl_settings_usergroups_
window->EncryptAllPasswordsButton=yon_gtk_builder_get_widget(builder,"EncryptAllPasswordsButton");
window->CancelButton=yon_gtk_builder_get_widget(builder,"CancelButton");
window->AcceptButton=yon_gtk_builder_get_widget(builder,"AcceptButton");
+ window->UsersBootCheck=yon_gtk_builder_get_widget(builder,"UsersBootCheck");
+ window->UsersShutdownCheck=yon_gtk_builder_get_widget(builder,"UsersShutdownCheck");
yon_window_config_custom_window_setup(GTK_WINDOW(window->Window),"AdditionalSettingsWindow");
gtk_window_set_title(GTK_WINDOW(window->Window),ADDITIONAL_SETTINGS_TITLE_LABEL);
+ char *sync_parameters = yon_config_get_by_key("USERADD_SYNC");
+ if (sync_parameters){
+ if (strstr(sync_parameters,"boot")){
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsersBootCheck),1);
+ }
+ if (strstr(sync_parameters,"shutdown")){
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->UsersShutdownCheck),1);
+ }
+ }
int hash_size=0;
config_str hash_algos = yon_file_open(hash_list_path,&hash_size);
@@ -1062,6 +1112,9 @@ ubl_settings_usergroups_additional_settings_window *yon_ubl_settings_usergroups_
g_signal_connect(G_OBJECT(window->PasswordHashCombo),"changed",G_CALLBACK(on_hash_changed),window);
+ g_signal_connect(G_OBJECT(window->UsersBootCheck),"toggled",G_CALLBACK(on_users_boot_toggled),NULL);
+ g_signal_connect(G_OBJECT(window->UsersShutdownCheck),"toggled",G_CALLBACK(on_users_shutdown_toggled),NULL);
+
return window;
}
@@ -1226,7 +1279,7 @@ void on_group_save(GtkWidget *self, dictionary *dict){
if (!gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->GroupsTree)),&model,&iter))
gtk_list_store_append(widgets->GroupsList,&iter);
char *passwor = (char*)gtk_entry_get_text(GTK_ENTRY(window->PasswordEntry));
- gtk_list_store_set(widgets->GroupsList,&iter,0,strcmp(gid,"x")?gid:"",1,group_name,2,group_users,3,yon_char_append(non_unique,gsystem),4,gtk_combo_box_get_active(GTK_COMBO_BOX(window->PasswordCombo))==0?PASSWORD_NO_SET_LABEL:check_is_password_hash(passwor)?UNENCRYPTED_LABEL:ENCRYPTED_LABEL,-1);
+ gtk_list_store_set(widgets->GroupsList,&iter,0,strcmp(gid,"x")?gid:"",1,group_name,2,group_users,3,yon_char_append(non_unique,gsystem),4,gtk_combo_box_get_active(GTK_COMBO_BOX(window->PasswordCombo))==0?PASSWORD_NO_SET_LABEL:check_is_password_hash(passwor)&&passwor[0]=='%'?UNENCRYPTED_LABEL:ENCRYPTED_LABEL,-1);
on_subwindow_close(self);
}
@@ -1321,6 +1374,7 @@ ubl_settings_usergroups_group_window *yon_ubl_settings_usergroups_group_new(int
window->StatusCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"StatusCell"));
window->GroupColumn = GTK_TREE_VIEW_COLUMN(gtk_builder_get_object(builder,"GroupColumn"));
window->list = gtk_list_store_new(2,G_TYPE_BOOLEAN,G_TYPE_STRING);
+ gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(window->list),1,GTK_SORT_ASCENDING);
yon_window_config_custom_window_setup(GTK_WINDOW(window->GroupsWindow),"GroupWindow");
gtk_window_set_title(GTK_WINDOW(window->GroupsWindow),GROUPS_TITLE_LABEL);
@@ -1756,6 +1810,22 @@ void on_user_save(GtkWidget *self, dictionary *dict){
password="";
}
+ if (!window->old_password||window->old_password&&strcmp(window->old_password,password)){
+ time_t t = time(NULL);
+ struct tm tm = *localtime(&t);
+ char *month = yon_char_from_int(tm.tm_mon+1);
+ if (strlen(month)==1){
+ month=yon_char_append("0",month);
+ }
+ char *day = yon_char_from_int(tm.tm_mday);
+ if (strlen(day)<2){
+ day=yon_char_append("0",day);
+ }
+ password_changed_date = yon_char_unite(yon_char_from_int(1900+tm.tm_year),"-",month,"-",day,NULL);
+ } else {
+ password_changed_date = (char*)gtk_entry_get_text(GTK_ENTRY(window->userPasswordChangedEntry));
+ }
+
deactivate = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->userDeactivatedCheck));
if (deactivate){
if (strlen(password)>1&&password[0]=='%'&&password[1]=='%'){
@@ -1801,7 +1871,7 @@ void on_user_save(GtkWidget *self, dictionary *dict){
password_expiration_date = (char*)gtk_entry_get_text(GTK_ENTRY(window->userPasswordExpirationEntry));
if (yon_char_is_empty(password_expiration_date)){
- password_expiration_date="";
+ password_expiration_date="-1";
}
long warning_days_active = gtk_spin_button_get_value(GTK_SPIN_BUTTON(window->userWarningSpin));
@@ -1852,22 +1922,6 @@ void on_user_save(GtkWidget *self, dictionary *dict){
extra_options=(char*)gtk_entry_get_text(GTK_ENTRY(window->userExtraOptionsEntry));
- if (!window->old_password||window->old_password&&strcmp(window->old_password,password)){
- time_t t = time(NULL);
- struct tm tm = *localtime(&t);
- char *month = yon_char_from_int(tm.tm_mon+1);
- if (strlen(month)==1){
- month=yon_char_append("0",month);
- }
- char *day = yon_char_from_int(tm.tm_mday);
- if (strlen(day)==1){
- day=yon_char_append("0",day);
- }
- password_changed_date = yon_char_unite(yon_char_from_int(1900+tm.tm_year),"-",month,"-",day,NULL);
- } else {
- password_changed_date = (char*)gtk_entry_get_text(GTK_ENTRY(window->userPasswordChangedEntry));
- }
-
int force_at_next_login_active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(window->userForceChangeCheck));
if (force_at_next_login_active){
password_changed_date = "0";
@@ -2025,9 +2079,9 @@ void on_date_selected(GtkWidget *self, ubl_settings_usergroups_user_window *wind
char *dy = yon_char_from_int(day);
char *mn = yon_char_from_int(month+1);
char *yr = yon_char_from_int(year);
- if (tm.tm_mon+1<10) mn = yon_char_append("0",mn);
- if (tm.tm_mday<10) dy = yon_char_append("0",dy);
- char *date_string = yon_char_unite(yr,"-",mn,"-",dy);
+ if (month+1<10) mn = yon_char_append("0",mn);
+ if (day<10) dy = yon_char_append("0",dy);
+ char *date_string = yon_char_unite(yr,"-",mn,"-",dy,NULL);
gtk_entry_set_text(GTK_ENTRY(window->userPasswordExpirationEntry), date_string);
window->expiration_unix=date_string;
free(dy);
@@ -2112,6 +2166,12 @@ void on_parameter_changed(GtkWidget *self,ubl_settings_usergroups_user_window *w
free(final_string);
}
+void on_remove_expired(GtkWidget *self, GtkEntryIconPosition icon_pos, GdkEvent *event, GtkEntry *target){
+ if (icon_pos == GTK_ENTRY_ICON_SECONDARY){
+ gtk_entry_set_text(target,"");
+ }
+}
+
ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new(){
ubl_settings_usergroups_user_window *window = malloc(sizeof(ubl_settings_usergroups_user_window));
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path_ubl_settings_usergroups_user);
@@ -2227,6 +2287,7 @@ ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new(){
g_signal_connect(G_OBJECT(window->userDontCheckCheck),"toggled",G_CALLBACK(on_parameter_changed),window);
g_signal_connect(G_OBJECT(window->userGroupsCheck),"toggled",G_CALLBACK(on_parameter_changed),window);
g_signal_connect(G_OBJECT(window->userGroupsEntry),"changed",G_CALLBACK(on_parameter_changed),window);
+ g_signal_connect(G_OBJECT(window->userPasswordExpirationEntry),"icon-press",G_CALLBACK(on_remove_expired),window->userPasswordExpirationEntry);
return window;
}
@@ -2346,7 +2407,10 @@ void on_main_edit(GtkWidget *self, main_window *widgets){
}
}
if (parsed_size>5){
- window->old_password=parameters[5];
+ window->old_password=yon_char_new(parameters[5]);
+ if (!yon_char_is_empty(window->old_password)&&strlen(window->old_password)&&window->old_password[0]=='!'&&window->old_password[1]=='*'){
+ free(yon_char_divide(window->old_password,1));
+ }
if (strcmp(parameters[5],"x")&&strcmp(parameters[5],"")){
if (strstr(parameters[5],"!*")){
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->userDeactivatedCheck),1);
@@ -2366,12 +2430,16 @@ void on_main_edit(GtkWidget *self, main_window *widgets){
}
free(parameters);
parameters=yon_char_parse(yon_config_get_by_key(USERSHADOW(name)),&parsed_size,":");
- gtk_entry_set_text(GTK_ENTRY(window->userPasswordChangedEntry),parsed_size>0?parameters[0]:"");
+ if (parameters&&!strcmp(parameters[0],"0"))
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(window->userForceChangeCheck),1);
+ else
+ gtk_entry_set_text(GTK_ENTRY(window->userPasswordChangedEntry),parsed_size>0?parameters[0]:"");
gtk_spin_button_set_value(GTK_SPIN_BUTTON(window->userPasswordChangeDelayMinimumSpin),atol(parsed_size>1?parameters[1]:"0"));
gtk_spin_button_set_value(GTK_SPIN_BUTTON(window->userPasswordChangeDelayMaximumSpin),atol(parsed_size>2?parameters[2]:"0"));
gtk_spin_button_set_value(GTK_SPIN_BUTTON(window->userWarningSpin),atol(parsed_size>3?parameters[3]:"0"));
gtk_spin_button_set_value(GTK_SPIN_BUTTON(window->userActivitySpin),atol(parsed_size>4?parameters[4]:"0"));
- if (parsed_size>5&&!yon_char_is_empty(parameters[5])){
+
+ if (parsed_size>5&&!yon_char_is_empty(parameters[5])&&strcmp(parameters[5],"-1")){
gtk_entry_set_text(GTK_ENTRY(window->userPasswordExpirationEntry),parameters[5]);
}
gtk_window_set_transient_for(GTK_WINDOW(window->CreateUserWindow),GTK_WINDOW(widgets->Window));
@@ -2685,6 +2753,7 @@ main_window *yon_main_window_complete(main_window *widgets){
yon_window_config_add_listener((GtkWidget*)g_list_nth_data(list,i),yon_char_append("GroupColumn",yon_char_from_int(i)),"fixed-width",YON_TYPE_INT);
}
g_list_free(list);
+ yon_save_window_set_postsave_function(on_save_done,widgets);
return widgets;
}
diff --git a/source/ubl-settings-usergroups.h b/source/ubl-settings-usergroups.h
index 19dde23..a8a7e83 100644
--- a/source/ubl-settings-usergroups.h
+++ b/source/ubl-settings-usergroups.h
@@ -189,6 +189,8 @@ typedef struct{
GtkWidget *CancelButton;
GtkWidget *AcceptButton;
GtkWidget *EncryptAllPasswordsButton;
+ GtkWidget *UsersBootCheck;
+ GtkWidget *UsersShutdownCheck;
} ubl_settings_usergroups_additional_settings_window;
typedef struct{
@@ -313,9 +315,12 @@ typedef struct{
GtkWidget *CancelButton;
GtkWidget *AcceptButton;
GtkWidget *DeletionTree;
+ GtkWidget *TitleLabel;
+ GtkWidget *HatLabel;
GtkListStore *list;
GtkCellRenderer *DeleteCell;
GtkCellRenderer *DeleteHomeCell;
+ GtkTreeViewColumn *UserCell;
} yon_confirmation_window;
ubl_settings_usergroups_additional_settings_window *yon_ubl_settings_usergroups_additional_settings_new();
@@ -336,4 +341,6 @@ void on_settings_usergroups_system_open(GtkWidget *self, main_window *widgets);
ubl_settings_usergroups_user_window *yon_ubl_settings_usergroups_user_new();
-void on_password_accept(GtkWidget *self, dictionary *dict);
\ No newline at end of file
+void on_password_accept(GtkWidget *self, dictionary *dict);
+
+void on_config_update(GtkWidget *self, main_window *widgets);
\ No newline at end of file
diff --git a/source/ubl-strings.h b/source/ubl-strings.h
index 2343452..b9eeb41 100644
--- a/source/ubl-strings.h
+++ b/source/ubl-strings.h
@@ -51,7 +51,6 @@
#define UPDATE_LABEL _("Update users and groups")
#define SAVING_CONFIGURATION_LABEL _("Additional saving configuration")
-#define DELETE_CONFIRMATION_LABEL(type,target) yon_char_unite(_(yon_char_append("Are you sure want to delete ",type)), " '",target,"'?",NULL)
//ubl-settings-usergroups-additional-settings.glade
#define ADDITIONAL_SETTINGS_TITLE_LABEL _("Additional settings")
@@ -90,6 +89,9 @@
#define DESCRYPT_DESCRIPTION_LABEL _("descrypt (Hash function from the DES family of algorithms)")
#define NTHASH_DESCRIPTION_LABEL _("NTHash (Hash function from the NT Windows family of algorithms)")
+#define ADDITIONAL_BOOT_LABEL _("While booting the operating system, apply the settings of all users from the configuration")
+#define ADDITIONAL_SHUTDOWN_LABEL _("While shutdown, save the settings of all users with UID>=1000 to the configuration")
+
//ubl-settings-usergroups-group-creation.glade
#define CONFIGURE_GROUP_TITLE_LABEL _("Configure group")
#define ADD_GROUP_TITLE_LABEL _("Add group")
@@ -176,7 +178,7 @@
#define USERSHADOW_BOOT_LABEL _("During system startup, load the user's parameters from the configuration")
#define USERSHADOW_SHUTDOWN_LABEL _("When shutting down the system, save the user's parameters into the configuration")
-#define MAIN_NAME_LABEL _("Main")
+#define MAIN_NAME_LABEL _("Basic")
#define ADDITIONAL_NAME_LABEL _("Additional")
#define SYNCRONIZATION_NAME_LABEL _("Syncronization")
diff --git a/ubl-settings-usergroups-additional-settings.glade b/ubl-settings-usergroups-additional-settings.glade
index 85b8682..b513aa7 100644
--- a/ubl-settings-usergroups-additional-settings.glade
+++ b/ubl-settings-usergroups-additional-settings.glade
@@ -58,83 +58,58 @@
-
-
-
- Encrypt all passwords
- True
- True
- True
- Encrypt all unencrypted passwords at global configuration
- end
- image5
-
-
- False
- True
- 2
-
-
diff --git a/ubl-settings-usergroups-confirmation.glade b/ubl-settings-usergroups-confirmation.glade
index 8e05972..a28ec6b 100644
--- a/ubl-settings-usergroups-confirmation.glade
+++ b/ubl-settings-usergroups-confirmation.glade
@@ -86,7 +86,7 @@
-
+
True
False
Confirm user(-s) deletion:
@@ -130,7 +130,7 @@
-
+
User
diff --git a/ubl-settings-usergroups-group-creation.glade b/ubl-settings-usergroups-group-creation.glade
index 41a4a85..c613619 100644
--- a/ubl-settings-usergroups-group-creation.glade
+++ b/ubl-settings-usergroups-group-creation.glade
@@ -464,7 +464,7 @@
True
False
- Main
+ Basic
False
diff --git a/ubl-settings-usergroups-group.glade b/ubl-settings-usergroups-group.glade
index 417dfd4..d9599dc 100644
--- a/ubl-settings-usergroups-group.glade
+++ b/ubl-settings-usergroups-group.glade
@@ -40,6 +40,7 @@
True
True
+ 1
vertical
@@ -60,6 +61,9 @@
Group
+ True
+ descending
+ 1
diff --git a/ubl-settings-usergroups-user.glade b/ubl-settings-usergroups-user.glade
index 8a6640a..7320fe6 100644
--- a/ubl-settings-usergroups-user.glade
+++ b/ubl-settings-usergroups-user.glade
@@ -565,7 +565,7 @@
True
False
- Main
+ Basic
False
@@ -881,8 +881,8 @@
True
- False
- True
+ False
+ com.ublinux.ubl-settings-usergroups.trash-symbolic
False
diff --git a/ubl-settings-usergroups.pot b/ubl-settings-usergroups.pot
index 8974fc1..3156e54 100644
--- a/ubl-settings-usergroups.pot
+++ b/ubl-settings-usergroups.pot
@@ -53,7 +53,7 @@ msgstr ""
msgid "UID"
msgstr ""
-#: source/ubl-strings.h:14 source/ubl-strings.h:100
+#: source/ubl-strings.h:14 source/ubl-strings.h:103
msgid "Login"
msgstr ""
@@ -211,7 +211,7 @@ msgstr ""
msgid "Set a password"
msgstr ""
-#: source/ubl-strings.h:60 source/ubl-strings.h:103
+#: source/ubl-strings.h:60 source/ubl-strings.h:106
msgid "Encrypted"
msgstr ""
@@ -295,394 +295,406 @@ msgstr ""
msgid "NTHash (Hash function from the NT Windows family of algorithms)"
msgstr ""
+#: source/ubl-strings.h:93
+msgid ""
+"While booting the operating system, apply the settings of all users from the "
+"configuration"
+msgstr ""
+
#: source/ubl-strings.h:94
+msgid ""
+"While shutdown, save the settings of all users with UID>=1000 to the "
+"configuration"
+msgstr ""
+
+#: source/ubl-strings.h:97
msgid "Configure group"
msgstr ""
-#: source/ubl-strings.h:95
+#: source/ubl-strings.h:98
msgid "Add group"
msgstr ""
-#: source/ubl-strings.h:96
+#: source/ubl-strings.h:99
msgid "Group id:"
msgstr ""
-#: source/ubl-strings.h:97
+#: source/ubl-strings.h:100
msgid "Group name:"
msgstr ""
-#: source/ubl-strings.h:98
+#: source/ubl-strings.h:101
msgid "Group users:"
msgstr ""
-#: source/ubl-strings.h:99
+#: source/ubl-strings.h:102
msgid "Automatically"
msgstr ""
-#: source/ubl-strings.h:101
+#: source/ubl-strings.h:104
msgid "Create group with ununique GID"
msgstr ""
-#: source/ubl-strings.h:102
+#: source/ubl-strings.h:105
msgid "Create system group"
msgstr ""
-#: source/ubl-strings.h:104
+#: source/ubl-strings.h:107
msgid "Additional configuration"
msgstr ""
-#: source/ubl-strings.h:105
+#: source/ubl-strings.h:108
msgid "Group configuration synchronization"
msgstr ""
-#: source/ubl-strings.h:106
+#: source/ubl-strings.h:109
msgid "When shutting down the system, save the group into the configuration"
msgstr ""
-#: source/ubl-strings.h:107
+#: source/ubl-strings.h:110
msgid "Group administrators:"
msgstr ""
-#: source/ubl-strings.h:108
+#: source/ubl-strings.h:111
msgid "Group name must not start with digit"
msgstr ""
-#: source/ubl-strings.h:111
+#: source/ubl-strings.h:114
msgid "Default groups"
msgstr ""
-#: source/ubl-strings.h:112
+#: source/ubl-strings.h:115
msgid "Main group"
msgstr ""
-#: source/ubl-strings.h:113
+#: source/ubl-strings.h:116
msgid "Additional groups"
msgstr ""
-#: source/ubl-strings.h:114
+#: source/ubl-strings.h:117
msgid "Choose groups"
msgstr ""
-#: source/ubl-strings.h:115
+#: source/ubl-strings.h:118
msgid "Choose users"
msgstr ""
-#: source/ubl-strings.h:118
+#: source/ubl-strings.h:121
msgid "System users and groups"
msgstr ""
-#: source/ubl-strings.h:119
+#: source/ubl-strings.h:122
msgid "Locked"
msgstr ""
-#: source/ubl-strings.h:120
+#: source/ubl-strings.h:123
msgid "Username"
msgstr ""
-#: source/ubl-strings.h:121
+#: source/ubl-strings.h:124
msgid ""
"Primary\n"
"group"
msgstr ""
-#: source/ubl-strings.h:122
+#: source/ubl-strings.h:125
msgid ""
"Home\n"
"directory"
msgstr ""
-#: source/ubl-strings.h:123 source/ubl-strings.h:129
+#: source/ubl-strings.h:126 source/ubl-strings.h:132
msgid "Group"
msgstr ""
-#: source/ubl-strings.h:124
+#: source/ubl-strings.h:127
msgid "Update the system users and groups list"
msgstr ""
-#: source/ubl-strings.h:125
+#: source/ubl-strings.h:128
msgid "Toggle system groups and users"
msgstr ""
-#: source/ubl-strings.h:127
+#: source/ubl-strings.h:130
msgid "Password mismatch"
msgstr ""
-#: source/ubl-strings.h:128
+#: source/ubl-strings.h:131
msgid "Password must be at least"
msgstr ""
-#: source/ubl-strings.h:128
+#: source/ubl-strings.h:131
msgid "characters"
msgstr ""
-#: source/ubl-strings.h:130
+#: source/ubl-strings.h:133
msgid ""
"Days until\n"
"warning"
msgstr ""
-#: source/ubl-strings.h:131
+#: source/ubl-strings.h:134
msgid ""
"Days\n"
"without activity"
msgstr ""
-#: source/ubl-strings.h:132
+#: source/ubl-strings.h:135
msgid ""
"Shell\n"
"path"
msgstr ""
-#: source/ubl-strings.h:133
+#: source/ubl-strings.h:136
msgid ""
"Password has\n"
"been changed"
msgstr ""
-#: source/ubl-strings.h:134
+#: source/ubl-strings.h:137
msgid ""
"Expiration\n"
"date"
msgstr ""
-#: source/ubl-strings.h:135
+#: source/ubl-strings.h:138
msgid ""
"Password change\n"
"interval (min)"
msgstr ""
-#: source/ubl-strings.h:136
+#: source/ubl-strings.h:139
msgid ""
"Password change\n"
"interval (max)"
msgstr ""
-#: source/ubl-strings.h:139
+#: source/ubl-strings.h:142
msgid "Add user"
msgstr ""
-#: source/ubl-strings.h:140
+#: source/ubl-strings.h:143
msgid "Configure user"
msgstr ""
-#: source/ubl-strings.h:141
+#: source/ubl-strings.h:144
msgid "Set"
msgstr ""
-#: source/ubl-strings.h:142
+#: source/ubl-strings.h:145
msgid "Empty important field"
msgstr ""
-#: source/ubl-strings.h:143
+#: source/ubl-strings.h:146
msgid "Login must not start with digit"
msgstr ""
-#: source/ubl-strings.h:144
+#: source/ubl-strings.h:147
msgid "Loading has failed"
msgstr ""
-#: source/ubl-strings.h:145
+#: source/ubl-strings.h:148
msgid "Login name"
msgstr ""
-#: source/ubl-strings.h:146
+#: source/ubl-strings.h:149
msgid "Additional groups:"
msgstr ""
-#: source/ubl-strings.h:147
+#: source/ubl-strings.h:150
msgid "Password configuration"
msgstr ""
-#: source/ubl-strings.h:148
+#: source/ubl-strings.h:151
msgid "Password has been changed:"
msgstr ""
-#: source/ubl-strings.h:149
+#: source/ubl-strings.h:152
msgid "expiration date:"
msgstr ""
-#: source/ubl-strings.h:150
+#: source/ubl-strings.h:153
msgid "Password change interval: minimum"
msgstr ""
-#: source/ubl-strings.h:151
+#: source/ubl-strings.h:154
msgid "days, maximum"
msgstr ""
-#: source/ubl-strings.h:152
+#: source/ubl-strings.h:155
msgid "days"
msgstr ""
-#: source/ubl-strings.h:153
+#: source/ubl-strings.h:156
msgid "Days until warning:"
msgstr ""
-#: source/ubl-strings.h:154
+#: source/ubl-strings.h:157
msgid "Days without activity:"
msgstr ""
-#: source/ubl-strings.h:155
+#: source/ubl-strings.h:158
msgid "Force change at next login"
msgstr ""
-#: source/ubl-strings.h:156
+#: source/ubl-strings.h:159
msgid "User shell:"
msgstr ""
-#: source/ubl-strings.h:157
+#: source/ubl-strings.h:160
msgid "Home directory:"
msgstr ""
-#: source/ubl-strings.h:158
+#: source/ubl-strings.h:161
msgid "Don't set"
msgstr ""
-#: source/ubl-strings.h:159
+#: source/ubl-strings.h:162
msgid "Create system user"
msgstr ""
-#: source/ubl-strings.h:160
+#: source/ubl-strings.h:163
msgid "Create user with ununique (repeating) UID"
msgstr ""
-#: source/ubl-strings.h:161
+#: source/ubl-strings.h:164
msgid "Do not check login for compliance with character rules"
msgstr ""
-#: source/ubl-strings.h:162
+#: source/ubl-strings.h:165
msgid "Temporary deactivation"
msgstr ""
-#: source/ubl-strings.h:163
+#: source/ubl-strings.h:166
msgid "Save"
msgstr ""
-#: source/ubl-strings.h:164
+#: source/ubl-strings.h:167
msgid "login_name"
msgstr ""
-#: source/ubl-strings.h:165
+#: source/ubl-strings.h:168
msgid "group_name"
msgstr ""
-#: source/ubl-strings.h:166
+#: source/ubl-strings.h:169
msgid "User name"
msgstr ""
-#: source/ubl-strings.h:167
+#: source/ubl-strings.h:170
msgid "Sync user"
msgstr ""
-#: source/ubl-strings.h:168
+#: source/ubl-strings.h:171
msgid "Sync user with password"
msgstr ""
-#: source/ubl-strings.h:169
+#: source/ubl-strings.h:172
msgid "Encrypt all passwords"
msgstr ""
-#: source/ubl-strings.h:171
+#: source/ubl-strings.h:174
msgid "User configuration"
msgstr ""
-#: source/ubl-strings.h:172
+#: source/ubl-strings.h:175
msgid "User configuration synchronization"
msgstr ""
-#: source/ubl-strings.h:173
+#: source/ubl-strings.h:176
msgid "During system startup, load the user from the configuration"
msgstr ""
-#: source/ubl-strings.h:174
+#: source/ubl-strings.h:177
msgid "When shutting down the system, save the user into the configuration"
msgstr ""
-#: source/ubl-strings.h:175
+#: source/ubl-strings.h:178
msgid "User password configuration syncronization"
msgstr ""
-#: source/ubl-strings.h:176
+#: source/ubl-strings.h:179
msgid ""
"During system startup, load the user's parameters from the configuration"
msgstr ""
-#: source/ubl-strings.h:177
+#: source/ubl-strings.h:180
msgid ""
"When shutting down the system, save the user's parameters into the "
"configuration"
msgstr ""
-#: source/ubl-strings.h:179
-msgid "Main"
+#: source/ubl-strings.h:182
+msgid "Basic"
msgstr ""
-#: source/ubl-strings.h:180
+#: source/ubl-strings.h:183
msgid "Additional"
msgstr ""
-#: source/ubl-strings.h:181
+#: source/ubl-strings.h:184
msgid "Syncronization"
msgstr ""
-#: source/ubl-strings.h:183
+#: source/ubl-strings.h:186
msgid "Not specified"
msgstr ""
-#: source/ubl-strings.h:186
+#: source/ubl-strings.h:189
msgid "Repeat password:"
msgstr ""
-#: source/ubl-strings.h:187
+#: source/ubl-strings.h:190
msgid "Password hash:"
msgstr ""
-#: source/ubl-strings.h:188
+#: source/ubl-strings.h:191
msgid "Do not encrypt password"
msgstr ""
-#: source/ubl-strings.h:191
+#: source/ubl-strings.h:194
msgid "Additional configuration of service parameter saving"
msgstr ""
-#: source/ubl-strings.h:192
+#: source/ubl-strings.h:195
msgid ""
"At every system shutdown save changes of (root)/var/lib/samba\n"
"into (hd)/ublinux-data/rootcopy"
msgstr ""
-#: source/ubl-strings.h:193
+#: source/ubl-strings.h:196
msgid "For system save mode \"Sandbox\""
msgstr ""
-#: source/ubl-strings.h:196
+#: source/ubl-strings.h:199
msgid "Group deletion"
msgstr ""
-#: source/ubl-strings.h:197
+#: source/ubl-strings.h:200
msgid "Confirm group(-s) deletion:"
msgstr ""
-#: source/ubl-strings.h:199
+#: source/ubl-strings.h:202
msgid "User deletion"
msgstr ""
-#: source/ubl-strings.h:200
+#: source/ubl-strings.h:203
msgid "Confirm user(-s) deletion:"
msgstr ""
-#: source/ubl-strings.h:201
+#: source/ubl-strings.h:204
msgid "Chosen"
msgstr ""
-#: source/ubl-strings.h:202
+#: source/ubl-strings.h:205
msgid "User"
msgstr ""
-#: source/ubl-strings.h:203
+#: source/ubl-strings.h:206
msgid "Home directory"
msgstr ""
-#: source/ubl-strings.h:204
+#: source/ubl-strings.h:207
msgid "Delete home directory"
msgstr ""
diff --git a/ubl-settings-usergroups_ru.po b/ubl-settings-usergroups_ru.po
index d492236..aeb03e1 100644
--- a/ubl-settings-usergroups_ru.po
+++ b/ubl-settings-usergroups_ru.po
@@ -53,7 +53,7 @@ msgstr "Алгоритм хэширования пароля:"
msgid "UID"
msgstr "UID"
-#: source/ubl-strings.h:14 source/ubl-strings.h:100
+#: source/ubl-strings.h:14 source/ubl-strings.h:103
msgid "Login"
msgstr "Логин"
@@ -225,7 +225,7 @@ msgstr "Пароль не требуется"
msgid "Set a password"
msgstr "Задать пароль"
-#: source/ubl-strings.h:60 source/ubl-strings.h:103
+#: source/ubl-strings.h:60 source/ubl-strings.h:106
msgid "Encrypted"
msgstr "Зашифрован"
@@ -311,91 +311,107 @@ msgstr "descrypt (Хеш-функция из семейства алгоритм
msgid "NTHash (Hash function from the NT Windows family of algorithms)"
msgstr "NTHash (Хеш-функция из семейства алгоритмов NT Windows)"
+#: source/ubl-strings.h:93
+msgid ""
+"While booting the operating system, apply the settings of all users from the "
+"configuration"
+msgstr ""
+"При запуске операционной системы применять настройки всех пользователей "
+"из конфигурации"
+
#: source/ubl-strings.h:94
+msgid ""
+"While shutdown, save the settings of all users with UID>=1000 to the "
+"configuration"
+msgstr ""
+"При завершении работы сохранить настройки пользователей "
+"с UID>=1000 в конфигурацию"
+
+#: source/ubl-strings.h:97
msgid "Configure group"
msgstr "Редактировать группу"
-#: source/ubl-strings.h:95
+#: source/ubl-strings.h:98
msgid "Add group"
msgstr "Добавить группу"
-#: source/ubl-strings.h:96
+#: source/ubl-strings.h:99
msgid "Group id:"
msgstr "ID Группы:"
-#: source/ubl-strings.h:97
+#: source/ubl-strings.h:100
msgid "Group name:"
msgstr "Имя группы:"
-#: source/ubl-strings.h:98
+#: source/ubl-strings.h:101
msgid "Group users:"
msgstr "Пользователи группы:"
-#: source/ubl-strings.h:99
+#: source/ubl-strings.h:102
msgid "Automatically"
msgstr "Автоматически"
-#: source/ubl-strings.h:101
+#: source/ubl-strings.h:104
msgid "Create group with ununique GID"
msgstr "Создать группу с повторяющимися (не уникальными) GID"
-#: source/ubl-strings.h:102
+#: source/ubl-strings.h:105
msgid "Create system group"
msgstr "Создать системную группу"
-#: source/ubl-strings.h:104
+#: source/ubl-strings.h:107
msgid "Additional configuration"
msgstr "Дополнительные настройки"
-#: source/ubl-strings.h:105
+#: source/ubl-strings.h:108
msgid "Group configuration synchronization"
msgstr "Синхронизация настроек группы"
-#: source/ubl-strings.h:106
+#: source/ubl-strings.h:109
msgid "When shutting down the system, save the group into the configuration"
msgstr "При завершении работы системы сохранить группу в конфигурацию"
-#: source/ubl-strings.h:107
+#: source/ubl-strings.h:110
msgid "Group administrators:"
msgstr "Администраторы группы:"
-#: source/ubl-strings.h:108
+#: source/ubl-strings.h:111
msgid "Group name must not start with digit"
msgstr "Имя группы не должно начинаться с цифры"
-#: source/ubl-strings.h:111
+#: source/ubl-strings.h:114
msgid "Default groups"
msgstr "Группы пользователей по умолчанию"
-#: source/ubl-strings.h:112
+#: source/ubl-strings.h:115
msgid "Main group"
msgstr "Основная группа"
-#: source/ubl-strings.h:113
+#: source/ubl-strings.h:116
msgid "Additional groups"
msgstr "Дополнительные группы"
-#: source/ubl-strings.h:114
+#: source/ubl-strings.h:117
msgid "Choose groups"
msgstr "Выбрать группы"
-#: source/ubl-strings.h:115
+#: source/ubl-strings.h:118
msgid "Choose users"
msgstr "Выбрать пользователей"
-#: source/ubl-strings.h:118
+#: source/ubl-strings.h:121
msgid "System users and groups"
msgstr "Пользователи и группы в системе"
-#: source/ubl-strings.h:119
+#: source/ubl-strings.h:122
msgid "Locked"
msgstr "Отключен"
-#: source/ubl-strings.h:120
+#: source/ubl-strings.h:123
msgid "Username"
msgstr "Имя пользователя"
-#: source/ubl-strings.h:121
+#: source/ubl-strings.h:124
msgid ""
"Primary\n"
"group"
@@ -403,7 +419,7 @@ msgstr ""
"Основная\n"
"группа"
-#: source/ubl-strings.h:122
+#: source/ubl-strings.h:125
msgid ""
"Home\n"
"directory"
@@ -411,31 +427,31 @@ msgstr ""
"Домашний\n"
"каталог"
-#: source/ubl-strings.h:123 source/ubl-strings.h:129
+#: source/ubl-strings.h:126 source/ubl-strings.h:132
msgid "Group"
msgstr "Группа"
-#: source/ubl-strings.h:124
+#: source/ubl-strings.h:127
msgid "Update the system users and groups list"
msgstr "Обновить список пользователей и групп системы"
-#: source/ubl-strings.h:125
+#: source/ubl-strings.h:128
msgid "Toggle system groups and users"
msgstr "Переключить видимость системных пользователей и групп"
-#: source/ubl-strings.h:127
+#: source/ubl-strings.h:130
msgid "Password mismatch"
msgstr "Несовпадение паролей"
-#: source/ubl-strings.h:128
+#: source/ubl-strings.h:131
msgid "Password must be at least"
msgstr "Пароль должен состоять из как минимум"
-#: source/ubl-strings.h:128
+#: source/ubl-strings.h:131
msgid "characters"
msgstr "символов"
-#: source/ubl-strings.h:130
+#: source/ubl-strings.h:133
msgid ""
"Days until\n"
"warning"
@@ -443,7 +459,7 @@ msgstr ""
"Дней до\n"
"предупреждения"
-#: source/ubl-strings.h:131
+#: source/ubl-strings.h:134
msgid ""
"Days\n"
"without activity"
@@ -451,7 +467,7 @@ msgstr ""
"Дней без\n"
"активности"
-#: source/ubl-strings.h:132
+#: source/ubl-strings.h:135
msgid ""
"Shell\n"
"path"
@@ -459,7 +475,7 @@ msgstr ""
"Путь до\n"
"оболочки"
-#: source/ubl-strings.h:133
+#: source/ubl-strings.h:136
msgid ""
"Password has\n"
"been changed"
@@ -467,7 +483,7 @@ msgstr ""
"Пароль\n"
"изменён"
-#: source/ubl-strings.h:134
+#: source/ubl-strings.h:137
msgid ""
"Expiration\n"
"date"
@@ -475,7 +491,7 @@ msgstr ""
"Дата\n"
"устаревания"
-#: source/ubl-strings.h:135
+#: source/ubl-strings.h:138
msgid ""
"Password change\n"
"interval (min)"
@@ -483,7 +499,7 @@ msgstr ""
"Интервал смены\n"
"пароля (мин.)"
-#: source/ubl-strings.h:136
+#: source/ubl-strings.h:139
msgid ""
"Password change\n"
"interval (max)"
@@ -491,199 +507,199 @@ msgstr ""
"Интервал смены\n"
"пароля (макс.)"
-#: source/ubl-strings.h:139
+#: source/ubl-strings.h:142
msgid "Add user"
msgstr "Добавить пользователя"
-#: source/ubl-strings.h:140
+#: source/ubl-strings.h:143
msgid "Configure user"
msgstr "Редактировать пользователя"
-#: source/ubl-strings.h:141
+#: source/ubl-strings.h:144
msgid "Set"
msgstr "Задать"
-#: source/ubl-strings.h:142
+#: source/ubl-strings.h:145
msgid "Empty important field"
msgstr "Пустое важное поле"
-#: source/ubl-strings.h:143
+#: source/ubl-strings.h:146
msgid "Login must not start with digit"
msgstr "Логин не должен начинаться с цифры"
-#: source/ubl-strings.h:144
+#: source/ubl-strings.h:147
msgid "Loading has failed"
msgstr "Ошибка загрузки"
-#: source/ubl-strings.h:145
+#: source/ubl-strings.h:148
msgid "Login name"
msgstr "Имя логина"
-#: source/ubl-strings.h:146
+#: source/ubl-strings.h:149
msgid "Additional groups:"
msgstr "Дополнительные группы:"
-#: source/ubl-strings.h:147
+#: source/ubl-strings.h:150
msgid "Password configuration"
msgstr "Конфигурация пароля"
-#: source/ubl-strings.h:148
+#: source/ubl-strings.h:151
msgid "Password has been changed:"
msgstr "Пароль изменён:"
-#: source/ubl-strings.h:149
+#: source/ubl-strings.h:152
msgid "expiration date:"
msgstr "Дата устаревания:"
-#: source/ubl-strings.h:150
+#: source/ubl-strings.h:153
msgid "Password change interval: minimum"
msgstr "Интервал смены пароля: минимум"
-#: source/ubl-strings.h:151
+#: source/ubl-strings.h:154
msgid "days, maximum"
msgstr "дней, максимум"
-#: source/ubl-strings.h:152
+#: source/ubl-strings.h:155
msgid "days"
msgstr "дней"
-#: source/ubl-strings.h:153
+#: source/ubl-strings.h:156
msgid "Days until warning:"
msgstr "Дней до предупреждения:"
-#: source/ubl-strings.h:154
+#: source/ubl-strings.h:157
msgid "Days without activity:"
msgstr "Дней без активности:"
-#: source/ubl-strings.h:155
+#: source/ubl-strings.h:158
msgid "Force change at next login"
msgstr "Принудительно сменить при следующем входе в систему"
-#: source/ubl-strings.h:156
+#: source/ubl-strings.h:159
msgid "User shell:"
msgstr "Оболочка пользователя:"
-#: source/ubl-strings.h:157
+#: source/ubl-strings.h:160
msgid "Home directory:"
msgstr "Домашний каталог:"
-#: source/ubl-strings.h:158
+#: source/ubl-strings.h:161
msgid "Don't set"
msgstr "Не создавать"
-#: source/ubl-strings.h:159
+#: source/ubl-strings.h:162
msgid "Create system user"
msgstr "Создать системного пользователя"
-#: source/ubl-strings.h:160
+#: source/ubl-strings.h:163
msgid "Create user with ununique (repeating) UID"
msgstr "Создать пользователя с повторяющимися (не уникальными) UID"
-#: source/ubl-strings.h:161
+#: source/ubl-strings.h:164
msgid "Do not check login for compliance with character rules"
msgstr "Не проверять логин на несоответствие правилам использования символов"
-#: source/ubl-strings.h:162
+#: source/ubl-strings.h:165
msgid "Temporary deactivation"
msgstr "Временное отключение учётной записи"
-#: source/ubl-strings.h:163
+#: source/ubl-strings.h:166
msgid "Save"
msgstr "Сохранить"
-#: source/ubl-strings.h:164
+#: source/ubl-strings.h:167
msgid "login_name"
msgstr "Имя_логина"
-#: source/ubl-strings.h:165
+#: source/ubl-strings.h:168
msgid "group_name"
msgstr "Имя_группы"
-#: source/ubl-strings.h:166
+#: source/ubl-strings.h:169
msgid "User name"
msgstr "Имя пользователя"
-#: source/ubl-strings.h:167
+#: source/ubl-strings.h:170
msgid "Sync user"
msgstr "Синхронизировать пользователя"
-#: source/ubl-strings.h:168
+#: source/ubl-strings.h:171
msgid "Sync user with password"
msgstr "Синхронизировать пользователя с паролем"
-#: source/ubl-strings.h:169
+#: source/ubl-strings.h:172
msgid "Encrypt all passwords"
msgstr "Зашифровать все пароли"
-#: source/ubl-strings.h:171
+#: source/ubl-strings.h:174
msgid "User configuration"
msgstr "Настройка пользователя"
-#: source/ubl-strings.h:172
+#: source/ubl-strings.h:175
msgid "User configuration synchronization"
msgstr "Синхронизация настроек пользователя"
-#: source/ubl-strings.h:173
+#: source/ubl-strings.h:176
msgid "During system startup, load the user from the configuration"
msgstr ""
"При запуске операционной системы применять настройки пользователя из "
"конфигурации"
-#: source/ubl-strings.h:174
+#: source/ubl-strings.h:177
msgid "When shutting down the system, save the user into the configuration"
msgstr ""
"При завершении работы операционной системы сохранить настройки пользователя "
"в конфигурацию"
-#: source/ubl-strings.h:175
+#: source/ubl-strings.h:178
msgid "User password configuration syncronization"
msgstr "Синхронизация настроек пароля пользователя"
-#: source/ubl-strings.h:176
+#: source/ubl-strings.h:179
msgid ""
"During system startup, load the user's parameters from the configuration"
msgstr "При загрузке системы загрузить параметры пользователя из конфигурации"
-#: source/ubl-strings.h:177
+#: source/ubl-strings.h:180
msgid ""
"When shutting down the system, save the user's parameters into the "
"configuration"
msgstr ""
"При завершении работы системы сохранить параметры пользователя в конфигурацию"
-#: source/ubl-strings.h:179
-msgid "Main"
+#: source/ubl-strings.h:182
+msgid "Basic"
msgstr "Основные"
-#: source/ubl-strings.h:180
+#: source/ubl-strings.h:183
msgid "Additional"
msgstr "Дополнительные"
-#: source/ubl-strings.h:181
+#: source/ubl-strings.h:184
msgid "Syncronization"
msgstr "Синхронизация"
-#: source/ubl-strings.h:183
+#: source/ubl-strings.h:186
msgid "Not specified"
msgstr "Не задан"
-#: source/ubl-strings.h:186
+#: source/ubl-strings.h:189
msgid "Repeat password:"
msgstr "Подтверждение пароля:"
-#: source/ubl-strings.h:187
+#: source/ubl-strings.h:190
msgid "Password hash:"
msgstr "Хэш пароля:"
-#: source/ubl-strings.h:188
+#: source/ubl-strings.h:191
msgid "Do not encrypt password"
msgstr "Не шифровать пароль"
-#: source/ubl-strings.h:191
+#: source/ubl-strings.h:194
msgid "Additional configuration of service parameter saving"
msgstr "Дополнительные настройки сохранения параметров сервисов"
-#: source/ubl-strings.h:192
+#: source/ubl-strings.h:195
msgid ""
"At every system shutdown save changes of (root)/var/lib/samba\n"
"into (hd)/ublinux-data/rootcopy"
@@ -691,44 +707,38 @@ msgstr ""
"При каждом завершении работы ОС сохранять изменения (root)/var/lib/samba\n"
"в (hd)/ublinux-data/rootcopy/"
-#: source/ubl-strings.h:193
+#: source/ubl-strings.h:196
msgid "For system save mode \"Sandbox\""
msgstr "Для режима сохранения системы \"Песочница\""
-#: source/ubl-strings.h:196
+#: source/ubl-strings.h:199
msgid "Group deletion"
-msgstr "Удаление пользователя(-лей)"
+msgstr "Удаление групп(-ы)"
-#: source/ubl-strings.h:197
+#: source/ubl-strings.h:200
msgid "Confirm group(-s) deletion:"
msgstr "Подтвердите удаление групп(-ы):"
-#: source/ubl-strings.h:199
+#: source/ubl-strings.h:202
msgid "User deletion"
-msgstr "Удаление групп(-ы)"
+msgstr "Удаление пользователя(-ей)"
-#: source/ubl-strings.h:200
+#: source/ubl-strings.h:203
msgid "Confirm user(-s) deletion:"
msgstr "Подтвердите удаление пользователя (-ей):"
-#: source/ubl-strings.h:201
+#: source/ubl-strings.h:204
msgid "Chosen"
msgstr "Выбран"
-#: source/ubl-strings.h:202
+#: source/ubl-strings.h:205
msgid "User"
msgstr "Пользователь"
-#: source/ubl-strings.h:203
+#: source/ubl-strings.h:206
msgid "Home directory"
msgstr "Домашний каталог"
-#: source/ubl-strings.h:204
+#: source/ubl-strings.h:207
msgid "Delete home directory"
msgstr "Удалить домашний каталог"
-
-msgid "Are you sure want to delete group"
-msgstr "Вы уверены, что хотите удалить группу"
-
-msgid "Are you sure want to delete user"
-msgstr "Вы уверены, что хотите удалить пользователя"