예제 #1
0
def deleteUserPost(request):
    global personne
    if request.user.is_superuser:
        is_error = 0
        try:
            idUtilisateur = request.POST["idUtilisateur"]
            utilisateur = Utilisateur.objects.filter(
                idUtilisateur=idUtilisateur)[0]
            personne = Personne.objects.filter(utilisateur=utilisateur)[0]
            personne.estSupprimer = 1
            personne.save()
            log = Log()
            log.utilisateur = request.user.username
            log.action = "Suppression  utilisateur " + utilisateur.user.username
            log.save()
        except:
            is_error = 1
        if is_error == 0:
            #return redirect(listeUsers)
            message = u"Utilisateur " + decodeString(
                personne.nomPersonne) + " " + decodeString(
                    personne.prenomPersonne) + u" supprimé avec succès"
        else:
            message = "error"
        return HttpResponse(message)
예제 #2
0
파일: views.py 프로젝트: youriyav/teranga
def activerRestaurant(request,idRestaurant):
    global myfile, restaurant
    if  request.user.is_authenticated():
        if request.user.is_superuser :
            global ckeck
            try:
                restaurant=Restaurant.objects.filter(idRestaurant=idRestaurant)[0]
                check=1
            except:
                check=0
            if check ==1:
                restaurant.estDesactiver=0
                restaurant.save()
                log = Log()
                log.utilisateur = request.user.username
                log.action = "activation restaurant " + decodeString(
                    restaurant.nomRestaurant) + " pour l'entite " + decodeString(
                    restaurant.entite.nomEntite)
                log.save()
                messages.success(request, 'Restaurant activé avec succès')
                return redirect(profilEntite, restaurant.entite.idEntit)
            else:
                message = "page introuvable"
                return render(request, '404.html', locals())
예제 #3
0
def activerFormule(request, idFormule):
    if request.user.is_authenticated():
        if request.user.is_superuser or request.user.utilisateur.isManager == 0:
            is_error = 0
            try:
                forlmule = Formule.objects.filter(idFormule=idFormule)[0]
            except:
                is_error = 1
            if is_error == 0:
                forlmule.estDesactiver = 0
                forlmule.save()
                log = Log()
                log.utilisateur = request.user.username
                log.action = u"Activation formule pour entité " + decodeString(
                    forlmule.entite.nomEntite)
                log.save()
                messages.success(request, u'formule activée avec succès')
                return redirect(listeFormule, forlmule.entite.idEntit)
            else:
                message = "page introuvable"
                return render(request, '404.html', locals())
예제 #4
0
파일: views.py 프로젝트: youriyav/teranga
def showOnMapRestaurant(request):
    global message, restaurant
    if  request.user.is_authenticated():
        if request.user.is_superuser :
            idRestaurant = request.POST["idRestaurant"]
            is_error = 0
            try:
                restaurant = Restaurant.objects.filter(idRestaurant=idRestaurant)[0]
            except:
                is_error = 1
            if is_error == 0:
                restaurant.estSupprimer = 1
                restaurant.save()
                log = Log()
                log.utilisateur = request.user.username
                log.action = u"suppréssion  du restaurant " + decodeString(restaurant.entite.nomEntite)
                log.save()
                message = u"Restaurant supprimé avec succès"
            else:
                message = "error"
            return HttpResponse(message)
