def test_get(self): event1 = Event(name = 'FST Pre-Orientation', start_date_time = '2020-08-05T09:00:00Z', end_date_time = '2020-08-05T14:00:00Z', location = 'Faculty of Science and Technology') event1.save() event2 = Event(name = 'Fresher\'s Orientation', start_date_time = '2020-08-28T09:00:00Z', end_date_time = '2020-08-28T14:00:00Z', location = 'UWI, Mona') event2.save() response = self.client.get('/events/') self.assertEqual(response.status_code, 200) data = response.json() self.assertEqual(len(data), 2) expected_response = [{ 'id': event1.id, 'name': 'FST Pre-Orientation', 'start_date_time': '2020-08-05T09:00:00Z', 'end_date_time': '2020-08-05T14:00:00Z', 'location': 'Faculty of Science and Technology' }, { 'id': event2.id, 'name': 'Fresher\'s Orientation', 'start_date_time': '2020-08-28T09:00:00Z', 'end_date_time': '2020-08-28T14:00:00Z', 'location': 'UWI, Mona' }] self.assertEqual(data, expected_response)
def test_get(self): event1 = Event( name='General Orientation for New Undergraduate Students', start_date_time='2020-08-28T09:00:00Z', end_date_time='2020-08-28T15:00:00Z', location='Online', poster_image='assets/general_orientation_poster.JPG') event1.save() event2 = Event(name='FST Virtual Orientation', start_date_time='2020-08-31T09:00:00Z', end_date_time='2020-09-04T17:00:00Z', location='Online', poster_image='assets/fst_orientation_poster.JPG') event2.save() response = self.client.get('/events/') self.assertEqual(response.status_code, 200) data = response.json() self.assertEqual(len(data), 2) expected_response = [{ 'id': event1.id, 'name': 'General Orientation for New Undergraduate Students', 'start_date_time': '2020-08-28T09:00:00Z', 'end_date_time': '2020-08-28T15:00:00Z', 'location': 'Online', 'poster_image': 'assets/general_orientation_poster.JPG' }, { 'id': event2.id, 'name': 'FST Virtual Orientation', 'start_date_time': '2020-08-31T09:00:00Z', 'end_date_time': '2020-09-04T17:00:00Z', 'location': 'Online', 'poster_image': 'assets/fst_orientation_poster.JPG' }] self.assertEqual(data, expected_response)
def view(request, asso_id): asso = Association.objects.get(pk=asso_id) if request.method == 'POST': form = event_form(request.POST, request.FILES) if form.is_valid(): event = Event.objects.all().filter( title=form.cleaned_data['title']) if event.count() != 0: form = event_form() return render(request, 'event_create.html', { 'form': form, 'fail': 'Evènement déjà créé' }) evt = Event() evt.title = form.cleaned_data['title'] evt.description = form.cleaned_data['description'] start_date = form.cleaned_data['start_date'] start_time = form.cleaned_data['start_time'] evt.start = datetime.strptime(start_date + ' ' + start_time, '%Y-%m-%d %H:%M') end_date = form.cleaned_data['end_date'] end_time = form.cleaned_data['end_time'] evt.end = datetime.strptime(end_date + ' ' + end_time, '%Y-%m-%d %H:%M') evt.place = form.cleaned_data['place'] evt.cover = form.cleaned_data['cover'] evt.orga = asso closing_date = form.cleaned_data['closing_date'] closing_time = form.cleaned_data['closing_time'] evt.closing = datetime.strptime(closing_date + ' ' + closing_time, '%Y-%m-%d %H:%M') evt.int_capacity = form.cleaned_data['int_capacity'] evt.ext_capacity = form.cleaned_data['ext_capacity'] evt.int_price = form.cleaned_data['int_price'] evt.ext_price = form.cleaned_data['ext_price'] evt.display = form.cleaned_data['display'] evt.status = EventStatus.WAITING._value_ evt.token = '' evt.creator = request.user evt.premium = False evt.save() evt.token = generate_token(evt.id) evt.save() notify(event) return redirect(reverse('core:event', args=[evt.id])) else: form = event_form() return render(request, 'event_create.html', {'form': form, 'asso': asso})
def api_event_add(request): response = {} header = request.POST['header'] category = request.POST['category'] plan_id = request.POST['plan_id'] plan = Plan.objects.get(id=plan_id) new_event = Event() new_event.header = header new_event.category = category new_event.plan = plan new_event.order = len(plan.get_events()) new_event.save() response['event_id'] = new_event.id response['collaborator_id'] = request.user.id return response, 201
def create(request): data = json.loads(request.body.decode('utf-8')) if request.method == 'POST': booking = Event(author=data['author'], title=data['title'], description=data['msg'], start=data['start'], end=data['end'], hex_color=data['hex_color']) booking.save() details = Event.objects.filter(author=data['author'], active=True).values() return JsonResponse(list(details), safe=False)
def save_event_to_db(event): '''The function to save single event into DB (table: core_event) ''' e = Event( categoryID = parse_category_id(event['category_id']), datePosted = parse_datetime(event['date_posted']), description = event['description'], distance = event['distance'], distanceUnits = event['distance_units'], endDate = parse_date(event['end_date']), endTime = parse_time(event['end_time']), geoCodingAmbig = event['geocoding_ambiguous'], geoCodingPrec = event['geocoding_precision'], eventID = event['id'], latitude = event['latitude'], longitude = event['longitude'], metroID = event['metro_id'], name = event['name'], numFutureEvents = event['num_future_events'], personal = event['personal'], photoURL = event['photo_url'], selfPromotion = event['selfpromotion'], startDate = parse_date(event['start_date']), startDateLastRendition = event['start_date_last_rendition'], startTime = parse_time(event['start_time']), ticketFree = parse_int(event['ticket_free']), ticketPrice = event['ticket_price'], ticketURL = event['ticket_url'], URL = event['url'], userID = event['user_id'], utcEnd = parse_datetime(event['utc_end']), utcStart = parse_datetime(event['utc_start']), venueAddr = event['venue_address'], venueCity = event['venue_city'], venueCountryCode = event['venue_country_code'], venueCountryID = event['venue_country_id'], venueCountryName = event['venue_country_name'], venueID = event['venue_id'], venueName = event['venue_name'], venueStateCode = event['venue_state_code'], venueStateID = event['venue_state_id'], venueStateName = event['venue_state_name'], venueZip = str(event['venue_zip']), watchListCount = event['watchlist_count']) e.save()
def events(request): if request.user.is_anonymous(): return JsonResponse({'error': 'loggedOut'}) if request.method == 'POST': event_data = convert_dict_keys_deep(json.loads(request.body))['event'] if (not event_data['name'] or not event_data['date_from'] or not event_data['type'] or not event_data['color']): return JsonResponse({'error': 'badRequest'}) if (not event_data['id']): event = Event( name=event_data['name'], date_from=event_data['date_from'], date_to=event_data['date_to'], type=event_data['type'], color=event_data['color'], ) event.save() return JsonResponse({'event': serialize_event(event)}) events = [serialize_event(event) for event in Event.objects.order_by('date_from').all()] return JsonResponse({'events': events})
def quickCreate(name, sport, distance, city, date): """ example : quickCreate(name="Triathlon de Montélimar", sport="Triathlon", distance="XS", city="Montélimar", date="25/06/2015") """ s = Sport try: s = Sport.objects.get(name=sport) except Sport.DoesNotExist: print("Sport {0} does not exist".format(sport)) dc = DistanceCategory try: dc = DistanceCategory.objects.get(name=distance) except DistanceCategory.DoesNotExist: print("Distance {0} does not exist".format(distance)) e = Event(name=name, edition=1) e.save() c = Contact(name="Pierre Dupont") c.save() l = Location(country=Location.objects.all()[0].country, city=city) l.save() r = Race( sport=s, event=e, date=datetime.strptime(date, "%d/%m/%Y"), distance_cat=dc, price=40, contact=c, location=l, ) r.save() return r
def checkout(request): if not request.user.is_authenticated(): return redirect('/user/login/') name = '' sumary = '' error_message = False total = 0 currency = 'USD' cart = [] if request.POST: name = request.POST['name'] sumary = request.POST['sumary'] if name and sumary: cart = request.session[settings.SHOPPING_CART_KEY] # Check client status client = Client.objects.filter(user__id = request.user.id) if client: # User is already registered as client client = client[0] else: client = Client(user=request.user, created=timezone.now()) client.save() # Create story and events story = Story( client = client, name = name, sumary = sumary, created = timezone.now() ) story.save() for ev in cart: place = Place.objects.get(pk=ev['place']) ev = complete_event(ev, place) event = Event( story = story, place = place, created = timezone.now(), start = ev['start'], end = ev['end'] ) event.save() del request.session[settings.SHOPPING_CART_KEY] return redirect('/story/' + str(story.id)) else: error_message = 'Some fields are required.' if settings.SHOPPING_CART_KEY in request.session: cart = request.session[settings.SHOPPING_CART_KEY] i = 0 for ev in cart: place = Place.objects.get(pk=ev['place']) ev['index'] = i ev = complete_event(ev, place) total += ev['price'] i = i+1 context = { 'name' : name, 'sumary' : sumary, 'total' : total, 'currency' : currency, 'cart' : cart, 'error_message' : error_message, 'user' : views.user_status(request), 'shopping_cart' : views.shopping_cart_status(request) } return render(request, 'story/checkout.html', context)
def populate(): #Fashion House f1 = Fashion_House(fashion_name="Chanel", debrief_received=False) f2 = Fashion_House(fashion_name="Dior", debrief_received=True) f3 = Fashion_House(fashion_name="Lancel", debrief_received=False) f4 = Fashion_House(fashion_name="Gucci", debrief_received=False) f5 = Fashion_House(fashion_name="LVMH", debrief_received=True) f6 = Fashion_House(fashion_name="Louis Vuitton", debrief_received=True) f1.save() f2.save() f3.save() f4.save() f5.save() f6.save() # Event e1 = Event(title="Du style en croks", date_debut='2019-12-12T15:00:00Z', date_fin='2019-12-17T15:00:00Z', description= "Bienvenue a notre événement voici un sommaire des activites :", place="Paris", fashion_name=f1) e2 = Event(title="Hiver neige", date_debut='2020-11-12T15:00:00Z', date_fin='2020-11-17T15:00:00Z', description= "Bienvenue a notre événement voici un sommaire des activites :", place="Russie", fashion_name=f2) e1.save() e2.save() #One_to_One o1 = One_to_One(date='2019-12-12T15:00:00Z', salon=10, staff="Paul JP", title=e1) o2 = One_to_One(date='2019-12-12T15:00:00Z', salon=10, staff="Marie JP", title=e2) o3 = One_to_One(date='2019-12-12T15:00:00Z', salon=10, staff="Kevin JP", title=e1) o4 = One_to_One(date='2019-12-12T15:00:00Z', salon=10, staff="Pierre JP", title=e2) o1.save() o2.save() o3.save() o4.save() #Activity a1 = Activity(title="Restaut à la Giraffe ", date_act='2019-12-13T00:00:00Z', supplier_name="Chantal", adress="89 rue de rivoli", budget=100, real_price=150, cancelation_policy_deadline=48, cancelation_policy_fees=0.8, contact_name="Fabris", phone_number="0604157343", mail_adress="*****@*****.**", status="cf", typ_act="1") a2 = Activity(title="Tour Eiffel de nuit ", date_act='2019-12-15T00:00:00Z', supplier_name="Charly", adress="17 rue des étudiants", budget=200, real_price=0, cancelation_policy_deadline=72, cancelation_policy_fees=0.6, contact_name="Fabris", phone_number="0604157343", mail_adress="*****@*****.**", status="cnf", typ_act="2") a3 = Activity(title="Spa massage", date_act='2019-12-17T00:00:00Z', supplier_name="Joseph", adress="50 rue de rivoli", budget=1000, real_price=800, cancelation_policy_deadline=48, cancelation_policy_fees=0.5, contact_name="Fabris", phone_number="0604157343", mail_adress="*****@*****.**", status="f", typ_act="4") a1.save() a2.save() a3.save() #Concierge c1 = Concierge(login="******", mdp="0001", name="Jean", last_name="Concierge") c2 = Concierge(login="******", mdp="0002", name="Kevin", last_name="Concierge") c3 = Concierge(login="******", mdp="0003", name="Marie", last_name="Concierge") c1.save() c2.save() c3.save() c1.list_events.add(e1, e2) c2.list_events.add(e1) c3.list_events.add(e2) #Chauffeur t1 = Chauffeur(name="Karim", last_name="Uber", langue="Fr", lieu_depart="Paris Roissy", lieu_arrivee="Carlton", consigne="Ne pas perdre le client de vue", horaire_chauffeur='2019-12-12T15:00:00Z') t1.save() #Hotel h1 = Hotel(reservation_nb=5, date_debut='2019-12-12T15:00:00Z', date_fin='2019-12-12T15:00:00Z', room_type="Suite Deluxe", tarif=500, estimated_budget=550, paid_by_JP=2, paid_by_client=3, night_booked_jp=2, night_booked_client=3, welcome_pack_arrived=True) h1.save() #Planning p1 = Planning(nights_booked=5, digital_planning=True, language="EN", travel_fees=500) p2 = Planning(nights_booked=3, language="FR", travel_fees=500) p3 = Planning(nights_booked=2, digital_planning=True, language="EN", travel_fees=2000) p4 = Planning(nights_booked=4, digital_planning=True, language="EN", travel_fees=500) p2.save() p3.save() p4.save() p1.save() p1.list_activities.add(a1) p1.list_driver.add(t1) p1.list_hotel.add(h1) p2.list_activities.add(a2) p2.list_driver.add(t1) p2.list_hotel.add(h1) p3.list_activities.add(a3) p3.list_driver.add(t1) p3.list_hotel.add(h1) #Client cl1 = Client(name="Jacques", last_name="Dupont", zone="Asie", contact_principal="*****@*****.**", langue="En", budget_jour=500, budget_semaine=5000, plan=p1, date=o1, telephone="0664587985", date_arrival='2019-12-12T15:00:00Z', date_leave='2019-12-17T15:00:00Z', status='al') cl2 = Client(name="Hiba", last_name="Beldi", zone="Moyen-Orient", langue="Arabe", budget_jour=150, budget_semaine=1500, date=o2, plan=p2, telephone="0664152465", date_arrival='2019-12-13T15:00:00Z', date_leave='2019-12-16T15:00:00Z', status='mn') cl3 = Client(name="Jérémie", last_name="Bencini", zone="Arctique", langue="Anglais", budget_jour=3000, budget_semaine=30000, date=o3, plan=p3, telephone="0668358476", date_arrival='2019-12-11T15:00:00Z', date_leave='2019-12-19T15:00:00Z', status='mn') cl4 = Client(name="Diane", last_name="Du Peloux", zone="Afrique", langue="Français", budget_jour=300, budget_semaine=3000, date=o4, plan=p4, telephone="0542487945", date_arrival='2019-12-14T15:00:00Z', date_leave='2019-12-20T15:00:00Z', status='al') cl1.save() cl2.save() cl3.save() cl4.save() cl1.title.add(e1) cl2.title.add(e1) cl3.title.add(e2) cl4.title.add(e2) #Hospitality_packs hp1 = Hospitality_Pack(collection="Printemps 2020", horaires_dispo_concierge="Lundi-Dimance: 7h-23h", title=e1) hp1.save() hp1.list_services.add(a1)
def __call__(self, *args): event = args[0] ev = Event(filename=os.path.join(event.path, event.name), type=event.mask) ev.save()