def updateProfile(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Update the user profile. Take care while changing passwords""" if request.is_ajax(): try: data = { 'name': request.POST.get('name'), 'roll': request.POST.get('roll'), 'email': request.POST.get('email'), 'tel': request.POST.get('tel'), 'dob': request.POST.get('dob'), 'skill': request.POST.get('skill'), 'picture': request.POST.get('picture') } pass1 = request.POST.get('pass1') pass2 = request.POST.get('pass2') outputResponse = validate(pass1, pass2, def_username) if outputResponse != "OK": return HttpResponseServerError(content=b'%s' % outputResponse) else: outputResponse = 'Profile updated successfully' # if user is validated, save the config file print 'User validated now' userDir = filexp.FileExplorer(def_username, def_pass, def_host) userDir.saveUserConfig(data) userDir.close() return HttpResponse(outputResponse) except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)
def saveFile(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Save file as requested by the user to his location""" if request.is_ajax(): code = request.POST.get('sourceCode', '') lang = request.POST.get('sourceLang', '') path_to_save = request.POST.get('remotePath', '') file_name = request.POST.get('sourceName', '').split('.')[0] if lang == "": file_name = '%s' % (file_name) else: file_name = '%s.%s' % (file_name, lang) output_message = "Saved file successfully at <strong>%s</strong>" % ( path_to_save) try: userDir = filexp.FileExplorer(def_username, def_pass, def_host) userDir.saveFileToRemote(path_to_save, file_name, code) userDir.close() return HttpResponse(output_message) except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)
def refreshDirectory(request): """List all files in directory""" if request.is_ajax(): try: userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.listFiles() return HttpResponse(outputResponse) except Exception: return HttpResponseServerError(content=b'Directory unavailable') # raise e finally: userDir.close()
def viewfilecontents(request): """Return the contents of the remote file at the server""" if request.is_ajax(): try: remote_path = request.POST.get('remote_path') userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.viewRemoteFile(remote_path) return HttpResponse(outputResponse) except Exception: return HttpResponseServerError(content=b'Couldn\'t locate file') finally: userDir.close()
def deleteRemoteDir(request): """Return the contents of the remote file at the server""" if request.is_ajax(): try: outputResponse = "File deleted successfully" remote_path = request.POST.get('remote_path') userDir = filexp.FileExplorer(def_username, def_pass, def_host) userDir.deleteRemoteFile(remote_path) return HttpResponse(outputResponse) except Exception: return HttpResponseServerError(content=b'Couldn\'t delete file') finally: userDir.close()
def getProfile(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Gets the user profile. Take care while changing passwords""" if request.is_ajax(): try: userDir = filexp.FileExplorer(def_username, def_pass, def_host) userData = userDir.loadUserConfig() userDir.close() return HttpResponse(json.dumps(userData)) except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)
def getJSONListing(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Return the contents of the file directory at the user's account""" if request.is_ajax(): try: userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.executeJSONList(def_username) userDir.close() return HttpResponse(outputResponse) except Exception as e: print 'error:', e return HttpResponseServerError(content=b'%s' % e.message)
def refreshDirectory(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """List all files in directory""" if request.is_ajax(): try: print 'before resp using ', def_username, '', type(def_username) userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.listFiles() userDir.close() return HttpResponse(outputResponse) except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)
def viewfilecontents(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Return the contents of the remote file at the server""" if request.is_ajax(): try: remote_path = request.POST.get('remote_path') userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.viewRemoteFile(remote_path) userDir.close() return HttpResponse(outputResponse) except Exception as e: print 'error while viewing file: ', e return HttpResponseServerError(content=b'%s' % e.message)
def deleteRemoteDir(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Return the contents of the remote file at the server""" if request.is_ajax(): try: outputResponse = "Deleted successfully" remote_path = request.POST.get('remote_path') userDir = filexp.FileExplorer(def_username, def_pass, def_host) userDir.deleteRemoteFile(remote_path) userDir.close() return HttpResponse(outputResponse) except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)
def makeRemoteDirectory(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Return the contents of the remote file at the server""" if request.is_ajax(): try: remote_path = request.POST.get('remote_path') is_file = request.POST.get('is_file') userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.makeRemoteDirectory(remote_path, is_file) userDir.close() return HttpResponse(outputResponse) except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)
def saveFile(request): """Save file as requested by the user to his location""" if request.is_ajax(): code = request.POST.get('sourceCode', '') lang = request.POST.get('sourceLang', '') file_name = request.POST.get('sourceName', '').split('.')[0] output_message = "Saved file successfully" createdFile = createFile(code, lang, name=file_name, isSaved=True) try: userDir = filexp.FileExplorer(def_username, def_pass, def_host) userDir.sftp_server.upload(createdFile, "./%s" % (createdFile)) return HttpResponse(output_message) except Exception: return HttpResponseServerError(content=b'Error saving') finally: userDir.close() if (os.path.isfile(createdFile)): os.remove(createdFile)
def executeCode(request): def_username = "" if session_user in request.session: def_username = request.session['def_username'] def_pass = passMap[def_username] """Create a file on server code.language compile it using the script provided and return the result """ if request.is_ajax(): code = request.POST.get('sourceCode', '') lang = request.POST.get('sourceLang', '') inp = request.POST.get('sourceInp', '') name = request.POST.get('sourceName', '') parentDir = request.POST.get('parentDir', '') curPath = request.POST.get('curPath', '') try: userDir = filexp.FileExplorer(def_username, def_pass, def_host) outputResponse = userDir.execute_CompileCode( code, lang, def_username, inp, name, parentDir, curPath) return HttpResponse(outputResponse) userDir.close() except Exception as e: return HttpResponseServerError(content=b'%s' % e.message)