Ejemplo n.º 1
0
def events(request):
    global user, start1, start2, end1, end2
    access_token = get_access_token(
        request, request.build_absolute_uri(reverse('getoken')))
    user_email = request.session['user_email']
    # If there is no token in the session, redirect to home
    if not access_token:
        return HttpResponseRedirect(reverse('home'))
    else:

        events = get_my_events(access_token, user_email)
        unrefined = {'events': events['value']}
        start, end = refine(unrefined)
        if user == 0:
            user = 1
            start1 = start
            end1 = end
            return HttpResponseRedirect(
                'https://login.windows.net/common/oauth2/logout?post_logout_redirect_uri=http%3A%2F%2Flocalhost%3A8000%2F'
            )
            #return render(request, 'tutorial/home.html', {'sign_in_url':sign_in_url, 'person':'the other person\'s'})
        else:
            start2 = start
            end2 = end
        return final(request)
Ejemplo n.º 2
0
def my_events(request):
  access_token = get_access_token(request, request.build_absolute_uri(reverse('tutorial:gettoken')))
  user_email = request.session['user_email']
  # If there is no token in the session, redirect to home
  if not access_token:
    return HttpResponseRedirect(reverse('tutorial:home'))
  else:
    events = get_my_events(access_token, user_email)
    '''
    events1 = get_my_events(access_token, user_email, '/me/CalendarView?startDateTime=2015-05-30T04:00:00Z&endDateTime=2018-03-31T11:59:00Z')
    context1 = { 'events': events1['value'] }

    events4 = get_my_events(access_token, user_email, '/Users/[email protected]/CalendarView?startDateTime=2015-05-30T04:00:00Z&endDateTime=2018-03-31T11:59:00Z')
    context4 = { 'events': events4['value'] }

    events2 = get_my_events(access_token, user_email, '/Users/[email protected]/CalendarView?startDateTime=2015-05-30T04:00:00Z&endDateTime=2017-12-31T11:59:00Z')
    context2 = { 'events': events2['value'] }
    
    events3 = get_my_events(access_token, user_email, '/Users/[email protected]/CalendarView?startDateTime=2015-05-30T04:00:00Z&endDateTime=2017-12-31T11:59:00Z')
    context3 = { 'events': events3['value'] }

    #$ context = dict(context2.items() + context3.items() + context4.items())
    
    context = dict(context2)
    for d in (context3, context4): context.update(d)
    
    print('context = ' + str(context))
    #context = context1 + context2 + context3 + context4
    '''
    context = { 'events': events['value'] }
    return render(request, 'tutorial/my_events.html', context)
Ejemplo n.º 3
0
def events(request):
    access_token = get_access_token(request, request.build_absolute_uri(reverse('tutorial:gettoken')))
    # If there is no token in the session, redirect to home
    if not access_token:
        return HttpResponseRedirect(reverse('tutorial:home'))
    else:
        events = get_my_events(access_token)
        context = {'events': events['value']}
        return render(request, 'tutorial/events.html', context)
Ejemplo n.º 4
0
def events(request):
  access_token = get_access_token(request, request.build_absolute_uri(reverse('tutorial:gettoken')))
  # If there is no token in the session, redirect to home
  if not access_token:
    return HttpResponseRedirect(reverse('tutorial:home'))
  else:
    events = get_my_events(access_token)
    context = { 'events': events['value'] }
    return render(request, 'tutorial/events.html', context)
Ejemplo n.º 5
0
def events(request):
  access_token = request.session['access_token']
  user_email = request.session['user_email']
  # If there is no token in the session, redirect to home
  if not access_token:
    return HttpResponseRedirect(reverse('tutorial:home'))
  else:
    events = get_my_events(access_token, user_email)
    context = { 'events': events['value'] }
    return render(request, 'tutorial/events.html', context)
Ejemplo n.º 6
0
def mail(request):
    access_token = get_access_token(request, request.build_absolute_uri(reverse('tutorial:gettoken')))
  # If there is no token in the session, redirect to home
    if not access_token:
        return HttpResponseRedirect(reverse('tutorial:home'))
    else:
        messages = get_my_messages(access_token)
    #Получаем список непрочитанных писем
        i=0
        while i in range(len(messages['value'])):
            if messages['value'][i]['isRead']!=False:
                messages['value'].pop(i)
            else:
                i+=1
    #сделали список

        events = get_my_events(access_token)
        i=0
        while i<len(events['value']):
            t = events['value'][i]['start']['dateTime'][11:19]
            d = events['value'][i]['start']['dateTime'][:10]
            if d == str(datetime.date.today()):
                events['value'][i]['start']['date']=d
                events['value'][i]['start']['time']=t
                i+=1
            else:
                events['value'].pop(i)

        me = get_me(access_token)

