Advertisement
Guest User

Untitled

a guest
Sep 20th, 2019
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.67 KB | None | 0 0
  1. import kivy
  2. import smtplib
  3. from kivy.app import App
  4. from kivy.uix.label import Label
  5. from kivy.uix.textinput import TextInput
  6. from kivy.uix.button import Button
  7. from kivy.uix.gridlayout import GridLayout
  8. from kivy.uix.screenmanager import ScreenManager, Screen
  9. import os
  10. kivy.require('1.11.1')
  11. class login_page(GridLayout):
  12.     def __init__(self, prev_e_mail1, prev_pass_word1, **kwargs):
  13.         super(login_page, self).__init__(**kwargs)
  14.         self.rows = 5
  15.         if os.path.isfile("login_details.txt"):
  16.             with open("login_details.txt","r") as f:
  17.                 d = f.read().split(",")
  18.                 prev_e_mail1 = d[0]
  19.                 prev_pass_word1 = d[0]
  20.         else:
  21.             prev_e_mail1 = ""
  22.             prev_pass_word1 = ""
  23.         self.e_mail1 = TextInput(text=prev_e_mail1, font_size=30)
  24.         self.pass_word1 = TextInput(text=prev_pass_word1, font_size=30)
  25.         self.add_widget(Label(text="Email", font_size=30))
  26.         self.add_widget(self.e_mail1)
  27.  
  28.         self.add_widget(Label(text="Password", font_size=30))
  29.         self.add_widget(self.pass_word1)
  30.  
  31.         self.login = Button(text="Login", font_size=30)
  32.         self.login.bind(on_press=self.login_button)
  33.         self.add_widget(self.login)
  34.     def login_button(self, instance):
  35.         with open("login_details.txt","w") as f:
  36.             f.write(f"{outermail},{outerpass}")
  37.         plannerapp.sm.current = "planner_page"
  38. outermail = login_page().prev_e_mail1
  39. outerpass = login_page().prev_pass_word1
  40.  
  41. class PlannerPage(GridLayout):
  42.     def __init__(self, **kwargs):
  43.         super(PlannerPage, self).__init__(**kwargs)
  44.         self.cols = 2
  45.         if os.path.isfile("plannerdaily.txt"):
  46.             with open("plannerdaily.txt") as f:
  47.                 d = f.read().split(",")
  48.                 prev_LA = d[0]
  49.                 prev_Geometry = d[1]
  50.                 prev_Physics = d[2]
  51.                 prev_History = d[3]
  52.         else:
  53.             prev_LA = ""
  54.             prev_Geometry = ""
  55.             prev_Physics = ""
  56.             prev_History = ""
  57.         #Language Arts
  58.         self.add_widget(Label(text="LA:", font_size=30))
  59.         self.LA = TextInput(text=prev_LA, multiline=True, font_size=20)
  60.         self.add_widget(self.LA)
  61.         #Geometry
  62.         self.add_widget(Label(text="Geometry:", font_size=30))
  63.         self.Geometry = TextInput(text=prev_Geometry, multiline=True, font_size=20)
  64.         self.add_widget(self.Geometry)
  65.         #Physics
  66.         self.add_widget(Label(text="Physics:", font_size=30))
  67.         self.Physics = TextInput(text=prev_Physics, multiline=True, font_size=20)
  68.         self.add_widget(self.Physics)
  69.         #History
  70.         self.add_widget(Label(text="History:", font_size=30))
  71.         self.History = TextInput(text=prev_History, multiline=True, font_size=20)
  72.         self.add_widget(self.History)
  73.         #Record button
  74.         self.record = Button(text="Record", font_size=30)
  75.         self.record.bind(on_press=self.record_button)
  76.         self.save = Button(text="Save", font_size=30)
  77.         self.save.bind(on_press=self.save_button)
  78.         self.add_widget(self.save)
  79.         self.add_widget(self.record)
  80.     def record_button(self, instance):
  81.         with smtplib.SMTP('smtp.gmail.com', 587) as smtp:
  82.             la = self.LA.text
  83.             geometry = self.Geometry.text
  84.             physics = self.Physics.text
  85.             history = self.History.text
  86.             smtp.ehlo()
  87.             smtp.starttls()
  88.             smtp.ehlo()
  89.             smtp.login(outermail, outerpass)
  90.             subject = 'Homework sent from plannerapp'
  91.             body = f"""
  92.            PLANNER APP
  93.            --|--|--|--|--|--|--|--|--|--|--|--|--
  94.            -- Language arts: {la}
  95.            ~~~
  96.            -- Geometry: {geometry}
  97.            ~~~
  98.            -- Physics: {physics}
  99.            ~~~
  100.            -- History: {history}
  101.            --|--|--|--|--|--|--|--|--|--|--|--|--
  102.            """
  103.             msg = f'Subject: {subject}\n\n{body}'
  104.             smtp.sendmail(outermail, outermail, msg)
  105.     def save_button(self, instance):
  106.         la = self.LA.text
  107.         geometry = self.Geometry.text
  108.         physics = self.Physics.text
  109.         history = self.History.text
  110.         with open("plannerdaily.txt","w") as f:
  111.             f.write(f"{la},{geometry},{physics},{history}")
  112. class PlannerApp(App):
  113.     def build(self):
  114.         self.sm = ScreenManager()
  115.  
  116.         self.login_page = login_page()
  117.         screen = Screen(name="login_pg")
  118.         screen.add_widget(self.login_page)
  119.         self.sm.add_widget(screen)
  120.  
  121.         self.planner_page = PlannerPage()
  122.         screen = Screen(name="planner_page")
  123.         screen.add_widget(self.planner_page)
  124.         self.sm.add_widget(screen)
  125.  
  126.         return self.sm
  127. if __name__ == '__main__':
  128.     PlannerApp().run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement