Esempio n. 1
0
def saveSettings(request):

    print(
        "saveSettings: =========================================================="
    )

    if request.user.is_authenticated:
        refreshLastOnline(request.user)

    if request.user.is_authenticated:  # != True:

        if request.method == "POST":

            userType = UserType.GetUserType(request.user)

            print('тип юзера: ' + str(userType))

            if userType == 1:

                #print("СОХРАНЯЕМ НАСТРОЙКИ SAVE================================================================================")
                #print(request.read())
                #print(request.FILES)
                #print(request.POST)
                #
                #print("================================================================================")

                if request.POST.__contains__('data'):

                    print("Сохраняем рабочего")

                    print(request.POST.__getitem__('data'))

                    try:
                        print("Перед json.loads")
                        data = dict(
                            json.loads(request.POST.__getitem__('data')))
                        print("После json.loads")

                        setWorker(request.user, data)

                    except Exception as e:

                        print('Не удалось сохранить профиль')
                        if request.is_ajax():
                            return JsonResponse({
                                'status':
                                False,
                                'errors':
                                'Не удалось сохранить профиль',
                                'csrfmiddlewaretoken':
                                csrf.get_token(request)
                            })
                        else:
                            return HttpResponse(settings.HOME_PAGE +
                                                'servererror/')

                if request.is_ajax():

                    return JsonResponse({
                        'status':
                        True,
                        'csrfmiddlewaretoken':
                        csrf.get_token(request)
                    })

                else:
                    return HttpResponse(settings.HOME_PAGE + 'success/')

            elif userType == 2:

                if request.POST.__contains__('data'):

                    print("Сохраняем компанию")

                    print(request.POST.__getitem__('data'))

                    data = dict(json.loads(request.POST.__getitem__('data')))

                    Company.UpdateCompany(user=request.user, data=data)

                if request.is_ajax():

                    return JsonResponse({
                        'status':
                        True,
                        'csrfmiddlewaretoken':
                        csrf.get_token(request)
                    })

                else:

                    return HttpResponse(settings.HOME_PAGE + 'success/')

            else:

                if request.is_ajax():

                    return JsonResponse({
                        'status':
                        False,
                        'csrfmiddlewaretoken':
                        csrf.get_token(request)
                    })

                else:

                    return HttpResponse(settings.HOME_PAGE + 'servererror/',
                                        status=500)

        else:

            if request.is_ajax():

                return JsonResponse({
                    'status':
                    False,
                    'csrfmiddlewaretoken':
                    csrf.get_token(request)
                })

            else:

                return HttpResponse(settings.HOME_PAGE + 'notfound/',
                                    status=404)
    else:

        if request.is_ajax():

            return JsonResponse({
                'status': False,
                'csrfmiddlewaretoken': csrf.get_token(request)
            })

        else:

            return HttpResponse(settings.HOME_PAGE + 'forbiden/', status=403)