src/eric7/EricNetwork/EricGoogleMailHelpers.py

Sun, 18 Dec 2022 19:33:46 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 18 Dec 2022 19:33:46 +0100
branch
eric7
changeset 9624
b47dfa7a137d
parent 9427
905e7af29101
child 9653
e67609152c5e
permissions
-rw-r--r--

Refactored the Utilities and Globals modules in order to enhance the maintainability.

6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
8881
54e42bc2437a Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8354
diff changeset
3 # Copyright (c) 2019 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing some helpers for Google mail.
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 import os
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
12 from eric7 import Globals
9427
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
13 from eric7.EricWidgets.EricApplication import ericApp
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9427
diff changeset
14 from eric7.SystemUtilities import PythonUtilities
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
9427
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
16 SCOPES = ["https://www.googleapis.com/auth/gmail.send"]
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
17 CLIENT_SECRET_FILE = "eric_client_secret.json" # secok
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
18 TOKEN_FILE = "eric_python_email_send_token.json" # secok
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
19 APPLICATION_NAME = "Eric Python Send Email"
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 RequiredPackages = (
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 "google-api-python-client",
9427
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
23 "google-auth-httplib2",
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
24 "google-auth-oauthlib",
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 )
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 def isClientSecretFileAvailable():
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 """
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 Module function to check, if the client secret file has been installed.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
31
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 @return flag indicating, that the credentials file is there
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 @rtype bool
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
35 return os.path.exists(os.path.join(Globals.getConfigDir(), CLIENT_SECRET_FILE))
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37
9427
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
38 def installGoogleAPIPackages():
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 """
9427
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
40 Module function to install the required packages to support Google mail.
6829
3a6133fe99a8 Google Mail: added the forgotten files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 """
9427
905e7af29101 Gmail Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
42 pip = ericApp().getObject("Pip")
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9427
diff changeset
43 pip.installPackages(
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9427
diff changeset
44 RequiredPackages, interpreter=PythonUtilities.getPythonExecutable()
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9427
diff changeset
45 )

eric ide

mercurial