source: export-web-sites/trunk/fuentes/export-web-sites-gui.install/usr/share/export-web-sites/N4dManager.py @ 7894

Last change on this file since 7894 was 7894, checked in by hectorgh, 16 months ago

removing debug

File size: 6.1 KB
Line 
1import xmlrpc.client
2import ssl
3import threading
4import time
5
6
7class N4dManager:
8       
9        moodle="moodle"
10        jclic="jclic"
11        pmb="pmb"
12       
13        def __init__(self,server=None):
14               
15                self.debug=False
16               
17                self.user_validated=False
18                self.client=None
19                self.user_val=()
20                self.validation=None
21
22                if server!=None:
23                        self.set_server(server)
24               
25        #def init
26       
27        def lprint(self,validation,arg):
28               
29                self.client.lprint(validation,"ExportWebServices", arg)
30               
31        #def_lprint
32       
33        def mprint(self,msg):
34               
35                if self.debug:
36                        print("[ExportWebServicesN4DManager] %s"%str(msg))
37                       
38        #def mprint
39               
40       
41        def set_server(self,server):
42               
43                context=ssl._create_unverified_context()       
44                self.client=xmlrpc.client.ServerProxy("https://%s:9779"%server,allow_none=True,context=context)
45                self.mprint("Proxy: %s"%self.client)
46               
47        #def set_server
48       
49       
50        def validate_user(self,user,password):
51               
52                ret=self.client.validate_user(user,password)
53                self.user_validated,self.user_groups=ret
54                       
55               
56                if self.user_validated:
57                        self.user_val=(user,password)
58               
59                return [self.user_validated, self.user_val]
60               
61        #def validate_user
62       
63        def export_web_sites(self,validation,web_site):
64                               
65                resolve=[]
66               
67                try:
68                        context=ssl._create_unverified_context()
69                        tmp=xmlrpc.client.ServerProxy("https://server:9779",allow_none=True,context=context)
70                        self.mprint("From N4D Manager calling to server to export %s"%web_site)
71                        if (  web_site == self.moodle ):
72                                resolve=tmp.export_moodle(validation,"ExportWebSites")
73                                if (  resolve == "USER DOES NOT EXIST" ):
74                                        return[False,"YOUR USER[%s] CAN'T MAKE THIS CHANGES IN THE SERVER"%validation[0]]
75                                if resolve[0]:
76                                        return[True,resolve]
77                                else:
78                                        return[False]
79                                       
80                        elif(  web_site == self.jclic ):
81                                resolve=tmp.export_jclic(validation,"ExportWebSites")
82                                if (  resolve == "USER DOES NOT EXIST" ):
83                                        return[False,"YOUR USER[%s] CAN'T MAKE THIS CHANGES IN THE SERVER"%validation[0]]
84                                #self.mprint(resolve)
85                                if resolve[0]:
86                                        return[True,resolve]
87                                else:
88                                        return[False]
89                                       
90                        elif(  web_site == self.pmb ):
91                                resolve=tmp.export_pmb(validation,"ExportWebSites")
92                                if (  resolve == "USER DOES NOT EXIST" ):
93                                        return[False,"YOUR USER[%s] CAN'T MAKE THIS CHANGES IN THE SERVER"%validation[0]]
94                                #self.mprint(resolve)
95                                if resolve[0]:
96                                        return[True,resolve]
97                                else:
98                                        return[False]
99       
100                except Exception as e:
101                        print ("[ExportWebServicesN4DManager] ERROR: %s"%e)
102                        self.lprint (validation,"[ExportWebServicesN4DManager] %s"%e)
103                        return [False,str(e)]   
104               
105        #def export_web_sites
106       
107        def un_export_web_sites(self,validation,web_site):
108                               
109                resolve=[]
110               
111                try:
112                        context=ssl._create_unverified_context()
113                        tmp=xmlrpc.client.ServerProxy("https://server:9779",allow_none=True,context=context)
114                        self.mprint("From N4D Manager calling to server to cancel the exportation %s"%web_site)
115                        if (  web_site == self.moodle ):
116                                resolve=tmp.un_export_moodle(validation,"ExportWebSites")
117                                if (  resolve == "USER DOES NOT EXIST" ):
118                                        return[False,"YOUR USER[%s] CAN'T MAKE THIS CHANGES IN THE SERVER"%validation[0]]
119                                if resolve[0]:
120                                        return[True,resolve]
121                                else:
122                                        return[False]
123                                       
124                        elif(  web_site == self.jclic ):
125                                resolve=tmp.un_export_jclic(validation,"ExportWebSites")
126                                #self.mprint(resolve)
127                                if (  resolve == "USER DOES NOT EXIST" ):
128                                        return[False,"YOUR USER[%s] CAN'T MAKE THIS CHANGES IN THE SERVER"%validation[0]]
129                                if resolve[0]:
130                                        return[True,resolve]
131                                else:
132                                        return[False]
133                                       
134                        elif(  web_site == self.pmb ):
135                                resolve=tmp.un_export_pmb(validation,"ExportWebSites")
136                                #self.mprint(resolve)
137                                if (  resolve == "USER DOES NOT EXIST" ):
138                                        return[False,"YOUR USER[%s] CAN'T MAKE THIS CHANGES IN THE SERVER"%validation[0]]
139                                if resolve[0]:
140                                        return[True,resolve]
141                                else:
142                                        return[False]
143       
144                except Exception as e:
145                        print ("[ExportWebServicesN4DManager] ERROR: %s"%e)
146                        self.lprint (validation,"[ExportWebServicesN4DManager] %s"%e)
147                        return [False,str(e)]   
148               
149        #def un_export_web_sites
150       
151        def read_export_sites(self,validation,web_sites):
152               
153                try:
154                        context=ssl._create_unverified_context()
155                        tmp=xmlrpc.client.ServerProxy("https://server:9779",allow_none=True,context=context)
156                        self.mprint("Reading inital state in server....")
157                        resolve=tmp.read_export_sites(validation,"ExportWebSites",web_sites)
158                        self.mprint("Solved: %s"%resolve)
159                        if resolve[0]:
160                                return[True,resolve[1]]
161                        else:
162                                return[False,resolve[1]]
163       
164                except Exception as e:
165                        print ("[ExportWebServicesN4DManager] ERROR: %s"%e)
166                        self.lprint (validation,"[ExportWebServicesN4DManager] %s"%e)
167                        return [False,str(e)]   
168               
169        #def read_export_sites
170       
171       
172        def export_active(self,validation):
173               
174                try:
175                        context=ssl._create_unverified_context()
176                        tmp=xmlrpc.client.ServerProxy("https://server:9779",allow_none=True,context=context)
177                        self.mprint("Does Server have mod-enabled to export sites?")
178                        resolve=tmp.export_active(validation,"ExportWebSites")
179                        return[resolve]
180       
181                except Exception as e:
182                        print ("[ExportWebServicesN4DManager] ERROR: %s"%e)
183                        self.lprint (validation,"[ExportWebServicesN4DManager] %s"%e)
184                        return [False,str(e)]   
185               
186        #def export_active
187       
188        def apache2_restart(self,validation):
189               
190                try:
191                        context=ssl._create_unverified_context()
192                        tmp=xmlrpc.client.ServerProxy("https://server:9779",allow_none=True,context=context)
193                        self.mprint("Restarting Apache 2 service")
194                        resolve=tmp.apache2_restart(validation,"ExportWebSites")
195                        self.mprint(resolve)
196                        return resolve
197       
198                except Exception as e:
199                        print ("[ExportWebServicesN4DManager] ERROR: %s"%e)
200                        self.lprint (validation,"[ExportWebServicesN4DManager] %s"%e)
201                        return [False,str(e)]   
202               
203        #def apache2_restart
204       
205        def sites_configuration(self,validation):
206               
207                try:
208                        context=ssl._create_unverified_context()
209                        tmp=xmlrpc.client.ServerProxy("https://server:9779",allow_none=True,context=context)
210                        self.mprint("Restarting Apache 2 service")
211                        resolve=tmp.sites_configuration(validation,"ExportWebSites")
212                        self.mprint(resolve)
213                        return resolve
214       
215                except Exception as e:
216                        print ("[ExportWebServicesN4DManager] ERROR: %s"%e)
217                        self.lprint (validation,"[ExportWebServicesN4DManager] %s"%e)
218                        return [False,str(e)]   
219               
220        #def sites_configuration
221       
Note: See TracBrowser for help on using the repository browser.