#получаем погоду
        link_to_site = 'https://community-open-weather-map.p.rapidapi.com/weather'
        headers={
            'X-RapidAPI-Host': 'community-open-weather-map.p.rapidapi.com',
            'X-RapidAPI-Key': '5aabc22e25msh45d6df4abdd28d0p1a4479jsn10ea7369318e'
                }
        parameters = {
                'q':'Ryazan,ru',
                'units':'metric',
                }
        weather = requests.get(link_to_site, headers=headers, params=parameters)
        current_weather = weather.json()

        try:
            context = {
                    'messages': messages['value'],
                    'emails_counter': len(messages['value']),
                    'events': events['value'],
                    'events_counter': len(events['value']),
                    'user_name': me['displayName'],
                    'city_weather': current_weather['main']['temp']
                    }
            return render(request, 'tutorial/mail.html', context)
        except:
            print(messages)
Ejemplo n.º 7
0
def all_events(request):
  access_token = get_access_token(request, request.build_absolute_uri(reverse('tutorial:gettoken')))
  user_email = request.session['user_email']
  # If there is no token in the session, redirect to home
  if not access_token:
    return HttpResponseRedirect(reverse('tutorial:home'))
  else:

    events1 = get_my_events(access_token, user_email)
    context1 = { 'events': events1['value'] }

    cnx = mysql.connector.connect(user='******', password='******', 
                              host='sparksvm.eastus.cloudapp.azure.com',
    #			      port=3306,
                              database='roomreservations')

    updateDB(events1, 'otherroomschedule2', cnx, 'OtherRoomStatus') 
    print ('[all_events]: >>>> otherroomschedule2 has been updated ....... \r\n') 

    events2 = get_bunker_events(access_token, user_email)
    context2 = { 'events': events2['value'] }
    #time.sleep(1)
    updateDB(events2, 'bunkerroomschedule2', cnx, 'BunkerRoomStatus')
    print ('[all_events]: >>>> bunkerroomschedule2 has been updated ....... \r\n')  

    events3 = get_boilermaker_events(access_token, user_email)
    context3 = { 'events': events3['value'] }
    updateDB(events3, 'boilermakerroomschedule2', cnx, 'BoilermakerRoomStatus')
    print ('[all_events]: >>>> boilermakerroomschedule2 has been updated ....... \r\n')  

    #$ Strategy Room events are already read in get_all_events() function - ? 
    events4 = get_strategy_events(access_token, user_email)
    context4 = { 'events': events4['value'] }
    updateDB(events4, 'strategyroomschedule2', cnx, 'StrategyRoomStatus')
    print ('[all_events]: >>>> strategyroomschedule2 has been updated ....... \r\n')  

    '''
    context = dict(context1, **context2) 
    context.update(context3) 
    context.update(context4)
    10 July
    '''
    print("[views.py/all_events] Databases have been updated. Current time is:" + str(datetime.datetime.now()))
    threading.Timer(600, all_events, [request]).start()

    cnx.close()

    #19 July sys.exit()
    #os.system('pkill -f runsslserver')
    #restart_script()

  return render(request, 'tutorial/strategy_events.html', context4)
Ejemplo n.º 8
0
def all_events(request):
    access_token = get_access_token(
        request, request.build_absolute_uri(reverse('tutorial:gettoken')))
    user_email = request.session['user_email']
    # If there is no token in the session, redirect to home
    if not access_token:
        return HttpResponseRedirect(reverse('tutorial:home'))
    else:
        events1 = get_my_events(access_token, user_email)
        context1 = {'events': events1['value']}
        #events11 = json.loads(events1)
        #$ OK for key, value in context1.items():
        #~~~ OK 6pm for key, value in events1.items():
        # 07 July: write a function updateDB (dict_events,db_name);call it: updateDB(events1, strategyroomschedule2 )
        cnx = mysql.connector.connect(
            user='******',
            password='******',
            host='sparksvm.eastus.cloudapp.azure.com',
            #			      port=3306,
            database='roomreservations')

        updateDB(events1, 'otherroomschedule2', cnx)

        #$ OK print (context1)
        ##% for event1 in events1:
        #start = event.get.start.dateTime #event['start'].get('dateTime', event['start'].get('date'))
        #end = event['end'].get('dateTime', event['end'].get('date'))
        #location = event.get('location', '')
        #location = event.location
        #summary = event.get('subject', '')
        #description = event.get('body.content', '')
        ## print (event[0].value.location)
        ## print (' >>>>>>>>> \r\n')
        ## print(event[1])
        #print(' start time: ' + start + '; End time: ' + end + '; Location: ' + location + ' ; Summary: ' + summary + ' ; Description: ' + description )

        print(' >>>>>>>>> \r\n')
        '''
    print (event1)
    print (' >>>>>>>>> \r\n') 
    '''
        #.location.displayName)
        #response_dict.get("scans",{}).get("AVG",{})

        events2 = get_bunker_events(access_token, user_email)
        context2 = {'events': events2['value']}

        events3 = get_boilermaker_events(access_token, user_email)
        context3 = {'events': events3['value']}

        #$ Strategy Room events are already read in get_all_events() function - ?
        events4 = get_strategy_events(access_token, user_email)
        context4 = {'events': events4['value']}

        context = dict(context1, **context2)
        context.update(context3)
        context.update(context4)

        print(
            "[views.py/all_events]  HOLA, Databases have been updated. Current time is: "
            + str(datetime.datetime.now()))
        threading.Timer(60, all_events, [request]).start()

        cnx.close()

    return render(request, 'tutorial/strategy_events.html', context)