예제 #5
0
def creerFormule(request, idEntite):
    if request.user.is_authenticated():
        if request.user.is_superuser or request.user.utilisateur.isManager == 0:
            is_error = 0
            try:
                entite = Entite.objects.filter(idEntit=idEntite)[0]
            except:
                is_error = 1
            if is_error == 0:
                if request.POST:
                    libelle = request.POST["libelle"]
                    descript = request.POST["descript"]
                    prix = request.POST["prix"]
                    if libelle == "":
                        is_error = 1
                        error_libelle = "veuillez remplier ce champs"
                    if prix == "":
                        is_error = 1
                        error_prix = "veuillez remplier ce champs"
                    else:
                        try:
                            int(prix)
                        except:
                            is_error = 1
                            error_prix = "champs incorrect"
                    save_plus = request.POST.getlist('save_and')
                    try:
                        myfile = request.FILES['logo']
                    except:
                        error_logo = "veuillez selectionner une image"
                        is_error = 1
                    if is_error == 0:
                        entite_folder = "C:/Users/root/PycharmProjects/senfood/static/images/uploads/" + decodeString(
                            entite.nomEntite)
                        last = myfile.name[myfile.name.rfind("."):len(myfile.
                                                                      name)]
                        forlmule = Formule()
                        forlmule.nomFormule = libelle
                        forlmule.descriptFormule = descript
                        forlmule.prixFormule = prix
                        forlmule.entite = entite
                        forlmule.createurFormule = request.user
                        forlmule.save()
                        logo_name = "form_" + decodeString(
                            entite.nomEntite) + "_" + str(
                                forlmule.idFormule) + last
                        forlmule.logoFormule = "images/uploads/" + decodeString(
                            entite.nomEntite) + "/" + logo_name
                        forlmule.save()
                        destination = open(
                            os.path.join(entite_folder, logo_name), 'wb+')
                        for chunk in myfile.chunks():
                            destination.write(chunk)
                        destination.close()
                        log = Log()
                        log.utilisateur = request.user.username
                        log.action = u"Création formule pour entité " + decodeString(
                            entite.nomEntite)
                        log.save()
                        messages.success(request,
                                         u'formule ajoutée avec succès')
                        try:
                            _next = int(save_plus[0])
                        except:
                            _next = 0
                        if _next == 0:
                            return redirect(listeFormule, idEntite)
                        else:
                            libelle = ""
                            descript = ""
                            prix = ""
                            return render(request, 'nouveau_formule.html',
                                          locals())
                    else:
                        return render(request, 'nouveau_formule.html',
                                      locals())
                else:

                    return render(request, 'nouveau_formule.html', locals())
            else:
                message = "page introuvable"
                return render(request, '404.html', locals())
예제 #6
0
def modifierFormule(request, idFormule):
    if request.user.is_authenticated():
        if request.user.is_superuser or request.user.utilisateur.isManager == 0:
            is_error = 0
            try:
                forlmule = Formule.objects.filter(idFormule=idFormule)[0]
                entite = Entite.objects.filter(formule=forlmule)[0]
            except:
                is_error = 1
            if is_error == 0:
                if request.POST:
                    is_image_change = 0
                    libelle = request.POST["libelle"]
                    descript = request.POST["descript"]
                    prix = request.POST["prix"]
                    if libelle == "":
                        is_error = 1
                        error_libelle = "veuillez remplier ce champs"
                    if prix == "":
                        is_error = 1
                        error_prix = "veuillez remplier ce champs"
                    else:
                        try:
                            int(prix)
                        except:
                            is_error = 1
                            error_prix = "champs incorrect"
                    try:
                        myfile = request.FILES['logo']
                    except:
                        is_image_change = 1
                    if is_error == 0:
                        forlmule.nomFormule = libelle
                        forlmule.descriptFormule = descript
                        forlmule.prixFormule = prix
                        if is_image_change == 0:
                            entite_folder = "C:/Users/root/PycharmProjects/senfood/static/images/uploads/" + decodeString(
                                forlmule.entite.nomEntite)
                            last = myfile.name[myfile.name.
                                               rfind("."):len(myfile.name)]
                            logo_name = "form_edit" + str(
                                forlmule.estModifier + 1) + "_" + decodeString(
                                    forlmule.entite.nomEntite) + "_" + str(
                                        forlmule.idFormule) + last
                            forlmule.logoFormule = "images/uploads/" + decodeString(
                                forlmule.entite.nomEntite) + "/" + logo_name
                            destination = open(
                                os.path.join(entite_folder, logo_name), 'wb+')
                            for chunk in myfile.chunks():
                                destination.write(chunk)
                            destination.close()
                        forlmule.estModifier = forlmule.estModifier + 1
                        forlmule.save()
                        log = Log()
                        log.utilisateur = request.user.username
                        log.action = u"Modification formule pour entité " + decodeString(
                            forlmule.entite.nomEntite)
                        log.save()
                        messages.success(request,
                                         u'formule modifiée avec succès')
                        return redirect(listeFormule, forlmule.entite.idEntit)
                    else:
                        return render(request, 'editer_formule.html', locals())
                else:
                    libelle = forlmule.nomFormule
                    prix = forlmule.prixFormule
                    descript = forlmule.descriptFormule
                    return render(request, 'editer_formule.html', locals())
            else:
                message = "page introuvable"
                return render(request, '404.html', locals())
