Exemple #1
0
    def setUp(self):
        user = UserModel.objects.create_user(name="test test",
                                             password="******",
                                             email="*****@*****.**")
        self.client = APIClient()
        self.client.force_authenticate(user=user)

        future_date_1 = datetime.now() + timedelta(days=+30)
        future_date_2 = datetime.now() + timedelta(days=+37)
        past_date_1 = datetime.now() + timedelta(days=+37)
        self.events = Event.objects.bulk_create([
            Event(
                name="Powerwolf in Wroclaw",
                event_date=future_date_1,
                place="Wroclaw",
                description="lorem ipsum",
            ),
            Event(
                name="Powerwolf in Wroclaw",
                event_date=future_date_2,
                place="Wroclaw",
                description="lorem ipsum",
            ),
            Event(
                name="Powerwolf in Wroclaw",
                event_date=past_date_1,
                place="Wroclaw",
                description="lorem ipsum",
            ),
        ])
Exemple #2
0
    def setUp(self):
        self.factory = RequestFactory(HTTP_HOST='test.com')

        now = timezone.now()
        test_fair = Fair(name="Armada 2000", current=True)
        test_fair.save()

        self.event = Event(fair=test_fair,
                           name='test',
                           event_start=now,
                           event_end=now,
                           registration_start=now,
                           registration_end=now,
                           registration_last_day_cancel=now,
                           public_registration=True,
                           published=True)
        self.event.save()
        self.hidden_event = Event(fair=test_fair,
                                  name='hidden event',
                                  event_start=now,
                                  event_end=now,
                                  registration_start=now,
                                  registration_end=now,
                                  registration_last_day_cancel=now,
                                  public_registration=False)
        self.hidden_event.save()
        self.request = self.factory.get('/api/events/')
    def setUp(self):
        weekly = Rule(frequency="WEEKLY")
        weekly.save()
        daily = Rule(frequency="DAILY")
        daily.save()
        cal = Calendar(name="MyCal")
        cal.save()

        self.event1 = Event(
            **{
                'title': 'Weekly Event',
                'start': datetime.datetime(2009, 4, 1, 8, 0),
                'end': datetime.datetime(2009, 4, 1, 9, 0),
                'end_recurring_period': datetime.datetime(2009, 10, 5, 0, 0),
                'rule': weekly,
                'calendar': cal
            })
        self.event1.save()
        self.event2 = Event(
            **{
                'title': 'Recent Event',
                'start': datetime.datetime(2008, 1, 5, 9, 0),
                'end': datetime.datetime(2008, 1, 5, 10, 0),
                'end_recurring_period': datetime.datetime(2009, 5, 5, 0, 0),
                'rule': daily,
                'calendar': cal
            })
        self.event2.save()
Exemple #4
0
    def save(self, *args, **kwargs):

        if (self.transmissionid == None):
            var = str(uuid.uuid4())
            self.transmissionid = var[26:36]

            #Log events
            event = Event()
            event.EventTypeCode = "TRA"
            event.EventSubjectId = self.transmissionid
            event.EventSubjectName = self.SenderName
            event.EventTypeReason = "Transmission added"
            event.source = "Web App"
            event.creator=self.creator
            event.save()


        if (self.bulk_upload_indicator == "Y" and self.backend_SOR_connection != "Disconnected"):
            self.bulk_upload_indicator=""

        self.response='Success'
        super().save(*args, **kwargs)

        #connect to backend
        if self.backend_SOR_connection != "Disconnected":
            #converty model object to json
            serializer = TransmissionSerializer(self)
            json_data = serializer.data
            api = ApiDomains()
            url=api.transmission
            #url='https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidatatransmissionAPI'
            #post data to the API for backend connection
            resp = requests.post(url, json=json_data)
            print("status code " + str(resp.status_code))

            if resp.status_code == 502:
                resp.status_code = 201

            obj = get_object_or_404(APICodes, http_response_code = resp.status_code)
            status_message=obj.http_response_message
            self.response=str(resp.status_code) + " - " + status_message
            if resp.status_code == 201:
                self.commit_indicator="Committed"
            else:
                self.commit_indicator="Not Committed"

            #Log events
            event = Event()
            event.EventTypeCode = "TRC"
            event.EventSubjectId = self.transmissionid
            event.EventSubjectName = self.SenderName
            event.EventTypeReason = "Transmission added to ODS"
            event.source = "Web App"
            event.creator=self.creator
            event.save()

            super().save(*args, **kwargs)
        else:
            print("not connected to backend!")
Exemple #5
0
def eventView(request):
    events = Event.objects.all()
    try:
        event_id = request.GET['id']
        Event.objects.filter(id=event_id).delete()
    except MultiValueDictKeyError:
        pass
    if request.method == 'POST':
        form = EventForm(request.POST)
        if form.is_valid():
            name = request.POST['name']
            venue = request.POST['venue']
            date = request.POST['date']
            time = request.POST['time']
            new_event = Event(name=name,
                              venue=venue,
                              date=date,
                              time=time)
            new_event.save()
    else:
        form = EventForm()
    context = {
        'events': events,
        'form': form,
        }
    return render(request, 'users/events.html', context)
Exemple #6
0
def create_reminder(by, date, reminder_choice, registration, step, timezone):
    offset = get_reminder_minutes_offset(reminder_choice)
    when = date - dt.timedelta(minutes=offset)

    reminder, created_at = Reminder.objects.get_or_create(
        registration=registration)

    reminder.step = step
    reminder.by = by
    reminder.when = when
    reminder.date = date
    reminder.timezone = timezone
    reminder.save()

    costumer_name = registration.costumer.get_full_name()

    event = Event.objects.filter(reminder=reminder).first()
    if not event:
        event = Event(reminder=reminder)

    event.user = registration.consultant
    event.title = u'Ad Astra Reminder - {}'.format(costumer_name)
    event.description = u'You have one {} with {}'.format(
        reminder.get_step_display(), costumer_name)
    event.start = date
    event.end = date + dt.timedelta(minutes=30)
    event.save()
Exemple #7
0
def newstore(request):
    context = {}
    if request.method == "POST":
        store_name = request.POST['store_name']
        desc = request.POST['description']
        date = request.POST['date']
        time = request.POST['time']
        poster = request.FILES['poster']
        location = request.POST['location']
        event = Event(shop=request.user,
                      Event_name=store_name,
                      Event_description=desc,
                      date=date,
                      time=time,
                      Event_poster=poster,
                      location=location)
        event.save()
        tickets = request.POST.getlist('ticket')
        for ticket in tickets:
            data = ticket.split(',')
            Ticket.objects.create(event=event,
                                  name=data[0],
                                  quantity=data[1],
                                  price=data[2])
        context = {'success': True}
    return render(request, 'dashboard/newstore.html', context)
Exemple #8
0
def get_repeated_events(events, start_date_range, end_date_range):
    items = []
    for event in events:
        start_date_generator = repeating_date_generator(
            event.start_date, event.repetition)
        end_date_generator = repeating_date_generator(event.end_date,
                                                      event.repetition)
        start_date = event.start_date
        end_date = event.end_date
        event_ends = end_date_range if event.ends is None else min(
            event.ends, end_date_range)
        while event_ends > start_date:
            if start_date_range <= start_date <= end_date_range:
                rep_event = Event(title=event.title,
                                  start_date=start_date,
                                  end_date=end_date,
                                  start_time=event.start_time,
                                  end_time=event.end_time,
                                  location=event.location,
                                  description=event.description,
                                  is_repeat=event.is_repeat,
                                  repetition=event.repetition,
                                  ends=event.ends,
                                  id=event.id)
                items.append(rep_event)
            start_date = next(start_date_generator)
            end_date = next(end_date_generator)
    return items
Exemple #9
0
def trigger_event(group_name, event_name):

    event_source = Group.objects.get(name=group_name)
    event_definition = EventDefinition.objects.get(name=event_name)
    event_write = Event(event_definition=event_definition,
                        device_group=event_source)
    event_write.save()
    # completion of automation writes an event which could trigger another automation
    automations = Automation.objects.filter(cause=event_definition,
                                            source_group=event_source)
    for automation in automations:
        dummy_result = [None]
        event_target = automation.target_group
        config_id = str(event_target.get_config_id())
        # initialize automation chain with triggered automation
        automation_chain = signature(automation.effect,
                                     args=dummy_result,
                                     kwargs={'config_id': config_id})
        a = automation
        while a.next:
            a = a.next
            automation_chain |= (signature(
                'events.tasks.evaluate_event',
                kwargs={
                    'group_name': group_name,
                    'event_name': event_name
                }) | signature(a.effect, kwargs={'config_id': config_id}))
        automation_chain.apply_async()
Exemple #10
0
    def create_event(self):
        """
        Create an event
        """
        groups = MemberGroup.objects.all()
        if len(groups) == 0:
            self.stdout.write("Your database does not contain any "
                              "member groups.")
            self.stdout.write("Creating a committee.")
            self.create_member_group(Committee)
            groups = MemberGroup.objects.all()
        event = Event()

        event.title_nl = _generate_title()
        event.title_en = event.title_nl
        event.description_nl = _faker.paragraph()
        event.description_en = _faker.paragraph()
        event.start = _faker.date_time_between("-30d", "+120d", _current_tz)
        duration = math.ceil(random.expovariate(0.2))
        event.end = event.start + timedelta(hours=duration)
        event.organiser = random.choice(groups)
        event.category = random.choice(Event.EVENT_CATEGORIES)[0]

        if random.random() < 0.5:
            week = timedelta(days=7)
            event.registration_start = _faker.date_time_between_dates(
                datetime_start=event.start - 4 * week,
                datetime_end=event.start - week,
                tzinfo=_current_tz,
            )
            event.registration_end = _faker.date_time_between_dates(
                datetime_start=event.registration_start,
                datetime_end=event.start,
                tzinfo=_current_tz,
            )
            event.cancel_deadline = _faker.date_time_between_dates(
                datetime_start=event.registration_end,
                datetime_end=event.start,
                tzinfo=_current_tz,
            )

        event.location_nl = _faker.street_address()
        event.location_en = event.location_nl
        event.map_location = event.location_nl
        event.send_cancel_email = False

        if random.random() < 0.5:
            event.price = random.randint(100, 2500) / 100
            event.fine = max(
                5.0,
                random.randint(round(100 * event.price),
                               round(500 * event.price)) / 100,
            )

        if random.random() < 0.5:
            event.max_participants = random.randint(20, 200)

        event.published = random.random() < 0.9

        event.save()
def create_event(request):
    if request.method == 'POST':
        form = EventCreateForm(request.POST, target_user=request.user)
        if form.is_valid():
            title = form.cleaned_data['name']
            description = form.cleaned_data['description']
            event = Event(name=title,
                          description=description,
                          created_by=request.user)
            event.save()
            membership = EventMembership(user=request.user,
                                         event=event,
                                         is_organizer=True,
                                         is_creator=True)
            membership.save()
            messages.success(
                request,
                f"Event successfully created!  Click your event Event Settings button in the "
                f"organizer toolbar to add more members.")
            return redirect('general-home')
    else:
        context = {
            'form': EventCreateForm(target_user=request.user),
            'title': 'New Event'
        }
        return render(request, 'events/create_event.html', context=context)
