def createpost(request): if request.method == 'POST': if request.POST['type'] == "1": category = request.POST.get('category', None) expiration = request.POST.get('expiration', None) lokacija = request.POST.get('City', None) pozicija = request.POST.get('pozicija', None) godineIskustva = request.POST.get('godineIskustva') strucnasprema = request.POST.get('strucnasprema', None) email = request.POST.get('email', None) brojTel = request.POST.get('brojTel', None) opis = request.POST.get('opis', None) type = request.POST.get('type', None) brojIzv = request.POST.get('brojIzvr', None) if type == '1': title = request.POST.get('naslov', None) else: title = pozicija + category if request.FILES.get('image_uploads', None): myfile = request.FILES['image_uploads'] #if myfile._size > 5242880: # sweetify.sweetalert(request, title="Datoteka prevelika", text="Vaša datoteka prelazi maksimalnu veličinu od 5 MB", icon="error", timer=10000) # return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) #else: fs = FileSystemStorage() myfile.name.encode('utf-8') filename = fs.save(myfile.name, myfile) uploaded_file_url = fs.url(filename) else: myfile = None args = [ title, category, expiration, lokacija, pozicija, godineIskustva, email, brojTel, opis, type, brojIzv ] keys = [ 'naslov', 'category', 'expiration', ' City', 'pozicija', 'godineIsku', 'strucnasprema', 'email', 'brojTel', 'opis', 'type', 'brojIzvr' ] argErr = [ "Naslov", "Kategorija", 'Trajanje', 'Lokacija', 'Pozicija', 'Godine iskustva', 'Sprema', 'Kontakt Email', 'Kontakt Telefon', 'Vrsta', 'Broj izrsitelja' ] valid = validationWithKeys(request, args, keys, argErr) if valid is not True: return HttpResponseRedirect( request.META.get('HTTP_REFERER', '/').split('?')[0] + valid) cat = Category.objects.get(name=category) post = Post(userID=request.user, brojIzvrsitelja=brojIzv, categoryID=cat, title=title, region="BiH", location=lokacija, position=pozicija, type=type, specialty=strucnasprema, experience=godineIskustva, contact_email=email, contact_phone=brojTel, content=opis) tz = pytz.timezone('Europe/Sarajevo') if expiration is not '0': post.expires_at = tz.localize(datetime.now() + timedelta(days=int(expiration))) else: post.expires_at = tz.localize(datetime.now() + timedelta(days=365 * 200)) #post.expires_at = datetime.now()+timedelta(years=999) post.attachment = myfile post.save() post.url = post.generateSlug post.save() postcat = PostCategories(postID=post, categoryID=cat) postcat.save() sweetify.success(request, title="Uspješno kreiran oglas", text="", icon="success", timer=8000) return redirect('showpost', post.slugifyName, post.url) else: type = request.POST['type'] btobtype = request.POST.get('b2btype', None) category = request.POST.get('category', None) kanton = request.POST.get('kanton', None) trajanje = request.POST.get('expiration', None) email = request.POST['email'] brojTel = request.POST['brojTel'] opis = request.POST['opis'] if request.FILES.get('image_uploads', None): myfile = request.FILES['image_uploads'] #if myfile._size > 5242880: # sweetify.sweetalert(request, title="Datoteka prevelika", # text="Vaš CV prelazi maksimalnu veličinu od 5 MB", icon="error", timer=10000) #return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/')) #else: fs = FileSystemStorage() filename = fs.save(myfile.name, myfile) uploaded_file_url = fs.url(filename) else: myfile = None args = [ type, btobtype, category, kanton, trajanje, email, brojTel, opis ] keys = [ 'type', 'b2btype', 'category', 'kanton', 'trajanje', 'email', 'brojTel', 'opis' ] argErr = [ '', "Trazim/Nudim", "Kategorija", 'Kanton', 'Trajanje', 'Email', 'Broj Telefona', 'Opis' ] valid = validationWithKeys(request, args, keys, argErr) if valid is not True: return HttpResponseRedirect( request.META.get('HTTP_REFERER', '/').split('?')[0] + valid) cat = Category.objects.get(name=category) if category == 'Finansijske': title = 'Finansijske' elif category == "Osiguravajuće": title = "Osiguravajuće" else: if btobtype == '1': title = "Ponuda" elif btobtype == '2': title = "Potražnja" else: title = "Partnerstvo" if category == 'Finansijske' or category == "Osiguravajuće": position = request.POST['position'] else: position = "" post = Post(attachment=myfile, position=position, title=title, userID=request.user, categoryID=cat, type=int(type), b2b_type=int(btobtype), region=kanton, expires_at=datetime.now() + timedelta(days=int(trajanje)), contact_email=email, contact_phone=brojTel, content=opis) post.save() post.url = post.generateSlug post.save() postCategories = PostCategories(postID=post, categoryID=cat) postCategories.save() sweetify.success(request, title="Uspješno kreiran oglas", icon="success", timer=8000) return redirect('showpost', post.slugifyName, post.url) return redirect('home')