예제 #7
0
파일: views.py 프로젝트: youriyav/teranga
def createRestaurant(request,idEntite):
    global myfile, entite
    if  request.user.is_authenticated():
        if request.user.is_superuser :
            global ckeck
            try:
                entite = Entite.objects.filter(idEntit=idEntite)[0]
                check=1
            except:
                check=0
            if check ==1:
                if request.POST:
                    is_error = 0
                    nom = request.POST["nom"]
                    quartier = request.POST["quartier"]
                    email = request.POST["email"]
                    numero = request.POST["numero"]
                    latitude = request.POST["latitude"]
                    longitude = request.POST["longitude"]
                    # couleur=request.POST["coleur"]
                    save_plus = request.POST.getlist('save_and')
                    if latitude == "":
                        error_latitude = "veuiller remplir ce champs"
                        is_error = 1
                    if longitude == "":
                        error_longitude = "veuiller remplir ce champs"
                        is_error = 1
                    if nom == "":
                        errer_nom = "veuiller remplir ce champs"
                        is_error = 1
                    if quartier == "":
                        error_quartier = "veuiller remplir ce champs"
                        is_error = 1
                    if email == "":
                        error_email = "veuiller remplir ce champs"
                        is_error = 1
                    else:
                        if re.search(r"^[a-z0-9._-]+@[a-z0-9._-]+\.[a-z]+", email) is None:
                            is_error = 1
                            error_email = "email incorrect"
                    if numero == "":
                        error_numero = "veuiller remplir ce champs"
                        is_error = 1
                    else:
                        if re.search(r"^[0-9]{9}$", numero) is None:
                            is_error = 1
                            error_numero = "numero incorrect"
                    try:
                        myfile = request.FILES['logo']
                    except:
                        error_logo = "veuillez selectionner une image"
                        is_error = 1
                    # fs = FileSystemStorage()
                    if is_error == 0:
                        restaurant=Restaurant()
                        restaurant.nomRestaurant=nom
                        restaurant.numeroRestaurant=numero
                        restaurant.emailRestaurant=email
                        restaurant.createurRestaurant=request.user
                        restaurant.entite=entite
                        restaurant.quartierRestaurant=quartier
                        restaurant.longiRestaurant=longitude
                        restaurant.latiRestaurant=latitude
                        entite_folder = "C:/Users/root/PycharmProjects/senfood/static/images/uploads/"
                        save_path = "C:/Users/root/PycharmProjects/senfood/static/images/uploads/" +decodeString(entite.nomEntite)
                        logo_name = "restau_" + nom + "_" + myfile.name
                        destination = open(os.path.join(save_path, logo_name), 'wb+')
                        restaurant.logoRestaurant = "images/uploads/" + decodeString(entite.nomEntite) + "/" + logo_name
                        restaurant.save()
                        for chunk in myfile.chunks():
                            destination.write(chunk)
                        destination.close()

                        log = Log()
                        log.utilisateur = request.user.username
                        log.action = "Creation restaurant " + nom+" pour l'entite "+decodeString(entite.nomEntite)
                        messages.success(request, 'Restaurant ajouté avec succès')
                        try:
                            _next = int(save_plus[0])
                        except:
                            _next = 0

                        if _next == 0:
                            v=5
                            #return render(request, 'creationRestaurant.html', locals())
                            return redirect(profilEntite,idEntite)
                        else:
                            nom = ""
                            quartier = ""
                            email = ""
                            numero = ""
                            longitude=""
                            latitude=""
                            return render(request, 'creationRestaurant.html', locals())
                    else:
                        # entite=Entite()
                        # entite.nomEntite=nom
                        # entite.sloganEntite=slogan
                        # entite.emailEntite=email
                        # entite.numeroEntite=numero
                        return render(request, 'creationRestaurant.html', locals())
                else:
                    return render(request, 'creationRestaurant.html', locals())
            else:
                message = "page introuvable"
                return render(request, '404.html', locals())