Exemple #12
0
    def form_valid(self, form):
        # set the submitter to be the current user
        form.instance.user = self.request.user

        # save the posted message
        self.object = form.save()

        # add event to the Event table
        # build a JSON fragment out of the new song info
        event_info = {
            "user": self.object.user.username,
            "time": TimeFilter(self.object.time),
            "text": self.object.text,
        }
        if self.object.user.is_superuser:
            event_info['user_class'] = "superuser"
        elif self.object.user.is_staff:
            event_info['user_class'] = "staff"
        elif self.object.user.is_active:
            event_info['user_class'] = "default"
        else:
            event_info['user_class'] = "none"

        event = Event(audience_type=Event.AUTHENTICATED, event_type="CHAT", event_value=json.dumps(event_info))
        event.save()

        # return 204 NO CONTENT (prevents redirect)
        return HttpResponse(status=204)
    def parse(self, response):
        for event in response.css(".seite-c-single"):
            title = event.css(".article-title::text").extract_first()
            category = event.css(".article-category::text").extract_first()
            desc = event.css(".article-text::text").extract_first()
            href = self.BASE_URL + event.css(".seite-c-single ::attr(href)").extract_first()
            try:
                start = [x.strip() for x in event.css(".date-display-start ::attr(content)").extract_first().split('T')][0]
                start = datetime.datetime.strptime(start, '%Y-%m-%d').strftime('%Y-%m-%d')# %I:%m:%s.%f')
                end = [x.strip() for x in event.css(".date-display-end ::attr(content)").extract_first().split('T')][0]
                end = datetime.datetime.strptime(end, '%Y-%m-%d').strftime('%Y-%m-%d')# %I:%m:%s.%f')#2018-10-21 12:04:26.255181 2018-12-02 12:12:1543708800.000000
            except:
                start = [x.strip() for x in event.css(".date-display-single ::attr(content)").extract_first().split('T')][0]
                start = datetime.datetime.strptime(start, '%Y-%m-%d').strftime('%Y-%m-%d')# %I:%m:%s.%f')
                end = start

            event_object = Event(title=title, start_date=start,
                                 end_date=end,category=category,
                                 link=href,description=desc,
                                 web_source="Co-Berlin")

            serializer = EventSerializer(event_object)
            content = JSONRenderer().render(serializer.data)
            stream = io.BytesIO(content)
            data = JSONParser().parse(stream)
            serializer = EventSerializer(data=data)
            #print(serializer)
            #print(serializer.is_valid())
            serializer.is_valid()
            try:
                serializer.save()
            except IntegrityError as e:
                logger.error(e.__str__())
    def create_event(self,
                     number,
                     series=None,
                     location=None,
                     start_date=None,
                     end_date=None,
                     is_published=True):
        """Create event object.

        Args:
            number: Identifier of the event (int).
            location: Location of the event (Location).
            start_date: Date of the event start (Date).
            end_date: Date of the event end (Date).
            is_published: Boolean if event is public (bool).

        Returns:
            Event object.
        """
        if start_date is None:
            start_date = date.today()
        if end_date is None:
            end_date = date.today()
        event = Event(
            name="Event {}".format(number),
            series=series,
            description="Description for Event {}".format(number),
            start_date=start_date,
            end_date=end_date,
            location=location,
            is_published=is_published,
        )
        event.save()
        return event
Exemple #15
0
def create_tech_event(request):
    user = request.user
    if user.role_set.filter(id=1):
        if request.method == 'POST':
            form = EventForm(request.POST)
            if form.is_valid():
                name = form.cleaned_data['name']
                description = form.cleaned_data['description']
                event_type = 1
                user_id = request.user.id
                date = form.cleaned_data['date']
                event = Event(user=request.user,
                              name=name,
                              description=description,
                              type=event_type,
                              date=date)
                event.save()
                return redirect('http://127.0.0.1:8000/custom_auth/profile/')
            else:
                return render(request, 'new_event.html', {'form': form})
        else:
            form = EventForm()
            return render(request, "new_event.html", {'form': form})
    else:
        return render(request, 'not_permitted.html')
Exemple #16
0
 def test_event_get_occurrences_after(self):
     recurring_event = Event(**self.recurring_data)
     recurring_event.save()
     occurrences = recurring_event.get_occurrences(start=datetime.datetime(2008, 1, 5),
         end=datetime.datetime(2008, 1, 6))
     occurrence = occurrences[0]
     occurrence2 = recurring_event.occurrences_after(datetime.datetime(2008, 1, 5)).next()
     self.assertEqual(occurrence, occurrence2)
Exemple #17
0
 def add_event(code):
     #ToDo: make sure event isn't already in db
     new_event = Event(api_url=api_url,
                       event_start=start_time,
                       title=api_object['name']['html'],
                       event_url=api_object['url'],
                       event_code=code)
     new_event.save()
