コード例 #1
0
ファイル: user_views.py プロジェクト: Yomy1298/YakaChoisir
def user_information(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    user_info = myUser.objects.get(user=request.user)

    god = False
    if request.user.is_authenticated:
        if len(
                AssociationsManager.objects.filter(user_id=myUser.objects.get(
                    user=request.user))):
            god = True
    email_user = user_info.user.email
    email_user = re.search('[@].....', email_user)
    if email_user.group(0) == "@epita":
        isfrom = "interne"
        url_photo = 'https://photos.cri.epita.net/' + user_info.user.username
    else:
        isfrom = "externe"
        url_photo = "https://pikmail.herokuapp.com/" + user_info.user.email + "?size=200"
    return render(
        request, 'user_settings/user_settings.html', {
            'user_info': user_info,
            'god': god,
            'url_photo': url_photo,
            'isfrom': isfrom
        })
コード例 #2
0
def event(request):
    events = []
    allEvents = Event.objects.all()
    for e in allEvents:
        if e.validated:
            if e.date_begin >= timezone.now():
                events.append(e)
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    return render(request, 'event/page_event.html', {'events': events})
コード例 #3
0
def my_association(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    my_user = myUser.objects.get(user=request.user)
    member = Members.objects.filter(user_id=my_user)
    associations = []
    for m in member:
        associations.append(Association.objects.get(name=m.association_id))
    return render(request, 'association/my_association.html/',
                  {'associations': associations})
コード例 #4
0
def create_association(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    already = False
    if request.method == 'POST':
        form = createAssociationForm(request.POST, request.FILES)
        name = form.data['name']
        description = form.data['description']
        date_creation = form.data['date_creation']
        photo = request.FILES['photo']
        site = form.data['site']
        mail = form.data['mail']
        statut = form.data['statut']  # status juridique
        assoc = Association(name=name,
                            date_creation=date_creation,
                            description=description,
                            photo=photo,
                            site=site,
                            mail=mail,
                            statut=statut)
        if len(Association.objects.filter(name=name)):
            already = True
            return render(request, 'association/create_association.html',
                          locals())
        assoc.save()
        president = Members(
            user_id=myUser.objects.get(id=form.data["president"]),
            association_id=assoc,
            role="Président")
        president.save()
        vicepresident = Members(
            user_id=myUser.objects.get(id=form.data["vicepresident"]),
            association_id=assoc,
            role="Vice-Président")
        vicepresident.save()
        tresorier = Members(
            user_id=myUser.objects.get(id=form.data["secretaire"]),
            association_id=assoc,
            role="Trésorier")
        tresorier.save()
        secretaire = Members(
            user_id=myUser.objects.get(id=form.data["tresorier"]),
            association_id=assoc,
            role="Secrétaire")
        secretaire.save()
        return render(request, 'home/index.html')
    form = createAssociationForm()
    return render(request, 'association/create_association.html', locals())
コード例 #5
0
def association(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    manager = False
    if request.user.is_authenticated and len(
            AssociationsManager.objects.filter(user_id=myUser.objects.get(
                user=request.user))):
        manager = True
    associations = Association.objects.all()
    return render(request, 'association/association.html/', {
        'associations': associations,
        'manager': manager
    })
コード例 #6
0
ファイル: home_views.py プロジェクト: Yomy1298/YakaChoisir
def home(request):
    events = []
    first = []
    thirty = []
    numbers = []
    allEvents = Event.objects.all()
    cpt = 0
    now = datetime.datetime.utcnow().replace(tzinfo=pytz.UTC)
    for e in allEvents:
        aware = datetime.datetime(e.date_begin.year, e.date_begin.month,
                                  e.date_begin.day, e.date_begin.hour,
                                  e.date_begin.minute, e.date_begin.second, 0,
                                  pytz.UTC)
        if e.date_begin > now and datetime.timedelta(
                days=30) + now >= aware >= now and e.validated:
            thirty.append(e)
        if cpt == 0 and e.premium and aware > now and e.validated:
            first.append(e)
            cpt = cpt + 1
            continue
        if e.validated and e.premium and cpt > 0 and aware >= now:
            events.append(e)
            numbers.append(cpt)
            cpt = cpt + 1
            continue

    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    '''if request.method == 'GET':
        search = request.GET.get('search_box')
        if search:
            res_event = Event.objects.filter(title=search)
            res_asso = Association.objects.filter(name=search)
            if len(res_event):
                return render(request, 'event/specific_event.html', {'res_event': res_event})
            if len(res_asso):
                asso = Association.objects.get(id=res_asso[0].id)
                return render(request, 'association/specific_association.html', {'res_asso': asso})'''

    return render(request, 'home/index.html', {
        'events': events,
        'first': first,
        'numbers': numbers,
        'thirty': thirty
    })
コード例 #7
0
def modify_event(request, event_id):
    god = False
    if request.user.is_authenticated:
        if request.user.is_authenticated and len(
                AssociationsManager.objects.filter(user_id=myUser.objects.get(
                    user=request.user))):
            god = True
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    res_event = Event.objects.get(id=event_id)
    if request.method == 'POST':
        form = modifyEventForm(request.POST, request.FILES, event=res_event)
        res_event.title = form.data['title']
        res_event.description = form.data['description']
        res_event.price = form.data['price']
        res_event.place = form.data['place']
        res_event.size_intern = form.data['size_intern']
        res_event.size_extern = form.data['size_extern']
        res_event.date_begin = form.data['date_begin']
        res_event.date_end = form.data['date_end']
        res_event.date_deadline = form.data['date_deadline']
        res_event.photo = request.FILES['photo']
        res_event.premium = form.data['prenium']
        res_event.save()
        creer = True

        l = Attend.objects.filter(event_id=event_id)
        for x in l:
            mail = x.user_id.user.email
            obj = "[modification évènement]" + res_event.title
            message = "L'évènement a été modifié, nous vous invitons à vous rendre sur le site web pour" \
                      "en prendre connaissance. <br> " \
                      "Merci <br>"
            msg = EmailMessage(obj, message, to=[mail])
            msg.content_subtype = "html"
            msg.send()

    else:
        form = modifyEventForm(request.GET, event=res_event)
    return render(request, 'event/change_event.html', locals(), {
        'event_id': event_id,
        'god': god
    })
コード例 #8
0
ファイル: user_views.py プロジェクト: Yomy1298/YakaChoisir
def user_modify(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    user_to_modify = myUser.objects.get(user=request.user)
    if request.method == 'POST':
        form = modifyUser(request.POST)
        if form.data['mail_secondary'] != "":
            user_to_modify.mail_secondary = form.data['mail_secondary']
        if form.data['gender'] != "":
            user_to_modify.gender = form.data['gender']
        user_to_modify.save()
        return render(request, 'user_settings/user_settings.html',
                      {'user_info': user_to_modify})
    form = modifyUser()
    return render(request, 'user_settings/modify_user.html', locals(),
                  {'user_info': user_to_modify})
コード例 #9
0
def create_event(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    if request.method == 'POST':
        form = createEventForm(request.POST, request.FILES)
        assoc_name = form.data['association_name']
        title = form.data['title']
        description = form.data['description']
        price = form.data['price']
        place = form.data['place']
        size_intern = form.data['size_intern']
        size_extern = form.data['size_extern']
        date_begin = form.data['date_begin']
        date_end = form.data['date_end']
        date_deadline = form.data['date_deadline']
        photo = request.FILES['photo']
        boutique = form.data['boutique']  #TODO
        token = form.data['token']
        assoc = Association.objects.get(id=assoc_name)
        newEvent = Event(association_id=assoc,
                         title=title,
                         date_begin=date_begin,
                         date_end=date_end,
                         date_deadline=date_deadline,
                         validated=True,
                         description=description,
                         price=price,
                         boutique=boutique,
                         place=place,
                         photo=photo,
                         size_intern=size_intern,
                         size_extern=size_extern,
                         token_staff=token)
        newEvent.save()
        creer = True
    else:
        form = createEventForm()
    assos = Association.objects.all()
    return render(request, 'event/create_event.html', locals(),
                  {'assos': assos})
コード例 #10
0
def specific_association(request, asso_id):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    res_asso = Association.objects.get(id=asso_id)
    office = False
    if request.user.is_authenticated:
        if len(
                AssociationsManager.objects.filter(user_id=myUser.objects.get(
                    user=request.user))):
            office = True
        asso_member = Members.objects.filter(association_id=res_asso)
        for member in asso_member:
            if member.user_id == myUser.objects.get(
                    user=request.user) and member.role != "Membre":
                office = True
    return render(request, 'association/specific_association.html', {
        'res_asso': res_asso,
        "office": office
    })
コード例 #11
0
def my_event(request):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    my_user = myUser.objects.get(user=request.user)
    god = False
    if request.user.is_authenticated:
        if len(
                AssociationsManager.objects.filter(user_id=myUser.objects.get(
                    user=request.user))):
            god = True

    events = []
    event_id = Attend.objects.filter(user_id=my_user)
    for e in event_id:
        if e.event_id.date_begin >= timezone.now():
            events.append(e.event_id)
    return render(request, 'event/my_event.html/', {
        'my_event': events,
        'god': god
    })
コード例 #12
0
def specific_event(request, event_id):
    god = False
    if request.user.is_authenticated:
        if len(
                AssociationsManager.objects.filter(user_id=myUser.objects.get(
                    user=request.user))):
            god = True
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    res_event = Event.objects.filter(id=event_id)
    if len(res_event):
        inscrit = False
        if request.user.is_authenticated:
            user = myUser.objects.get(user=request.user)
            if len(Attend.objects.filter(user_id=user, event_id=event_id)):
                inscrit = True
        return render(request, 'event/specific_event.html', {
            'res_event': res_event,
            'inscrit': inscrit,
            'god': god
        })
    return render(request, 'not_found.html')
コード例 #13
0
def modify_association(request, asso_id):
    if request.method == 'GET':
        something = base_views.search(request)
        if something:
            return something
    if request.method == 'POST':
        form = mod_asso(request.POST, request.FILES)
        asso = Association.objects.get(id=asso_id)
        if form.data['description'] != "":
            asso.description = form.data['description']
        asso.photo = request.FILES['photo']
        if form.data['site'] != "":
            asso.site = form.data['site']
        if form.data['mail'] != "":
            asso.mail = form.data['mail']
        if form.data['statut'] != "":
            asso.status = form.data['statut']
        asso.save()
        return render(request, 'association/specific_association.html',
                      {'res_asso': asso})
    form = mod_asso()
    asso = Association.objects.get(id=asso_id)
    return render(request, 'association/modify_association.html', locals(),
                  {'asso': asso})