@@ -64,7 +64,9 @@ def gDrive(self, request = None, userID = None, data = None):
6464 for items in gDriveAccts :
6565 gDriveAcctsList .append (items .name )
6666
67- return render (request , 'backup/googleDrive.html' , {'accounts' : gDriveAcctsList })
67+ websitesName = ACLManager .findAllSites (currentACL , userID )
68+
69+ return render (request , 'backup/googleDrive.html' , {'accounts' : gDriveAcctsList , 'websites' : websitesName })
6870 except BaseException as msg :
6971 return HttpResponse (str (msg ))
7072
@@ -88,13 +90,172 @@ def gDriveSetup(self, userID = None, request = None):
8890 gD = GDrive (owner = admin , name = gDriveData ['name' ],auth = json .dumps (gDriveData ))
8991 gD .save ()
9092
93+
9194 final_json = json .dumps ({'status' : 1 , 'message' : 'Successfully saved.' })
9295 return HttpResponse (final_json )
9396 except BaseException as msg :
9497 final_dic = {'status' : 0 , 'fetchStatus' : 0 , 'error_message' : str (msg )}
9598 final_json = json .dumps (final_dic )
9699 return HttpResponse (final_json )
97100
101+ def fetchgDriveSites (self , request = None , userID = None , data = None ):
102+ try :
103+
104+ userID = request .session ['userID' ]
105+ currentACL = ACLManager .loadedACL (userID )
106+ admin = Administrator .objects .get (pk = userID )
107+
108+ data = json .loads (request .body )
109+
110+ selectedAccount = data ['selectedAccount' ]
111+ recordsToShow = int (data ['recordsToShow' ])
112+ page = int (str (data ['page' ]).strip ('\n ' ))
113+
114+ gD = GDrive .objects .get (name = selectedAccount )
115+
116+ websites = gD .gdrivesites_set .all ()
117+
118+ from s3Backups .s3Backups import S3Backups
119+
120+ pagination = S3Backups .getPagination (len (websites ), recordsToShow )
121+ endPageNumber , finalPageNumber = S3Backups .recordsPointer (page , recordsToShow )
122+ finalWebsites = websites [finalPageNumber :endPageNumber ]
123+
124+ json_data = "["
125+ checker = 0
126+ counter = 0
127+
128+ from plogical .backupSchedule import backupSchedule
129+
130+ for website in finalWebsites :
131+
132+ dic = {
133+ 'name' : website .domain
134+ }
135+
136+ if checker == 0 :
137+ json_data = json_data + json .dumps (dic )
138+ checker = 1
139+ else :
140+ json_data = json_data + ',' + json .dumps (dic )
141+
142+ counter = counter + 1
143+
144+ json_data = json_data + ']'
145+
146+ currently = gD .runTime
147+
148+ data_ret = {'status' : 1 , 'websites' : json_data , 'pagination' : pagination , 'currently' : currently }
149+ json_data = json .dumps (data_ret )
150+ return HttpResponse (json_data )
151+
152+
153+ except BaseException as msg :
154+ data_ret = {'status' : 0 , 'error_message' : str (msg )}
155+ json_data = json .dumps (data_ret )
156+ return HttpResponse (json_data )
157+
158+ def addSitegDrive (self , request = None , userID = None , data = None ):
159+ try :
160+
161+ userID = request .session ['userID' ]
162+ currentACL = ACLManager .loadedACL (userID )
163+ admin = Administrator .objects .get (pk = userID )
164+
165+ data = json .loads (request .body )
166+
167+ selectedAccount = data ['selectedAccount' ]
168+ selectedWebsite = data ['selectedWebsite' ]
169+
170+ gD = GDrive .objects .get (name = selectedAccount )
171+
172+ gdSite = GDriveSites (owner = gD , domain = selectedWebsite )
173+ gdSite .save ()
174+
175+ data_ret = {'status' : 1 }
176+ json_data = json .dumps (data_ret )
177+ return HttpResponse (json_data )
178+
179+ except BaseException as msg :
180+ data_ret = {'status' : 0 , 'error_message' : str (msg )}
181+ json_data = json .dumps (data_ret )
182+ return HttpResponse (json_data )
183+
184+ def deleteAccountgDrive (self , request = None , userID = None , data = None ):
185+ try :
186+
187+ userID = request .session ['userID' ]
188+ currentACL = ACLManager .loadedACL (userID )
189+ admin = Administrator .objects .get (pk = userID )
190+
191+ data = json .loads (request .body )
192+
193+ selectedAccount = data ['selectedAccount' ]
194+
195+ gD = GDrive .objects .get (name = selectedAccount )
196+
197+ gD .delete ()
198+
199+ data_ret = {'status' : 1 }
200+ json_data = json .dumps (data_ret )
201+ return HttpResponse (json_data )
202+
203+ except BaseException as msg :
204+ data_ret = {'status' : 0 , 'error_message' : str (msg )}
205+ json_data = json .dumps (data_ret )
206+ return HttpResponse (json_data )
207+
208+ def changeAccountFrequencygDrive (self , request = None , userID = None , data = None ):
209+ try :
210+
211+ userID = request .session ['userID' ]
212+ currentACL = ACLManager .loadedACL (userID )
213+ admin = Administrator .objects .get (pk = userID )
214+
215+ data = json .loads (request .body )
216+
217+ selectedAccount = data ['selectedAccount' ]
218+ backupFrequency = data ['backupFrequency' ]
219+
220+ gD = GDrive .objects .get (name = selectedAccount )
221+ gD .runTime = backupFrequency
222+
223+ gD .save ()
224+
225+ data_ret = {'status' : 1 }
226+ json_data = json .dumps (data_ret )
227+ return HttpResponse (json_data )
228+
229+ except BaseException as msg :
230+ data_ret = {'status' : 0 , 'error_message' : str (msg )}
231+ json_data = json .dumps (data_ret )
232+ return HttpResponse (json_data )
233+
234+ def deleteSitegDrive (self , request = None , userID = None , data = None ):
235+ try :
236+
237+ userID = request .session ['userID' ]
238+ currentACL = ACLManager .loadedACL (userID )
239+ admin = Administrator .objects .get (pk = userID )
240+
241+ data = json .loads (request .body )
242+
243+ selectedAccount = data ['selectedAccount' ]
244+ website = data ['website' ]
245+
246+ gD = GDrive .objects .get (name = selectedAccount )
247+ gDSite = GDriveSites .objects .get (owner = gD , domain = website )
248+ gDSite .delete ()
249+
250+ data_ret = {'status' : 1 }
251+ json_data = json .dumps (data_ret )
252+ return HttpResponse (json_data )
253+
254+ except BaseException as msg :
255+ data_ret = {'status' : 0 , 'error_message' : str (msg )}
256+ json_data = json .dumps (data_ret )
257+ return HttpResponse (json_data )
258+
98259 def restoreSite (self , request = None , userID = None , data = None ):
99260 try :
100261 currentACL = ACLManager .loadedACL (userID )
0 commit comments