| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -14,7 +14,26 @@ MainWindow::MainWindow(Glib::RefPtr<Gtk::Builder> builder, View_open_browser* ob
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->socket_ext_id_I = socket_ext_id_I;
 | 
					 | 
					 | 
					 | 
					    this->socket_ext_id_I = socket_ext_id_I;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->socket_trd_id_I = socket_trd_id_I;
 | 
					 | 
					 | 
					 | 
					    this->socket_trd_id_I = socket_trd_id_I;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->set_obj_browser(obj_open_browser);
 | 
					 | 
					 | 
					 | 
					    this->set_obj_browser(obj_open_browser);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->settings();
 | 
					 | 
					 | 
					 | 
					    // this->settings();
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::set_map_gui(map_str_str* map_gui_cfg) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->map_gui_cfg = map_gui_cfg;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    obj_wrapper_load_save->set_map_gui(map_gui_cfg);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::set_map_global(map_str_str* map_global_cfg) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->map_global_cfg = map_global_cfg;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    obj_wrapper_load_save->set_map_global(map_global_cfg);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::set_map_local(map_str_str* map_system_cfg) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->map_system_cfg = map_system_cfg;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    obj_wrapper_load_save->set_map_local(map_system_cfg);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::set_obj_wrapper_load_save(Wrapper_load_save* obj_wrapper_load_save) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->obj_wrapper_load_save = obj_wrapper_load_save;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					void MainWindow::settings() {
 | 
					 | 
					 | 
					 | 
					void MainWindow::settings() {
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -25,6 +44,8 @@ void MainWindow::settings() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->init_tree_view();
 | 
					 | 
					 | 
					 | 
					    this->init_tree_view();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->init_spin_all();
 | 
					 | 
					 | 
					 | 
					    this->init_spin_all();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if (geteuid() == 0) {
 | 
					 | 
					 | 
					 | 
					    if (geteuid() == 0) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        this->wrapper_load_system();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        this->wrapper_load_global();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        this->event();
 | 
					 | 
					 | 
					 | 
					        this->event();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    }
 | 
					 | 
					 | 
					 | 
					    }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    else {
 | 
					 | 
					 | 
					 | 
					    else {
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -41,9 +62,7 @@ void MainWindow::settings() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    ubl_make_plugs(boxSave, boxButton, (*socket_ext_id_I), (*socket_trd_id_I));
 | 
					 | 
					 | 
					 | 
					    ubl_make_plugs(boxSave, boxButton, (*socket_ext_id_I), (*socket_trd_id_I));
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					void MainWindow::set_obj_wrapper_load(Wrapper_load_save* obj_wrapper_load) {
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->obj_wrapper_load = obj_wrapper_load;
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					void MainWindow::set_obj_browser(View_open_browser* obj_open_browser) {
 | 
					 | 
					 | 
					 | 
					void MainWindow::set_obj_browser(View_open_browser* obj_open_browser) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    this->obj_open_browser = obj_open_browser;
 | 
					 | 
					 | 
					 | 
					    this->obj_open_browser = obj_open_browser;
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -384,17 +403,51 @@ void MainWindow::open_browser() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    obj_open_browser->open_help();
 | 
					 | 
					 | 
					 | 
					    obj_open_browser->open_help();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::wrapper_save_system() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int id_mess = obj_wrapper_load_save->wrapper_save_system_cfg();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_save = obj_wrapper_load_save->get_error_save();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_load = obj_wrapper_load_save->get_error_load();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->info_warning_error(id_mess, error_save, error_load);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::wrapper_save_global() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int id_mess = obj_wrapper_load_save->wrapper_save_global_cfg();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_save = obj_wrapper_load_save->get_error_save();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_load = obj_wrapper_load_save->get_error_load();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->info_warning_error(id_mess, error_save, error_load);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::wrapper_save_all() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int id_mess = obj_wrapper_load_save->wrapper_save_all_cfg();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_save = obj_wrapper_load_save->get_error_save();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_load = obj_wrapper_load_save->get_error_load();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->info_warning_error(id_mess, error_save, error_load);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::wrapper_load_system() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int id_mess = obj_wrapper_load_save->load_system_cfg();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_save = obj_wrapper_load_save->get_error_save();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_load = obj_wrapper_load_save->get_error_load();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->info_warning_error(id_mess, error_save, error_load);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					void MainWindow::wrapper_load_global() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int id_mess = obj_wrapper_load_save->load_global_cfg();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_save = obj_wrapper_load_save->get_error_save();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    int error_load = obj_wrapper_load_save->get_error_load();
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    this->info_warning_error(id_mess, error_save, error_load);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					void MainWindow::event() {
 | 
					 | 
					 | 
					 | 
					void MainWindow::event() {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    btnFilterGroups->signal_clicked().connect([&]() {this->filters_show();});
 | 
					 | 
					 | 
					 | 
					    btnFilterGroups->signal_clicked().connect([&]() {this->filters_show();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    btnFilterUsers->signal_clicked().connect([&]() {this->filters_show();});
 | 
					 | 
					 | 
					 | 
					    btnFilterUsers->signal_clicked().connect([&]() {this->filters_show();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    btnFilterProject->signal_clicked().connect([&]() {this->filters_show();});
 | 
					 | 
					 | 
					 | 
					    btnFilterProject->signal_clicked().connect([&]() {this->filters_show();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //btnLoadGlob->signal_activate().connect([&]() {this->load_global_cfg();});
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //btnLoadLocal->signal_activate().connect([&]() {this->load_system_cfg();});
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    btnSynopsis->signal_activate().connect([&]() {this->open_browser();});
 | 
					 | 
					 | 
					 | 
					    btnSynopsis->signal_activate().connect([&]() {this->open_browser();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    btnAbout->signal_activate().connect([&]() {obj_open_browser->get_about()->aboutWindows->show();});
 | 
					 | 
					 | 
					 | 
					    btnAbout->signal_activate().connect([&]() {obj_open_browser->get_about()->aboutWindows->show();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //btnSaveLocalGlob->signal_activate().connect([&]() {this->wrapper_save_all_cfg();});
 | 
					 | 
					 | 
					 | 
					    btnSaveLocalGlob->signal_activate().connect([&]() {this->wrapper_save_all();});
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //btnSaveGlob->signal_activate().connect([&]() {this->wrapper_save_global_cfg();});
 | 
					 | 
					 | 
					 | 
					    btnSaveGlob->signal_activate().connect([&]() {this->wrapper_save_global();});
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //btnSaveLocal->signal_activate().connect([&]() {this->wrapper_save_system_cfg();});
 | 
					 | 
					 | 
					 | 
					    btnSaveLocal->signal_activate().connect([&]() {this->wrapper_save_system();});
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    btnLoadGlob->signal_activate().connect([&]() {this->wrapper_load_global();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    btnLoadLocal->signal_activate().connect([&]() {this->wrapper_load_system();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    chbMangSystemFile->signal_toggled().connect([&]() {this->mode_switch_quota();});
 | 
					 | 
					 | 
					 | 
					    chbMangSystemFile->signal_toggled().connect([&]() {this->mode_switch_quota();});
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    btnDelGroups->signal_clicked().connect( 
 | 
					 | 
					 | 
					 | 
					    btnDelGroups->signal_clicked().connect( 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        sigc::bind<Glib::RefPtr<Gtk::ListStore>*, const Gtk::TreeModel::iterator*, bool&> (sigc::mem_fun( *this, 
 | 
					 | 
					 | 
					 | 
					        sigc::bind<Glib::RefPtr<Gtk::ListStore>*, const Gtk::TreeModel::iterator*, bool&> (sigc::mem_fun( *this, 
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -420,10 +473,10 @@ void MainWindow::remove_template(Glib::RefPtr<Gtk::ListStore>* list_store, const
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    if (flag_validate_del && (*list_store)->iter_is_valid(*(iter))) {
 | 
					 | 
					 | 
					 | 
					    if (flag_validate_del && (*list_store)->iter_is_valid(*(iter))) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        Gtk::TreeModel::Row row = *(*iter);
 | 
					 | 
					 | 
					 | 
					        Gtk::TreeModel::Row row = *(*iter);
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        if(row) {
 | 
					 | 
					 | 
					 | 
					        if(row) {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            string name = row[m_columns.name] + "";
 | 
					 | 
					 | 
					 | 
					            // string name = row[m_columns.name] + "";
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            // TODO: : check
 | 
					 | 
					 | 
					 | 
					            // TODO: : check
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            string key = "GRUB_PASSWORD[" + name + "]";
 | 
					 | 
					 | 
					 | 
					            // string key = "GRUB_PASSWORD[" + name + "]";
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            map_gui_cfg[key] = "";
 | 
					 | 
					 | 
					 | 
					            // map_gui_cfg[key] = "";
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        }
 | 
					 | 
					 | 
					 | 
					        }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        (*list_store)->erase((*iter));
 | 
					 | 
					 | 
					 | 
					        (*list_store)->erase((*iter));
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        flag_validate_del = false;
 | 
					 | 
					 | 
					 | 
					        flag_validate_del = false;
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
 
 |