Exemple #18
0
 def test_get_occurrence(self):
     event = Event(**self.recurring_data)
     event.save()
     occurrence = event.get_occurrence(datetime.datetime(2008, 1, 5, 8, 0))
     self.assertEqual(occurrence.start, datetime.datetime(2008, 1, 5, 8))
     occurrence.save()
     occurrence = event.get_occurrence(datetime.datetime(2008, 1, 5, 8, 0))
     self.assertTrue(occurrence.pk is not None)
Exemple #19
0
 def test_event_retrieve_category_person_time(self):
     test_event = Event(title='@i created this #test')
     test_event.save()
     self.assertEqual(test_event.person, 'i')
     self.assertEqual(test_event.category, 'test')
     self.assertEqual(test_event.time.year, datetime.datetime.now().year)
     self.assertEqual(test_event.time.month, datetime.datetime.now().month)
     self.assertEqual(test_event.time.day, datetime.datetime.now().day)
Exemple #20
0
def select_question(report, question, delta):
    content = '{"question_id":%d}' % question.id
    start = datetime.strptime(report.start, settings.DATE_INPUT_FORMATS[0])
    timestamp = start + timedelta(seconds=delta)
    event = Event(timestamp=timestamp,
                  interview=report,
                  type=Event.QUESTION_SELECTED,
                  content=content)
    event.save()
Exemple #21
0
def create_event(event, course_id):
    NewEvent = Event()
    course = Course.objects.get(course_id=course_id)
    NewEvent.course_id = course
    for k, v in test_events[event].items():
        setattr(NewEvent, k, v)
    NewEvent.save()
    serializer = EventSerializer(NewEvent)
    return JsonResponse(serializer.data, safe=False)
Exemple #22
0
def ListEventsHistory(request, pk):

    context = {}

    prod_obj = get_object_or_404(Event, pk=pk)

    api = ApiDomains()
    url = api.event + "/" + "history"
    #url = 'https://94q78vev60.execute-api.us-east-1.amazonaws.com/Prod/intellidataeventAPI/history'
    payload = {'ident': prod_obj.eventid}

    resp = requests.get(url, params=payload)
    print(resp.status_code)
    obj = get_object_or_404(APICodes, http_response_code=resp.status_code)
    status_message = obj.http_response_message
    mesg = str(resp.status_code) + " - " + status_message

    if resp.status_code != 200:
        # This means something went wrong.
        #raise ApiError('GET /tasks/ {}'.format(resp.status_code))
        #raise APIError(resp.status_code)
        message = {'messages': mesg}
        return render(request, "messages.html", context=message)
    else:
        json_data = []
        dict_data = []
        obj_data = []
        json_data = resp.json()

        #print(json_data[0])
        #print(json_data[1])
        for ix in range(len(json_data)):
            obj = Event()
            #dict_data.append(json.loads(json_data[ix]))
            obj.pk = int(json_data[ix]["LOCAL_ID"])
            obj.eventid = json_data[ix]["EVENT_ID"]
            obj.EventTypeCode = json_data[ix]["EVENT_TYPE_CODE"]
            obj.EventSubjectId = json_data[ix]["EVENT_SUBJECT_ID"]
            obj.EventSubjectName = json_data[ix]["EVENT_SUBJECT_NAME"]
            obj.EventTypeReason = json_data[ix]["EVENT_TYPE_REASON"]

            obj.creator = User.objects.get(pk=int(json_data[ix]["CREATOR"]))
            #obj.crerator = get_object_or_404(User, pk=obj.creatorid)
            obj.EventDate = json_data[ix]["EVENT_DATE"]
            obj.TransactionDate = json_data[ix]["TRANSACTION_DATE"]

            obj.backend_SOR_connection = json_data[ix]["CONNECTION"]
            obj.response = json_data[ix]["RESPONSE"]
            obj.commit_indicator = json_data[ix]["COMMIT_INDICATOR"]
            obj.record_status = json_data[ix]["RECORD_STATUS"]

            obj_data.append(obj)

        context = {'object_list': obj_data}

        return render(request, "events/event_list.html", context=context)
