From fe8f56c8348ad9792bf81078bfd22cf0aab7d2f9 Mon Sep 17 00:00:00 2001
From: Guilherme Becker Agge <gba17@inf.ufpr.br>
Date: Fri, 29 Jun 2018 11:43:04 -0300
Subject: [PATCH] SCRUM#535: Get update time from cron

---
 package/le-control-panel       | 20 +++++++++++++++++---
 package/le-control-panel.glade |  2 ++
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/package/le-control-panel b/package/le-control-panel
index dab7907..4ba9254 100755
--- a/package/le-control-panel
+++ b/package/le-control-panel
@@ -44,8 +44,6 @@ source_id = 0
 # when the user interacts with the GUI components
 class Handler:
     error_mode = False
-    cron_hour = 6
-    cron_min = 25
 
     def createErrorMessage(self, switch=None, parent=None, message="Erro"):
         # Creates a generic error message window
@@ -659,6 +657,18 @@ def configureMultiterminal():
         widget_to_hide.hide()
 
 
+def getUpdateTime():
+    # Gets the auto upgrade time from cron
+    with open("/etc/crontab", "r") as f:
+        for line in f:
+            if "daily" in line:
+                aux = line.split()
+                cron_min = int(aux[0])
+                cron_hour = int(aux[1])
+    SpinHour.set_value(cron_hour)
+    SpinMin.set_value(cron_min)
+
+
 if __name__ == "__main__":
     try:
         builder.add_from_file(
@@ -702,6 +712,9 @@ if __name__ == "__main__":
     switchUpdate = builder.get_object("switchAutoUpdate")
     switchStandby = builder.get_object("switchStandby")
 
+    SpinHour = builder.get_object("incrementa_hora")
+    SpinMin = builder.get_object("incrementa_minuto")
+
     uid = os.getuid()
     setPermissions(uid)
 
@@ -714,6 +727,8 @@ if __name__ == "__main__":
 
     configureMultiterminal()
 
+    getUpdateTime()
+
     if uid == 0:  # super user
         switchShieldLocal.set_active(getShieldLocalState())
         switchShieldNetwork.set_active(getShieldNetworkState())
@@ -732,4 +747,3 @@ if __name__ == "__main__":
         switchStandby.set_active(False)
 
     Gtk.main()
-
diff --git a/package/le-control-panel.glade b/package/le-control-panel.glade
index 86497dd..4256dcb 100644
--- a/package/le-control-panel.glade
+++ b/package/le-control-panel.glade
@@ -417,6 +417,7 @@
                                   <object class="GtkSpinButton" id="incrementa_hora">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="max_width_chars">2</property>
                                     <property name="text" translatable="yes">0</property>
                                     <property name="input_purpose">number</property>
                                     <property name="orientation">vertical</property>
@@ -452,6 +453,7 @@
                                   <object class="GtkSpinButton" id="incrementa_minuto">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
+                                    <property name="max_width_chars">2</property>
                                     <property name="text" translatable="yes">43</property>
                                     <property name="input_purpose">number</property>
                                     <property name="orientation">vertical</property>
-- 
GitLab