def help(request): page_title = 'Login' return {'layout': site_layout('max'), 'page_title': page_title, }
def view_test3(request): page_title = "test." au = get_authenticated_user(request) params = {"format": None, "type": "vir"} for p in params: try: params[p] = request.params[p] except: pass format = params["format"] type = params["type"] return {"layout": site_layout("max"), "page_title": page_title, "au": au}
def view_nodes(request): page_title_type = 'objects/' page_title_name = 'nodes' au = get_authenticated_user(request) (perpage, offset) = get_pag_params(request) payload = {} for k in request.GET: payload[k] = request.GET[k] uri = '/api/nodes' log.info('UI requesting data from API={0},payload={1}'.format(uri, payload)) if payload: r = _api_get(request, uri, payload) else: r = _api_get(request, uri) if r: total = r['meta']['total'] nodes = r['results'] else: total = 0 nodes = [] # Used by the columns menu to determine what to show/hide. column_selectors = [ {'name': 'node_id', 'pretty_name': 'Node ID' }, {'name': 'node_name', 'pretty_name': 'Node Name' }, {'name': 'unique_id', 'pretty_name': 'Unique Id' }, {'name': 'status', 'pretty_name': 'Status' }, {'name': 'node_groups', 'pretty_name': 'Node Groups' }, {'name': 'updated_by', 'pretty_name': 'Updated By' }, {'name': 'updated', 'pretty_name': 'Date Updated' }, {'name': 'created', 'pretty_name': 'Date Created' }, ] return {'layout': site_layout('max'), 'page_title_type': page_title_type, 'page_title_name': page_title_name, 'perpage': perpage, 'offset': offset, 'total': total, 'au': au, 'column_selectors': column_selectors, 'nodes': nodes, }
def view_test2(request): page_title_type = 'objects_' page_title_name = 'Statuses' au = get_authenticated_user(request) params = {'format': None, 'type': 'vir', } for p in params: try: params[p] = request.params[p] except: pass format = params['format'] type = params['type'] if format == 'json' or format == 'xml': return {'Hello':'world'} if type == 'ec2': host = 'aws1prdtcw1.opsprod.ctgrd.com' uniq_id = 'i-303a6c4a' ng = 'tcw' vhost = 'aws1' elif type == 'rds': host = 'aws1devcpd1.csqa.ctgrd.com' uniq_id = 'aws1devcpd1.cltftmkcg4dd.us-east-1.rds.amazonaws.com' ng = 'none' vhost = 'aws1' else: host = 'vir1prdpaw1.prod.cs' uniq_id = '6A:37:2A:68:E1:B0' ng = 'paw' vhost = 'vir1prdxen41.prod.cs' return {'layout': site_layout('max'), 'page_title_type': page_title_type, 'page_title_name': page_title_name, 'au': au, # 'results': results, 'type': type, 'host': host, 'uniq_id': uniq_id, 'ng': ng, 'vhost': vhost, }
def view_operating_systems(request): page_title_type = 'object/' page_title_name = 'operating_systems' au = get_authenticated_user(request) (perpage, offset) = get_pag_params(request) payload = {} for k in request.GET: payload[k] = request.GET[k] uri = '/api/operating_systems' log.info('UI requesting data from API={0},payload={1}'.format(uri, payload)) if payload: r = _api_get(request, uri, payload) else: r = _api_get(request, uri) if r: total = r['meta']['total'] operating_systems = r['results'] else: total = 0 operating_systems = [] # Used by the columns menu to determine what to show/hide. column_selectors = [ {'name': 'operating_system_id', 'pretty_name': 'Operating system ID' }, {'name': 'variant', 'pretty_name': 'Variant' }, {'name': 'version_number', 'pretty_name': 'Version Number' }, {'name': 'architecture', 'pretty_name': 'Architecture' }, {'name': 'description', 'pretty_name': 'Description' }, {'name': 'updated_by', 'pretty_name': 'Updated By' }, {'name': 'updated', 'pretty_name': 'Date Updated' }, {'name': 'created', 'pretty_name': 'Date Created' }, ] return {'layout': site_layout('max'), 'page_title_type': page_title_type, 'page_title_name': page_title_name, 'perpage': perpage, 'offset': offset, 'total': total, 'au': au, 'column_selectors': column_selectors, 'operating_systems': operating_systems, }
def view_hardware_profiles(request): page_title_type = 'objects/' page_title_name = 'hardware_profiles' au = get_authenticated_user(request) (perpage, offset) = get_pag_params(request) payload = {} for k in request.GET: payload[k] = request.GET[k] uri = '/api/hardware_profiles' log.info('UI requesting data from API={0},payload={1}'.format(uri, payload)) if payload: r = _api_get(request, uri, payload) else: r = _api_get(request, uri) if r: total = r['meta']['total'] hardware_profiles = r['results'] else: total = 0 hardware_profiles = [] # Used by the columns menu to determine what to show/hide. column_selectors = [ {'name': 'hardware_profile_id', 'pretty_name': 'Hardware Profile ID' }, {'name': 'manufacturer', 'pretty_name': 'Manufacturer' }, {'name': 'model', 'pretty_name': 'Model' }, {'name': 'updated_by', 'pretty_name': 'Updated By' }, {'name': 'updated', 'pretty_name': 'Date Updated' }, {'name': 'created', 'pretty_name': 'Date Created' }, ] return {'layout': site_layout('max'), 'page_title_type': page_title_type, 'page_title_name': page_title_name, 'perpage': perpage, 'offset': offset, 'total': total, 'au': au, 'column_selectors': column_selectors, 'hardware_profiles': hardware_profiles, }
def view_home(request): page_title_type = '_' page_title_name = 'Home' au = get_authenticated_user(request) # Used by the columns menu to determine what to show/hide. column_selectors = [ {'name': 'status_id', 'pretty_name': 'Status ID' }, {'name': 'status_name', 'pretty_name': 'Status Name' }, {'name': 'description', 'pretty_name': 'Description' }, {'name': 'updated_by', 'pretty_name': 'Updated By' }, {'name': 'updated', 'pretty_name': 'Date Update' }, {'name': 'created', 'pretty_name': 'Date Created' }, ] return {'layout': site_layout('max'), 'page_title_type': page_title_type, 'page_title_name': page_title_name, 'au': au, 'column_selectors': column_selectors, }
def logout(request): page_title = "Login" message = None try: if request.params["message"]: message = request.params["message"] except: pass headers = forget(request) # Do I really need this? headers.append(("Set-Cookie", "un=; Max-Age=0; Path=/")) request.response.headers = headers # No idea why I have to re-define these, but I do or it poops itself request.response.content_type = "text/html" request.response.charset = "UTF-8" request.response.status = "200 OK" return {"layout": site_layout("max"), "page_title": page_title, "message": message}
def view_test(request): page_title = 'Test' au = get_authenticated_user(request) results = False params = {'type': 'vir', } for p in params: try: params[p] = request.params[p] except: pass type = params['type'] if type == 'ec2': host = 'aws1prdtcw1.opsprod.ctgrd.com' uniq_id = 'i-303a6c4a' ng = 'tcw' vhost = 'aws1' elif type == 'rds': host = 'aws1devcpd1.csqa.ctgrd.com' uniq_id = 'aws1devcpd1.cltftmkcg4dd.us-east-1.rds.amazonaws.com' ng = 'none' vhost = 'aws1' else: host = 'vir1prdpaw1.prod.cs' uniq_id = '6A:37:2A:68:E1:B0' ng = 'paw' vhost = 'vir1prdxen41.prod.cs' return {'layout': site_layout('max'), 'page_title': page_title, 'au': au, 'results': results, 'type': type, 'host': host, 'uniq_id': uniq_id, 'ng': ng, 'vhost': vhost, }
def login(request): page_title = 'Login' au = get_authenticated_user(request) if request.referer: referer_host = request.referer.split('/')[2] else: referer_host = None # Need to send the client a 401 so it can send a user/pass to auth. Need a second condition to check for authenticated user if request.path_info.split('/')[1][:3] == 'api': logging.debug('request came from the api, sending request to re-auth') return HTTPUnauthorized() if request.referer and referer_host == request.host and request.referer.split('/')[3][:6] != 'logout': return_url = request.referer elif request.path != '/login': return_url = request.url else: return_url = '/' login = '' password = '' error = '' if 'form.submitted' in request.POST: login = request.POST['login'] password = request.POST['password'] # Try local first, ldap second data = local_authenticate(login, password) if data is None: connector = get_ldap_connector(request) data = connector.authenticate(login, password) if data is not None: dn = data[0] encrypted = signed_serialize(login, request.registry.settings['arsenal.cookie_token']) headers = remember(request, dn) headers.append(('Set-Cookie', 'un=' + str(encrypted) + '; Max-Age=604800; Path=/')) if 'api.client' in request.POST: return HTTPOk(headers=headers) else: return HTTPFound(request.POST['return_url'], headers=headers) else: error = 'Invalid credentials' if 'api.client' in request.POST: return HTTPForbidden() if request.authenticated_userid: if request.path == '/login': error = 'You are already logged in' page_title = 'Already Logged In' else: error = 'You do not have permission to access this page' page_title = 'Access Denied' if 'api.client' in request.POST: return HTTPForbidden() return {'layout': site_layout('max'), 'page_title': page_title, 'au': au, 'return_url': return_url, 'login': login, 'password': password, 'error': error, }
encrypted_password = sha512_crypt.encrypt(password, salt=salt) user.salt = salt user.password = encrypted_password DBSession.flush() return_url = '/logout?message=Your password has been changed successfully. Log in again.' return HTTPFound(return_url) DBSession.flush() except Exception, e: pass log.info("%s (%s)" % (Exception, e)) # Get the changes au = get_authenticated_user(request) subtitle = au['first_last'] column_selectors = [] return {'layout': site_layout('max'), 'page_title_name': page_title_name, 'page_title_type': page_title_type, 'au': au, 'perpage': perpage, 'offset': offset, 'total': total, 'column_selectors': column_selectors, 'subtitle': subtitle, 'change_pw': change_pw, }