Exemple #1
0
def addinfo(*args, **kwargs):
    request = args[0]
    post = request.POST
    try:
        userid=int(post['userid'])
        chnl = post['chnl']
        field_str = post['fields']
    except:
        return HttpResponse(json.dumps({'ret':'WRONG_PARAM','msg':'Wrong parameters'}))
    applies = Apply.objects.filter(user=int(userid), src=chnl)
    if len(applies) < 1:
        return HttpResponse(json.dumps({'ret':'USER_NOT_EXIST','msg':'The user does not exist!'}))
    apply = applies[0]
    import string
    fields = string.split(field_str,';')
    for field in fields:
        if field in request.POST:
            val = request.POST[field]
            setattr(apply, field, val)
            continue
        if field in request.FILES:
            file = request.FILES[field]
            img_name = cert_type.get(field, 'other_voucher')
            img_type = LICENSE_TYPE.IMAGE_TYPE.get(img_name)
            save_image(userid, img_name, file)
            cert_obj = UpgradeVoucher.objects.create(user_id=userid, cert_type=img_type, name=img_name+'.jpg')
            cert_obj.save()

            continue
    apply.save()
    return HttpResponse(json.dumps({'ret':'SUCCESS', 'msg':'We has reset the value of the specified field'}))
Exemple #2
0
def set_attributes(user, apply, request, options):
    post = request.POST
    files= request.FILES
    for field,type in options.items():
        if field not in post and field not in files:
            continue
        if type == 'file':
            if files.get(field) != None:
                value = format_filename(files.get(field).name, field)[0]
                value = get_value(type,value)
        else:
            value = get_value(type,post.get(field))
            if value==None: continue
        setattr(apply,field, value)
        if type == 'file' and files.get(field)!=None:
            img_name = cert_type.get(field, 'other_voucher')
            img_type = LICENSE_TYPE.IMAGE_TYPE.get(img_name)
            save_image(int(user.id), img_name, request.FILES[field])
            cert_obj = UpgradeVoucher.objects.create(user_id=user.id, cert_type=img_type, name=img_name+'.jpg')
            cert_obj.save()
Exemple #3
0
    def save_img_to_nfs(self,uid,name,file,type,state=0):
        if file is not None:
            imgName = save_image(uid,name,file)
            qs = UpgradeVoucher.objects.filter(user_id=uid,\
                                            cert_type = type,\
                                            name=imgName)

            if qs.count() == 0:           
                UpgradeVoucher.objects.create(user_id=uid,
                                            cert_type=type,
                                            name=imgName)
        else:
            qs=UpgradeVoucher.objects.filter(user_id=uid,\
                                            cert_type = type,\
                                            name=name+'.jpg')
            qs.update(state=state)
Exemple #4
0
def upgrade_save_image(request):
    """
    保存异步上传文件的action
    """
    if request.method == "POST":
        result, msg = False, u""
        try:
            for lc_name in request.FILES:
                lc_type = LICENSE_TYPE.IMAGE_TYPE.get(lc_name.lower(), None)
                if lc_type is None:
                    raise Exception(u"不支持的凭证类型!")
                file = request.FILES[lc_name]
                ext = os.path.splitext(file.name)[1].lower()

                if ext not in LICENSE_TYPE.SUPPORTED_IMAGE:
                    raise Exception(u"图片类型错误,支持的图片类型%s" % string.join(LICENSE_TYPE.SUPPORTED_IMAGE, sep="|"))

                imgName = save_image(int(request.user.id), lc_name, file)
                voucherProxy = UpgradeVoucherProxy()
                upgradeProxy = UpgradeProxy()
                voucher = UpgradeVoucher(
                    user_id=request.user.id,
                    cert_type=lc_type,
                    name=imgName,
                    apply_level=upgradeProxy.get_next_level(request.user),
                )

                if voucherProxy.save_voucher(voucher) < 1:
                    raise Exception(u"UpgradeVoucher save error!")
                else:
                    msg = imgName
                    result = True
        except Exception, e:
            _logerror.exception(e)
            msg = e.message

        return HttpResponse(json.dumps({"succeed": result, "msg": msg}))