def watchable_postsave(instance, created=False, *args, **kwargs):
    if (not isinstance(instance, WatchableModel)) or not (isinstance(
            instance, ModelWithAuthor)) or not created:
        return
    event = Event()
    event.title = instance.get_title_for_event(instance)
    event.author = instance.author
    event.object = instance
    event.content_type = ContentType.objects.get_for_model(instance)
    event.save()
Exemple #24
0
def migrate_events():
    
    """
    Event Types
    """
    
    
    """
    Events
    """
    
    l_events = EventsEvent.objects.all()
    
    user = User.objects.get(pk=1)
    
    for l_event in l_events:
        
        kwargs = {
            'city': l_event.city,
            'content':  l_event.content,
            'country': l_event.country,
            'created': l_event.created,
            'created_by': user,
            'email': l_event.email,
            'end_date': l_event.end_date,
            'event_type': l_event.event_type,
            'fax': l_event.fax,
            'is_published': l_event.is_published,
            'mobile': l_event.mobile,
            'phone': l_event.phone,
            'post_code': l_event.post_code,
            'published': l_event.published,
            'slug': l_event.slug,
            'start_date': l_event.start_date,
            'state': l_event.state,
            'street': l_event.street,
            'suburb': l_event.suburb,
            'summary': l_event.summary,
            'title': l_event.title,
            'venue': l_event.venue,
            'website': l_event.website,
            'website_name': l_event.website_name,
        }
        
        event = Event(**kwargs)
        
        try:
            event.full_clean()
        except ValidationError, e:
            # Do something based on the errors contained in e.message_dict.
            # Display them to a user, or handle them programatically.
            print e
        else:
            print event
Exemple #25
0
async def create_models(app: Application):
    app['models'].update({
        'message': Message(app.db),
        'company': Company(app.db),
        'unread': UnreadMessage(app.db),
        'invite': Invite(app.db),
        'event': Event(app.db),
        'photo': Photo(app.db),
        'user': User(app.db, {}),
        'notif': Notification(app.db)
    })
Exemple #26
0
def rate_updated(rate, report, question, delta):
    content = '{"new_rating":%d,"old_rating":%d, "question_id":%d}' \
              % (random.randint(1, 9), rate, question.id)
    start = datetime.strptime(report.start, settings.DATE_INPUT_FORMATS[0])
    timestamp = start + timedelta(seconds=delta)
    event = Event(timestamp=timestamp,
                  interview=report,
                  type=Event.RATE_UPDATED,
                  content=content)
    event.save()
    return event
Exemple #27
0
 def setUp(self):
     self.event = Event(Event_name="Coffeebreak",
                        creator="Christoph",
                        description="This is my Coffeebreak",
                        latitude=100.45,
                        longitude=150.45,
                        address="New York, Manhattan",
                        date=datetime.datetime(2008, 11, 22, 19, 53, 42),
                        duration=datetime.timedelta(00, 02, 00, 00),
                        tags="Coffee",
                        image="ME")
Exemple #28
0
    def create(self, validated_data):
        instance = Event()  # .objects.create(**validated_data)
        for field in validated_data:
            if field != 'creator':
                instance.__setattr__(field, validated_data[field])

        user = self.context['request'].user

        instance.creator = user
        instance.save()
        return instance
Exemple #29
0
def rate_created(report, question, delta):
    rate = random.randint(1, 9)
    content = '{"rating":%d, "question_id":%d}' % (rate, question.id)
    start = datetime.strptime(report.start, settings.DATE_INPUT_FORMATS[0])
    timestamp = start + timedelta(seconds=delta)
    event = Event(timestamp=timestamp,
                  interview=report,
                  type=Event.RATE_CREATED,
                  content=content)
    event.save()
    return rate
Exemple #30
0
 def setUp(self):
     self.event = Event(Event_name="Coffeebreak",
                        creator="Christoph",
                        description="This is my Coffeebreak",
                        latitude=100.45,
                        longitude=150.45,
                        address="New York, Manhattan",
                        date="2015-11-10T13:04:48.356000Z",
                        duration="02:00:00",
                        tags="Coffee",
                        image="ME")