예제 #8
0
파일: views.py 프로젝트: youriyav/teranga
def regenererTokenMobil(request):
    global var_tmp, validation
    idClient = request.POST["idClient"]
    is_error = 0
    try:
        client = Client.objects.filter(idclient=idClient)[0]
        validation = Validation.objects.filter(client=client,
                                               estValider=0,
                                               estSupprimer=0).last()
    except:
        is_error = 1
    if is_error == 0:
        validations = Validation.objects.filter(client=validation.client)
        if validations.count() < 3:
            validation.estSupprimer = 1
            validation.save()
            validation1 = Validation()
            validation1.client = validation.client
            check = 0
            exist = 0
            listeValidation = Validation.objects.filter(estSupprimer=0)
            while check == 0:
                var_tmp = ""
                while len(var_tmp) < 6:
                    d = randint(0, 9)
                    var_tmp = var_tmp + str(d)
                for validati in listeValidation:
                    if validati.keyValidation == var_tmp:
                        exist = 1
                if exist == 0:
                    check = 1
            validation1.keyValidation = var_tmp
            validation1.estConfirmer = 1
            validation1.save()
            data_message = {
                "code": var_tmp,
                "numero": validation.client.personne.numeroPersonne
            }
            sendSms(validation.client.personne.numeroPersonne, var_tmp)
            log = Log()
            log.utilisateur = request.user.username
            log.action = u"regénération token pour validation compte client pour " + decodeString(
                validation.client.user.username)
            log.save()
            data = '{"statut":200}'
            return HttpResponse(data)
        else:
            date_save = datetime.strftime(validations.last().dateCreation,
                                          '%Y-%m-%d %H:%M:%S')
            currentDate = datetime.now()
            diff = currentDate - datetime.strptime(date_save,
                                                   '%Y-%m-%d %H:%M:%S')
            res = diff.seconds / 60
            if res < 60:
                tmp = 60 - res
                data = '{"statut":202,"delai":' + str(tmp) + '}'
                return HttpResponse(data)
            else:
                validation.estSupprimer = 1
                validation.save()
                validation1 = Validation()
                validation1.client = validation.client
                check = 0
                exist = 0
                listeValidation = Validation.objects.filter(estSupprimer=0)
                while check == 0:
                    var_tmp = ""
                    while len(var_tmp) < 6:
                        d = randint(0, 9)
                        var_tmp = var_tmp + str(d)
                    for validati in listeValidation:
                        if validati.keyValidation == var_tmp:
                            exist = 1
                    if exist == 0:
                        check = 1
                validation1.keyValidation = var_tmp
                validation1.estConfirmer = 1
                validation1.save()
                data_message = {
                    "code": var_tmp,
                    "numero": validation.client.personne.numeroPersonne
                }
                sendSms(validation.client.personne.numeroPersonne, var_tmp)
                log = Log()
                log.utilisateur = request.user.username
                log.action = u"regénération token pour validation compte client pour " + decodeString(
                    validation.client.user.username)
                log.save()
                data = '{"statut":200}'
                return HttpResponse(data)

    else:
        return HttpResponse("error", status=403)