@ -17,6 +17,7 @@ bool flag_save_global = false;
bool flag_load_global = false ;
bool flag_load_global = false ;
int socket_ext_id_I = 0 ;
int socket_ext_id_I = 0 ;
int socket_trd_id_I = 0 ;
int socket_trd_id_I = 0 ;
string version_application = " 1.4 " ;
CmdArgParser : : CmdArgParser ( const std : : string & p_name , const std : : string & p_description , const std : : string & p_help )
CmdArgParser : : CmdArgParser ( const std : : string & p_name , const std : : string & p_description , const std : : string & p_help )
: Glib : : OptionGroup { p_name , p_description , p_help } {
: Glib : : OptionGroup { p_name , p_description , p_help } {
@ -53,32 +54,33 @@ MainWindow::MainWindow(Glib::RefPtr<Gtk::Builder> const& builder) {
void MainWindow : : settings ( ) {
void MainWindow : : settings ( ) {
map_error [ " xdg-open https://wiki.ublinux.ru/ru/home " ] = string ( _ ( " : \" xdg-open \" " ) ) ;
map_error [ " xdg-open https://wiki.ublinux.ru/ru/home " ] = string ( _ ( " : \" xdg-open \" " ) ) ;
map_error [ " /usr/bin/ ubconfig --default --source system get clock ZONE" ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " ubconfig --default --source system get clock ZONE" ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " hwclock --systohc " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " hwclock --systohc " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --default --source system get network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --default --source system get network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --source=default get NTPSERVERS_DEFAULT " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --default --source system get clock HWCLOCK_SYNC " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --default --source global get network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --default --source global get network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --default --source global get clock ZONE " ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " ubconfig --default --source global get clock ZONE " ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " /usr/bin/ubconfig --default --source global get clock HWCLOCK_SYNC " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --default --source global get clock HWCLOCK_SYNC " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --source global get clock HWCLOCK_SYNC " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --source global get clock HWCLOCK_SYNC " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system set clock ZONE= " ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " ubconfig --target system set clock ZONE= " ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system set network NTPSERVERS=default " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target system set network NTPSERVERS=default " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system set network NTPSERVERS=dhcp " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target system set network NTPSERVERS=dhcp " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system set network NTPSERVERS= \" " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target system set network NTPSERVERS= \" " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system remove network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target system remove network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=localtime " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --target system set clock HWCLOCK_SYNC=localtime " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target system set clock HWCLOCK_SYNC=utc " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --target system set clock HWCLOCK_SYNC=utc " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global set clock ZONE= " ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " ubconfig --target global set clock ZONE= " ] = string ( _ ( " : \" Time Zone \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global set network NTPSERVERS=default " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target global set network NTPSERVERS=default " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global set network NTPSERVERS=dhcp " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target global set network NTPSERVERS=dhcp " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global set network NTPSERVERS= \" " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target global set network NTPSERVERS= \" " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global remove network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " ubconfig --target global remove network NTPSERVERS " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=localtime " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --target global set clock HWCLOCK_SYNC=localtime " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " /usr/bin/ubconfig --target global set clock HWCLOCK_SYNC=utc " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --target global set clock HWCLOCK_SYNC=utc " ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --source default get [] NTPSERVERS_DEFAULT " ] = string ( _ ( " : \" NTP \" " ) ) ;
map_error [ " date +%Y%m%d -s \" " ] = string ( _ ( " : \" Date \" " ) ) ;
map_error [ " date +%Y%m%d -s \" " ] = string ( _ ( " : \" Date \" " ) ) ;
map_error [ " date +%T -s \" " ] = string ( _ ( " : \" Date \" " ) ) ;
map_error [ " date +%T -s \" " ] = string ( _ ( " : \" Date \" " ) ) ;
map_error [ " /usr/bin/ ubconfig --source default get clock HWCLOCK_SYNC" ] = string ( _ ( " : \" Hardware time \" " ) ) ;
map_error [ " ubconfig --source default get clock HWCLOCK_SYNC" ] = string ( _ ( " : \" Hardware time \" " ) ) ;
this - > get_builder ( ) ;
this - > get_builder ( ) ;
this - > add_CSS ( ) ;
this - > add_CSS ( ) ;
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 ) ;
@ -86,7 +88,7 @@ void MainWindow::settings() {
month = 0 ;
month = 0 ;
day = 0 ;
day = 0 ;
this - > lacalization ( ) ;
this - > lacalization ( ) ;
if ( this - > check_root ( ) = = 0 ) {
if ( geteuid ( ) = = 0 ) {
numTimeHrs - > set_range ( 0 , 23 ) ;
numTimeHrs - > set_range ( 0 , 23 ) ;
numTimeMin - > set_range ( 0 , 59 ) ;
numTimeMin - > set_range ( 0 , 59 ) ;
numTimeHrs - > set_increments ( 1.0 , 1.0 ) ;
numTimeHrs - > set_increments ( 1.0 , 1.0 ) ;
@ -97,31 +99,15 @@ void MainWindow::settings() {
this - > event ( ) ;
this - > event ( ) ;
this - > parse_text_date ( ) ;
this - > parse_text_date ( ) ;
this - > load_local_cfg ( ) ;
this - > load_local_cfg ( ) ;
string cmd = " ubconfig --source default get [] NTPSERVERS_DEFAULT " ;
default_get_dhcp = this - > get_ubconfig_value ( cmd ) ;
this - > str_remove ( default_get_dhcp , " \" " ) ;
}
}
else {
else {
lblHW - > set_sensitive ( false ) ;
lblHW - > set_sensitive ( false ) ;
cbHw - > set_sensitive ( false ) ;
boxWidgetFun c- > set_sensitive ( false ) ;
boxButton - > set_sensitive ( false ) ;
boxButton - > set_sensitive ( false ) ;
boxSave - > set_sensitive ( false ) ;
btnSave - > set_sensitive ( false ) ;
btnLoad - > set_sensitive ( false ) ;
numTimeHrs - > set_sensitive ( false ) ;
numTimeMin - > set_sensitive ( false ) ;
lblTime - > set_sensitive ( false ) ;
lblData - > set_sensitive ( false ) ;
txtDate - > set_sensitive ( false ) ;
btnChooseDate - > set_sensitive ( false ) ;
btnUpdateDateTime - > set_sensitive ( false ) ;
btnHardwareTime - > set_sensitive ( false ) ;
cbRegion - > set_sensitive ( false ) ;
cbZone - > set_sensitive ( false ) ;
lblReg - > set_sensitive ( false ) ;
lblZone - > set_sensitive ( false ) ;
lblTimeZone - > set_sensitive ( false ) ;
lblSynchronizebChkGLob - > set_sensitive ( false ) ;
cbDhcp - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
lblDateTimeSetting - > set_sensitive ( false ) ;
btnBoxAboutDialog - > set_visible ( false ) ;
this - > event ( ) ;
this - > event ( ) ;
imgInfo - > set_from_icon_name ( " ru.ublinux.ubl-settings-datetime.warning " , Gtk : : ICON_SIZE_MENU ) ;
imgInfo - > set_from_icon_name ( " ru.ublinux.ubl-settings-datetime.warning " , Gtk : : ICON_SIZE_MENU ) ;
info_status_app ( " boxInfoMessError " ) ;
info_status_app ( " boxInfoMessError " ) ;
@ -129,16 +115,6 @@ void MainWindow::settings() {
}
}
}
}
int MainWindow : : check_root ( ) {
if ( geteuid ( ) ! = 0 ) {
lblMessageSudo - > set_text ( _ ( " The program must be run as root " ) ) ;
windowMessSudo - > show ( ) ;
return 1 ;
}
return 0 ;
}
void MainWindow : : lacalization ( ) {
void MainWindow : : lacalization ( ) {
time_t now = time ( 0 ) ;
time_t now = time ( 0 ) ;
tm * ltm = localtime ( & now ) ;
tm * ltm = localtime ( & now ) ;
@ -153,26 +129,45 @@ void MainWindow::lacalization() {
lblLoad - > set_label ( _ ( " Load " ) ) ;
lblLoad - > set_label ( _ ( " Load " ) ) ;
txtDate - > set_tooltip_text ( _ ( " Date of \n Format: DD.MM.YYYY " ) ) ;
txtDate - > set_tooltip_text ( _ ( " Date of \n Format: DD.MM.YYYY " ) ) ;
txtNtpServer - > set_tooltip_text ( _ ( " Enter the name of the ntp-server or its ip-address. \n When entering multiple addresses, separate them with commas. " ) ) ;
txtNtpServer - > set_tooltip_text ( _ ( " Enter the name of the ntp-server or its ip-address. \n When entering multiple addresses, separate them with commas. " ) ) ;
lblSynchronizebChkGLob - > set_text ( _ ( " Synchronize via NTP : " ) ) ;
lblSynchronizebChkGLob - > set_text ( _ ( " Synchronize via NTP " ) ) ;
cbDhcp - > append ( _ ( " Default " ) ) ;
cbDhcp - > append ( _ ( " Default " ) ) ;
cbDhcp - > append ( _ ( " DHCP " ) ) ;
cbDhcp - > append ( _ ( " DHCP " ) ) ;
cbDhcp - > append ( _ ( " Manual " ) ) ;
cbDhcp - > append ( _ ( " Manual " ) ) ;
cbDhcp - > append ( _ ( " Disabled " ) ) ;
cbDhcp - > append ( _ ( " Disabled " ) ) ;
lblDateTimeSetting - > set_text ( _ ( " Current date and time " ) ) ;
lblDateTimeSetting - > set_text ( _ ( " Current date and time " ) ) ;
lblHead - > set_text ( _ ( " Setting the date and time " ) ) ;
lblHead - > set_text ( _ ( " Setting the date and time " ) ) ;
lblTime - > set_text ( _ ( " Time " ) ) ;
lblTime - > set_text ( _ ( " Time : " ) ) ;
lblData - > set_text ( _ ( " Date " ) ) ;
lblData - > set_text ( _ ( " Date : " ) ) ;
lblTimeZone - > set_text ( _ ( " Time zone " ) ) ;
lblTimeZone - > set_text ( _ ( " Time zone " ) ) ;
lblReg - > set_text ( _ ( " Region " ) ) ;
lblReg - > set_text ( _ ( " Region : " ) ) ;
lblZone - > set_text ( _ ( " Zone " ) ) ;
lblZone - > set_text ( _ ( " Zone : " ) ) ;
lblSynchronizeBtn - > set_text ( _ ( " Sync by " ) ) ;
lblSynchronizeBtn - > set_text ( _ ( " Sync by " ) ) ;
lblHeader - > set_text ( _ ( " ubl-settings-datetime " ) ) ;
lblHeader - > set_text ( _ ( " ubl-settings-datetime " ) ) ;
windowMessSudo - > set_title ( _ ( " Warning! " ) ) ;
windowMessDchp - > set_title ( _ ( " Warning! " ) ) ;
windowMessDchp - > set_title ( _ ( " Warning! " ) ) ;
lblTimeBios - > set_text ( _ ( " Synchronize hardware time " ) ) ;
lblTimeBios - > set_text ( _ ( " Synchronize hardware time " ) ) ;
lblHW - > set_text ( _ ( " Synchronize hardware time: " ) ) ;
lblHW - > set_text ( _ ( " Synchronize hardware time: " ) ) ;
cbHw - > append ( _ ( " Local time " ) ) ;
array_hw_local [ 0 ] = _ ( " UTC time " ) ;
cbHw - > append ( _ ( " UTC time " ) ) ;
array_hw_local [ 1 ] = _ ( " Local time " ) ;
array_hw [ 0 ] = " utc " ;
array_hw [ 1 ] = " localtime " ;
this - > bubble_sort ( array_hw , array_hw_local , 2 ) ;
cbHw - > append ( array_hw_local [ 0 ] ) ;
cbHw - > append ( array_hw_local [ 1 ] ) ;
}
void MainWindow : : bubble_sort ( string arr [ ] , string arr_local [ ] , int len_arr ) {
while ( len_arr - - ) {
bool swapped = false ;
for ( int i = 0 ; i < len_arr ; i + + ) {
if ( arr_local [ i ] > arr_local [ i + 1 ] ) {
swap ( arr [ i ] , arr [ i + 1 ] ) ;
swap ( arr_local [ i ] , arr_local [ i + 1 ] ) ;
swapped = true ;
}
}
if ( swapped = = false )
break ;
}
}
}
void MainWindow : : flag_block_gui ( ) {
void MainWindow : : flag_block_gui ( ) {
@ -202,14 +197,19 @@ void MainWindow::flag_block_gui() {
if ( flag_load_global = = true ) {
if ( flag_load_global = = true ) {
btnLoadGlob - > set_sensitive ( false ) ;
btnLoadGlob - > set_sensitive ( false ) ;
}
}
if ( flag_save_local = = true & & flag_save_global = = true ) {
btnSave - > set_sensitive ( false ) ;
}
if ( flag_save = = true ) {
if ( flag_save = = true ) {
btnSave - > set_sensitive ( false ) ;
btnSave - > set_sensitive ( false ) ;
}
}
if ( flag_save_local = = true ) {
if ( flag_save_local = = true ) {
btnSaveLocal - > set_sensitive ( false ) ;
btnSaveLocal - > set_sensitive ( false ) ;
btnSaveLocalGlob - > set_sensitive ( false ) ;
}
}
if ( flag_save_global = = true ) {
if ( flag_save_global = = true ) {
btnSaveGlob - > set_sensitive ( false ) ;
btnSaveGlob - > set_sensitive ( false ) ;
btnSaveLocalGlob - > set_sensitive ( false ) ;
}
}
}
}
@ -225,10 +225,12 @@ void MainWindow::add_CSS() {
Glib : : RefPtr < Gtk : : StyleContext > boxButton_css = boxButton - > get_style_context ( ) ;
Glib : : RefPtr < Gtk : : StyleContext > boxButton_css = boxButton - > get_style_context ( ) ;
Glib : : RefPtr < Gtk : : StyleContext > boxSave_css = boxSave - > get_style_context ( ) ;
Glib : : RefPtr < Gtk : : StyleContext > boxSave_css = boxSave - > get_style_context ( ) ;
Glib : : RefPtr < Gtk : : StyleContext > headerBar_css = headerBar - > get_style_context ( ) ;
Glib : : RefPtr < Gtk : : StyleContext > headerBar_css = headerBar - > get_style_context ( ) ;
if ( socket_trd_id_I = = 0 & & socket_ext_id_I = = 0 ) {
boxButton_css - > add_class ( " bkim_no_plug " ) ;
boxSave_css - > add_class ( " bkim_no_plug " ) ;
}
lblHead_css - > add_class ( " textHead " ) ;
lblHead_css - > add_class ( " textHead " ) ;
boxButton_css - > add_class ( " bkimButton " ) ;
boxSave_css - > add_class ( " bkimButton " ) ;
headerBar_css - > add_class ( " bkimHeadBar " ) ;
}
}
@ -266,7 +268,6 @@ void MainWindow::get_builder() {
builder - > get_widget ( " lblSynchronizeBtn " , lblSynchronizeBtn ) ;
builder - > get_widget ( " lblSynchronizeBtn " , lblSynchronizeBtn ) ;
builder - > get_widget ( " lblTimeBios " , lblTimeBios ) ;
builder - > get_widget ( " lblTimeBios " , lblTimeBios ) ;
builder - > get_widget ( " btnHardwareTime " , btnHardwareTime ) ;
builder - > get_widget ( " btnHardwareTime " , btnHardwareTime ) ;
builder - > get_widget ( " windowMessSudo " , windowMessSudo ) ;
builder - > get_widget ( " lblMessageSudo " , lblMessageSudo ) ;
builder - > get_widget ( " lblMessageSudo " , lblMessageSudo ) ;
builder - > get_widget ( " btnMessCloseSudo " , btnMessCloseSudo ) ;
builder - > get_widget ( " btnMessCloseSudo " , btnMessCloseSudo ) ;
builder - > get_widget ( " lblSave " , lblSave ) ;
builder - > get_widget ( " lblSave " , lblSave ) ;
@ -300,17 +301,12 @@ void MainWindow::get_builder() {
builder - > get_widget ( " imgLoad " , imgLoad ) ;
builder - > get_widget ( " imgLoad " , imgLoad ) ;
builder - > get_widget ( " imgSettings " , imgSettings ) ;
builder - > get_widget ( " imgSettings " , imgSettings ) ;
builder - > get_widget ( " imgSave " , imgSave ) ;
builder - > get_widget ( " imgSave " , imgSave ) ;
}
builder - > get_widget ( " boxWidgetFunc " , boxWidgetFunc ) ;
void MainWindow : : gui_exit ( ) {
exit ( 1 ) ;
}
}
bool MainWindow : : gui_exit_2 ( GdkEventAny * event ) {
void MainWindow : : gui_exit ( ) {
if ( event ! = NULL ) {
}
exit ( 1 ) ;
exit ( 1 ) ;
return true ;
}
}
void MainWindow : : event ( ) {
void MainWindow : : event ( ) {
@ -323,7 +319,6 @@ void MainWindow::event() {
cbDhcp - > signal_changed ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : event_entry_cbDhcp ) ) ;
cbDhcp - > signal_changed ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : event_entry_cbDhcp ) ) ;
cbRegion - > signal_changed ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : append_zone ) ) ;
cbRegion - > signal_changed ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : append_zone ) ) ;
cldrDate - > signal_day_selected_double_click ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : get_calendar ) ) ;
cldrDate - > signal_day_selected_double_click ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : get_calendar ) ) ;
windowMessSudo - > signal_delete_event ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : gui_exit_2 ) ) ;
btnAbout - > signal_activate ( ) . connect ( [ & ] ( ) { aboutWindows - > show ( ) ; } ) ;
btnAbout - > signal_activate ( ) . connect ( [ & ] ( ) { aboutWindows - > show ( ) ; } ) ;
btnSynopsis - > signal_activate ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : synopsis_show ) ) ;
btnSynopsis - > signal_activate ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : synopsis_show ) ) ;
btnLoadLocal - > signal_activate ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : load_local_cfg ) ) ;
btnLoadLocal - > signal_activate ( ) . connect ( sigc : : mem_fun ( * this , & MainWindow : : load_local_cfg ) ) ;
@ -335,65 +330,81 @@ void MainWindow::event() {
void MainWindow : : synopsis_show ( ) {
void MainWindow : : synopsis_show ( ) {
int start_error = error_info ;
int start_error = error_info ;
wrapper_system( " xdg-open https://wiki.ublinux.ru/ru/home " , " & " ) ;
string cmd = " xdg-open " + string ( _ ( " https://wiki.ublinux.com/ru/Пр о г р а ммно е _о б е с пе че ние /Пр о г р а ммы_и_у тилиты/В с е / " ) ) + app_name ;
//gtk_show_uri_on_window(NULL, "https://wiki.ublinux.ru/ru/home", 0, 0);
wrapper_system ( cmd , " & " ) ;
if ( start_error ! = error_info ) {
if ( start_error ! = error_info ) {
error_info = start_error ;
error_info = start_error ;
}
}
}
}
void MainWindow : : load_local_cfg ( ) {
void MainWindow : : load_local_cfg ( ) {
string cmd = " /usr/bin/ ubconfig --default --source system get clock ZONE" ;
string cmd = " ubconfig --default --source system get clock ZONE" ;
this - > fill_in_reg_zone ( cmd ) ;
this - > fill_in_reg_zone ( cmd ) ;
this - > update_hour_minute ( ) ;
this - > update_hour_minute ( ) ;
this - > update_calendar ( ) ;
this - > update_calendar ( ) ;
string cmd_get_dhcp = " /usr/bin/ ubconfig --default --source system get network NTPSERVERS" ;
string cmd_get_dhcp = " ubconfig --default --source system get network NTPSERVERS" ;
string cmd_default_get_dhcp = " /usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT" ;
string cmd_default_get_dhcp = " ubconfig --source default get [] NTPSERVERS_DEFAULT" ;
this - > entry_dhcp_mess ( cmd_get_dhcp , cmd_default_get_dhcp ) ;
this - > entry_dhcp_mess ( cmd_get_dhcp , cmd_default_get_dhcp ) ;
string hw = " /usr/bin/ubconfig --default --source system get clock HWCLOCK_SYNC " ;
string hw = " ubconfig --default --source system get clock HWCLOCK_SYNC " ;
this - > entry_hardware_clock ( hw ) ;
this - > get_hardware_clock ( hw ) ;
flag_load = false ;
info_warning_error ( 0 ) ;
info_warning_error ( 0 ) ;
}
}
void MainWindow : : load_globl_cfg ( ) {
void MainWindow : : load_globl_cfg ( ) {
string cmd_get_dhcp = " /usr/bin/ ubconfig --default --source global get network NTPSERVERS" ;
string cmd_get_dhcp = " ubconfig --default --source global get network NTPSERVERS" ;
string cmd_default_get_dhcp = " /usr/bin/ubconfig --source=default get NTPSERVERS_DEFAULT" ;
string cmd_default_get_dhcp = " ubconfig --source default get [] NTPSERVERS_DEFAULT" ;
this - > entry_dhcp_mess ( cmd_get_dhcp , cmd_default_get_dhcp ) ;
this - > entry_dhcp_mess ( cmd_get_dhcp , cmd_default_get_dhcp ) ;
string cmd_zone = " /usr/bin/ ubconfig --default --source global get clock ZONE" ;
string cmd_zone = " ubconfig --default --source global get clock ZONE" ;
this - > fill_in_reg_zone ( cmd_zone ) ;
this - > fill_in_reg_zone ( cmd_zone ) ;
string hw = " /usr/bin/ubconfig --source global get clock HWCLOCK_SYNC " ;
string hw = " ubconfig --source global get clock HWCLOCK_SYNC " ;
this - > entry_hardware_clock ( hw ) ;
this - > get_hardware_clock ( hw ) ;
flag_load = true ;
info_warning_error ( 1 ) ;
info_warning_error ( 1 ) ;
}
}
void MainWindow : : save_local_cfg ( ) {
void MainWindow : : save_local_cfg ( ) {
string cmd_zone = " /usr/bin/ ubconfig --target system set clock ZONE=" ;
string cmd_zone = " ubconfig --target system set clock ZONE=" ;
this - > enter_zone ( cmd_zone ) ;
this - > enter_zone ( cmd_zone ) ;
string cmd_default = " /usr/bin/ ubconfig --target system set network NTPSERVERS=default" ;
string cmd_default = " ubconfig --target system set network NTPSERVERS=default" ;
string cmd_dhcp = " /usr/bin/ ubconfig --target system set network NTPSERVERS=dhcp" ;
string cmd_dhcp = " ubconfig --target system set network NTPSERVERS=dhcp" ;
string cmd_set_ntp = " /usr/bin/ ubconfig --target system set network NTPSERVERS=\" " ;
string cmd_set_ntp = " ubconfig --target system set network NTPSERVERS=\" " ;
string remove_ntp = " /usr/bin/ ubconfig --target system remove network NTPSERVERS" ;
string remove_ntp = " ubconfig --target system remove network NTPSERVERS" ;
this - > save_Dhcp ( cmd_default , cmd_dhcp , remove_ntp , cmd_set_ntp ) ;
this - > save_Dhcp ( cmd_default , cmd_dhcp , remove_ntp , cmd_set_ntp ) ;
string local = " /usr/bin/ ubconfig --target system set clock HWCLOCK_SYNC=localtime" ;
string local = " ubconfig --target system set clock HWCLOCK_SYNC=localtime" ;
string hw = " /usr/bin/ ubconfig --target system set clock HWCLOCK_SYNC=utc" ;
string hw = " ubconfig --target system set clock HWCLOCK_SYNC=utc" ;
this - > en try _hardware_clock( hw ) ;
this - > s et_hardware_clock( local , hw ) ;
info_warning_error ( 2 ) ;
info_warning_error ( 2 ) ;
}
}
void MainWindow : : save_global_cfg ( ) {
void MainWindow : : save_global_cfg ( ) {
string cmd = " /usr/bin/ ubconfig --target global set clock ZONE=" ;
string cmd = " ubconfig --target global set clock ZONE=" ;
this - > enter_zone ( cmd ) ;
this - > enter_zone ( cmd ) ;
string cmd_default = " /usr/bin/ ubconfig --target global set network NTPSERVERS=default" ;
string cmd_default = " ubconfig --target global set network NTPSERVERS=default" ;
string cmd_dhcp = " /usr/bin/ ubconfig --target global set network NTPSERVERS=dhcp" ;
string cmd_dhcp = " ubconfig --target global set network NTPSERVERS=dhcp" ;
string cmd_set_ntp = " /usr/bin/ ubconfig --target global set network NTPSERVERS=\" " ;
string cmd_set_ntp = " ubconfig --target global set network NTPSERVERS=\" " ;
string remove_ntp = " /usr/bin/ ubconfig --target global remove network NTPSERVERS" ;
string remove_ntp = " ubconfig --target global remove network NTPSERVERS" ;
this - > save_Dhcp ( cmd_default , cmd_dhcp , remove_ntp , cmd_set_ntp ) ;
this - > save_Dhcp ( cmd_default , cmd_dhcp , remove_ntp , cmd_set_ntp ) ;
string local = " /usr/bin/ ubconfig --target global set clock HWCLOCK_SYNC=localtime" ;
string local = " ubconfig --target global set clock HWCLOCK_SYNC=localtime" ;
string hw = " /usr/bin/ ubconfig --target global set clock HWCLOCK_SYNC=utc" ;
string hw = " ubconfig --target global set clock HWCLOCK_SYNC=utc" ;
this - > hardware_clock_global ( local , hw ) ;
this - > set_ hardware_clock( local , hw ) ;
info_warning_error ( 3 ) ;
info_warning_error ( 3 ) ;
}
}
string MainWindow : : get_ubconfig_value ( string & cmd ) {
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
if ( obj_result . error = = 0 ) {
return obj_result . response ;
}
else {
if ( obj_result . error ! = 0 ) {
warning_info - = 1 ;
}
return " " ;
}
}
void MainWindow : : save_global_local_cfg ( ) {
void MainWindow : : save_global_local_cfg ( ) {
string cmd = " " ;
string cmd = " " ;
string cmd_default = " " ;
string cmd_default = " " ;
@ -485,25 +496,40 @@ void MainWindow::log_mess_error(string &cmd){
}
}
}
}
void MainWindow : : hardware_clock_global ( string & local , string & etc ) {
void MainWindow : : set_hardware_clock ( string & local , string & etc ) {
int index = cbHw - > get_active_row_number ( ) ;
string str_hw = cbHw - > get_active_text ( ) ;
if ( index = = 0 ) {
for ( int index = 0 ; index < 2 ; index + + ) {
wrapper_system ( local , " & " ) ;
if ( array_hw_local [ index ] = = str_hw ) {
}
if ( array_hw [ index ] = = " utc " ) {
else if ( index = = 1 ) {
wrapper_system ( etc , " & " ) ;
wrapper_system ( etc , " & " ) ;
}
else {
wrapper_system ( local , " & " ) ;
}
}
}
}
}
}
void MainWindow : : entry_hardware_clock ( string & cmd ) {
void MainWindow : : g et_hardware_clock( string & cmd ) {
int error = warning_info ;
int error = warning_info ;
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
if ( obj_result . error = = 0 ) {
if ( obj_result . error = = 0 ) {
if ( obj_result . response . find ( " localtime " ) ! = string : : npos ) {
if ( obj_result . response . find ( " localtime " ) ! = string : : npos ) {
cbHw - > set_active ( 0 ) ;
if ( array_hw [ 0 ] = = " localtime " ) {
cbHw - > set_active ( 0 ) ;
}
else {
cbHw - > set_active ( 1 ) ;
}
}
}
else if ( obj_result . response . find ( " utc " ) ! = string : : npos ) {
else if ( obj_result . response . find ( " utc " ) ! = string : : npos ) {
cbHw - > set_active ( 1 ) ;
if ( array_hw [ 0 ] = = " utc " ) {
cbHw - > set_active ( 0 ) ;
}
else {
cbHw - > set_active ( 1 ) ;
}
}
}
else {
else {
cbHw - > set_active ( - 1 ) ;
cbHw - > set_active ( - 1 ) ;
@ -682,24 +708,36 @@ void MainWindow::event_entry_cbDhcp() {
cbDhcp - > set_active ( 0 ) ;
cbDhcp - > set_active ( 0 ) ;
}
}
else if ( activ_index = = 0 ) {
else if ( activ_index = = 0 ) {
txtNtpServer - > set_text ( " " ) ;
txtNtpServer - > set_text ( default_get_dhcp ) ;
btnUpdateDateTime - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
}
}
else if ( activ_index = = 1 ) {
else if ( activ_index = = 1 ) {
btnUpdateDateTime - > set_sensitive ( false ) ;
// btnUpdateDateTime->set_sensitive(false);
txtNtpServer - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
txtNtpServer - > set_text ( " " ) ;
txtNtpServer - > set_text ( " " ) ;
}
}
else if ( activ_index = = 2 ) {
else if ( activ_index = = 2 ) {
txtNtpServer - > set_text ( " " ) ;
if ( flag_ntp_edit = = false ) {
if ( flag_ntp_edit = = false ) {
string cmd = " " ;
if ( flag_load = = false ) {
cmd = " ubconfig --default --source system get network NTPSERVERS " ;
}
else {
cmd = " ubconfig --default --source global get network NTPSERVERS " ;
}
string response = this - > get_ubconfig_value ( cmd ) ;
if ( response ! = " dhcp " & & response ! = " default " ) {
txtNtpServer - > set_text ( response ) ;
}
txtNtpServer - > set_sensitive ( true ) ;
txtNtpServer - > set_sensitive ( true ) ;
}
}
}
}
else if ( activ_index = = 3 ) {
else if ( activ_index = = 3 ) {
txtNtpServer - > set_text ( " " ) ;
txtNtpServer - > set_text ( " " ) ;
txtNtpServer - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
btnUpdateDateTime - > set_sensitive ( true ) ;
// btnUpdateDateTime->set_sensitive(true);
}
}
}
}
@ -731,7 +769,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
if ( obj_result . error = = 0 ) {
if ( obj_result . error = = 0 ) {
string str_dhcp = obj_result . response ;
string str_dhcp = obj_result . response ;
btnUpdateDateTime - > set_sensitive ( false ) ;
// btnUpdateDateTime->set_sensitive(false);
str_dhcp = str_dhcp . substr ( str_dhcp . find ( " = " ) + 1 , str_dhcp . length ( ) ) ;
str_dhcp = str_dhcp . substr ( str_dhcp . find ( " = " ) + 1 , str_dhcp . length ( ) ) ;
str_dhcp = str_dhcp . substr ( 0 , str_dhcp . find ( " \n " ) ) ;
str_dhcp = str_dhcp . substr ( 0 , str_dhcp . find ( " \n " ) ) ;
if ( str_dhcp = = " dhcp " ) {
if ( str_dhcp = = " dhcp " ) {
@ -740,7 +778,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc
txtNtpServer - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
}
}
else if ( str_dhcp = = " default " ) {
else if ( str_dhcp = = " default " ) {
btnUpdateDateTime - > set_sensitive ( false ) ;
// btnUpdateDateTime->set_sensitive(false);
cbDhcp - > set_active ( 0 ) ;
cbDhcp - > set_active ( 0 ) ;
cmd = cmd_default_get_dhcp ;
cmd = cmd_default_get_dhcp ;
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
struct Result < string > obj_result = this - > wrapper_call ( cmd ) ;
@ -755,7 +793,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc
}
}
}
}
else {
else {
btnUpdateDateTime - > set_sensitive ( false ) ;
// btnUpdateDateTime->set_sensitive(false);
if ( str_dhcp = = " " ) {
if ( str_dhcp = = " " ) {
lblMessage - > set_text ( _ ( " Enter DHCP! " ) ) ;
lblMessage - > set_text ( _ ( " Enter DHCP! " ) ) ;
windowMessDchp - > show ( ) ;
windowMessDchp - > show ( ) ;
@ -777,7 +815,7 @@ void MainWindow::entry_dhcp_mess(string cmd_get_dhcp, string cmd_default_get_dhc
cbDhcp - > set_active ( 3 ) ;
cbDhcp - > set_active ( 3 ) ;
txtNtpServer - > set_text ( " " ) ;
txtNtpServer - > set_text ( " " ) ;
txtNtpServer - > set_sensitive ( false ) ;
txtNtpServer - > set_sensitive ( false ) ;
btnUpdateDateTime - > set_sensitive ( true ) ;
// btnUpdateDateTime->set_sensitive(true);
warning_info - = 1 ;
warning_info - = 1 ;
}
}
}
}
@ -1056,7 +1094,7 @@ void MainWindow::update_time_date() {
string str_data_entry = txtDate - > get_text ( ) ;
string str_data_entry = txtDate - > get_text ( ) ;
if ( str_data = = str_data_entry ) {
if ( str_data = = str_data_entry ) {
cmd = " date +%Y%m%d -s \" " + to_string ( year ) +
cmd = " date +%Y%m%d -s \" " + to_string ( year ) +
str_month + str_day + " \" " ;
str_month + str_day + " \" " ;
wrapper_system ( cmd ) ;
wrapper_system ( cmd ) ;
txtDate - > set_text ( str_data ) ;
txtDate - > set_text ( str_data ) ;
year = 0 ;
year = 0 ;
@ -1296,11 +1334,23 @@ SettingsPlug::SettingsPlug(::Window p_socketID, Glib::RefPtr<Gtk::Builder> build
}
}
void help ( ) {
void help ( ) {
g_print ( gettext ( " Usage: ubl-settings-datetime [--lock-timezone] [--lock-ntp] [--lock-datetime] [--lock-update] \n " ) ) ;
string version = string ( gettext ( " ubl-settings-datetime version: " ) ) + version_application + " \n " ;
g_print ( gettext ( " Options: \n " ) ) ;
cout < < version . c_str ( ) ;
g_print ( gettext ( " --lock-timezone Disable timezone field editing \n " ) ) ;
string help ;
g_print ( gettext ( " --lock-ntp Disable ntp field editing \n " ) ) ;
help = " GTK settings datetime for UBLinux \n \n "
g_print ( gettext ( " --lock-datetime Disable datetime field editing \n " ) ) ;
" Usage: ubl-settings-datetime [OPTIONS...] \n "
g_print ( gettext ( " --lock-update Disable save changes \n " ) ) ;
" Options: \n "
" -h, --help Show this help \n "
" -V, --version Show package version \n "
" --lock-datetime Lock date and time changes \n "
" --lock-timezone Lock time zone changes \n "
" --lock-ntp-mode Lock NTP mode selection \n "
" --lock-ntp-edit Lock editing NTP servers \n "
" --lock-save Lock saving local and global configuration \n "
" --lock-save-local Lock save global configuration \n "
" --lock-save-global Lock load global configuration \n "
" --lock-load-global Blocking the global configuration download \n " ;
cout < < gettext ( help . c_str ( ) ) ;
}
}