Example #1
0
def edit_article(id):
    # Create cursor
    cur = mysql.connection.cursor()

    # Get article by id
    cur.execute('SELECT * FROM articles WHERE id = %s', [id])
    article = cur.fetchone()

    # Create form
    form = ArticleForm(request.form)

    # populate fields
    form.title.data = article['title']
    form.body.data = article['body']

    if request.method == 'POST' and form.validate():
        title = request.form['title']
        body = request.form['body']

        # Update table
        cur.execute(
            'UPDATE articles SET title = %s, body = %s, edit_date = CURRENT_TIMESTAMP WHERE id = %s',
            (title, body, id))

        # Commit
        mysql.connection.commit()

        # close cursor
        cur.close()

        flash(f'Article {id} Updated', 'success')
        return redirect(url_for('.dashboard'))
    return render_template('edit_article.html', form=form)
Example #2
0
def parse_xml_file(file):
	context = etree.iterparse(file)
	article_dict = {}
	date_dict = {}
	articles = []
	
	tokenizer = nltk.data.load('tokenizers/punkt/english.pickle')
	
	for action, elem in context:
		if not elem.text:
			text = "None"
		else:
			text = elem.text
		if elem.tag == "article":
			articles.append(article_dict)
			article = ArticleForm(article_dict, tokenizer=tokenizer)
			article.save()
			article_dict = {}
		elif elem.tag == "day" or elem.tag == "month" or elem.tag == "year":
			date_dict[elem.tag] = text
		elif elem.tag == "date":
			month_name = date_dict['month']
			month_number = strptime(month_name, '%B').tm_mon
			date = datetime.date(int(date_dict['year']), month_number, int(date_dict['day']))
			article_dict["date"] = date
			date_dict = {}
		else:
			article_dict[elem.tag] = text
Example #3
0
def edit_article(id):
    # Create cursor
    cur = mysql.connection.cursor()
    # Get article by id
    result = cur.execute("SELECT * FROM articles WHERE id=%s", [id])
    article = cur.fetchone()
    # Get form
    form = ArticleForm(request.form)
    # Populate article form fields
    form.title.data = article['title']
    form.body.data = article['body']
    if request.method == 'POST' and form.validate():
        title = request.form['title']
        body = request.form['body']
        # Create cursor
        cur = mysql.connection.cursor()
        # Execute
        cur.execute("UPDATE articles SET title=%s, body=%s WHERE id=%s",
                    (title, body, id))
        # Commit to DB
        mysql.connection.commit()
        # Close connection
        cur.close()
        flash('Article Updated', 'success')
        return redirect(url_for('dashboard'))
    return render_template('edit_article.html', form=form)
Example #4
0
def update(blog_id):
    if not session.get('logged_in'):
        abort(404)
    else:
        form = ArticleForm()
        if request.method == 'POST':
            if form.validate() == False:
                return render_template('add.html', form=form)
            else:

                g.db = connect_db()
                cur = g.db.execute('UPDATE fblog SET title =' +
                                   form.title.data + ', content =' +
                                   form.content.data + ' WHERE blog_id=' +
                                   str(blog_id))
                g.db.commit()
                g.db.close()
                flash('Article updated successfully')
                return redirect(url_for('admin'))

        elif request.method == 'GET':
            g.db = connect_db()
            article = query_db(
                'SELECT blog_id, title, content FROM fblog WHERE blog_id = ?',
                [blog_id],
                one=True)
            form.title.data = article['title']
            form.content.data = article['content']
            return render_template('edit.html', form=form, article=article)
Example #5
0
def new_article(request):
    categorys = models.Category.objects.all()
    if request.method == 'POST':
        print(request.POST)
        form = ArticleForm(request.POST, request.FILES)
        if form.is_valid():
            print("form is valid")
            print(request.FILES)
            data = form.cleaned_data
            del data['head_img']
            uploaded_filename = handle_uploaded_file(request,
                                                     request.FILES['head_img'])
            data['author_id'] = request.user.userprofile.id
            try:
                new_article_obj = models.Article(**data)
                new_article_obj.head_img = uploaded_filename
                new_article_obj.save()
            except Exception as e:
                return HttpResponse(e)
            return render(request, 'create_article.html',
                          {'new_article_obj': new_article_obj})
        else:
            print(form.errors)
            return render(request, 'create_article.html', {
                'categorys': categorys,
                'form': form
            })
    return render(request, 'create_article.html', {'categorys': categorys})
Example #6
0
def edit_article(id):
    cur = mysql.connection.cursor()
    result = cur.execute("SELECT * FROM articles WHERE id = %s", [id])
    article = cur.fetchone()
    cur.close()

    form = ArticleForm(request.form)
    form.title.data = article['title']
    form.body.data = article['body']

    if request.method == 'POST' and form.validate():
        title = request.form['title']
        body = request.form['body']
        app.logger.info(title)

        cur = mysql.connection.cursor()
        cur.execute("UPDATE articles SET title=%s, body=%s WHERE id=%s",
                    (title, body, id))
        mysql.connection.commit()
        cur.close()

        flash('Article Updated', 'success')
        return redirect(url_for('dashboard'))

    return render_template('article/edit_article.html', form=form)
Example #7
0
def submit_topic(request):
    if request.method == 'GET':
        form = ArticleForm()
        form.fields['in_event'].queryset = Event.objects.upcoming_events()

        context = {
          'form': form,
          'tab': 'topic',
        }
        return render_to_response('core/submit_topic.html',
                                    context,
                                    context_instance=RequestContext(request))

    if request.method == 'POST' :
        form = ArticleForm(request.POST)
        context = {
            'form': form,
            'save_success': False,
        }

        if form.is_valid():
          topic = form.save(commit=False)
          if request.POST['captcha'] == '':
              topic = form.save(commit=False)
              topic.set_author(request.user)
              topic.save()
              topic.send_notification_mail('created')
              context['save_success'] = True
          else:
              return HttpResponseForbidden()

        return render_to_response('core/submit_topic.html',
                                    context,
                                    context_instance=RequestContext(request))
Example #8
0
def form_article(request, id_article=None):
	if request.method == "POST":
		request.POST['last_editor_id'] = cache.get('user_id')
		if id_article:
			article = Article.objects.get(id=id_article)
			form = ArticleForm(request.POST, instance=article)
		else:
			request.POST['author_id'] = cache.get('user_id')
			form = ArticleForm(request.POST)

		if form.is_valid():
			form.save()
			return redirect(request.META.get('HTTP_REFERER','/'))
	else: #GET
		id_article = request.GET.get('id_article', None)
		args = {}
		args.update(csrf(request))
		if id_article:
			article = Article.objects.get(id=id_article)
			args['id_article'] = id_article
			args['form'] = ArticleForm(instance=article)
		else:
			args['form'] = ArticleForm()

		return render_to_response('edit_article.html', args)
Example #9
0
def add_article():
    form = ArticleForm(request.form)
    if request.method == 'POST' and form.validate():
        title = form.title.data
        body = form.body.data

        # Create Cursor
        cur = mysql.connection.cursor()

        # Execute
        cur.execute(
            "INSERT INTO articles(title, body, author) VALUES(%s, %s, %s)",
            (title, body, session['username']))

        # Commit to DB
        mysql.connection.commit()

        #Close connection
        cur.close()

        flash('Article Created', 'success')

        return redirect(url_for('dashboard'))

    return render_template('add_article.html', form=form)
Example #10
0
    def post(self, request):
        form = ArticleForm(request.POST)
        if form.is_valid():

            # get web abstract
            # spid = Spider()
            # data = spid.get_content(form.cleaned_data['url'])

            # save into  article
            art = Article(url=form.cleaned_data['url'],
                          title=form.cleaned_data['title'],
                          context=form.cleaned_data['content'])
            art.save()

            # save into tag, multiple items
            tags = form.cleaned_data['tag']
            tag = tags.split(',')
            while '' in tag:
                tag.remove('')  # delete null
            if len(tag) == 0:
                tag = ['python']  # default
            for t in tag:
                hashtag, created = HashTag.objects.get_or_create(name=t)
                hashtag.article.add(art)

            # save into hashtag
            words = form.cleaned_data['tag'].split(",")
            for word in words:
                # at least one keyword
                if len(word) >= 1:
                    hashtag, created = HashTag.objects.get_or_create(
                        name=word[1:])
                    hashtag.article.add(art)
            return HttpResponseRedirect('/index/')
Example #11
0
def add_article(request):
    args = {}
    args.update(csrf(request))
    form = ArticleForm()
    if request.user.is_authenticated():
        if request.POST:
            article_form = ArticleForm(request.POST, request.FILES)

            if article_form.is_valid():

                new_article = models.Article(user=request.user, title=article_form.cleaned_data['title'],
                                             text=article_form.cleaned_data['text'], image=request.FILES['image'])
                # article_form.user_id = request.user.id
                # article_form.likes = 0
                # article_form.save()

                new_article.save()

            return response.HttpResponseRedirect('/article/getarticles/')

        else:
            args['form'] = form

        return render_to_response('add_article.html', args)
    else:
        raise PermissionDenied()
Example #12
0
def art_add():
    articleform=ArticleForm()
    if articleform.validate_on_submit():
        data=articleform.data
        #update picture
        datas=secure_filename(articleform.logo.data.filename)
        logo=change_filename(datas)
        if not os.path.exists(app.config["UP"]):
            os.makedirs(app.config["UP"])
        #save file
        articleform.logo.data.save(app.config["UP"]+"/"+logo)
        #get userID
        user=User.query.filter_by(username=session["user"]).first()

        user_id=user.id
        #save data
        articale =Article(
            title=data["title"],
            category=data["category"],
            user_id=user_id,
            logo=logo,
            content=data["content"],
            addTime=datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
        )
        db.session.add(articale)
        db.session.commit()
        flash(u"Add review successfully!","ok")


    return render_template("artadd.html",form=articleform)
Example #13
0
def new_article(request):

    blogger = user_in_group(request.user, 'Blogger')
    if blogger:
        if request.method == 'POST':
            # if POST save the article
            form = ArticleForm(request.POST)
            if form.is_valid():
                article = form.save(commit=False)
                article.written_by = request.user
                article.save()
                return redirect(my_articles)
        else:
            # if GET create article form
            form = ArticleForm()

            data = {
                'page_header': 'My Articles',
                'page_subheader': 'New Article',
                'form': form,
                'admin': user_in_group(request.user, 'Admin'),
                'blogger': blogger
            }
            return render_to_response('new_edit_article.html', data, context_instance=RequestContext(request))
    else:
        return HttpResponse(status=403)
Example #14
0
def create_article():
    """
    Create an article object and store on db.
    Return article object in JSON response.
    Data: title, content, url, source, summary, img_url
    """
    data = request.json
    form = ArticleForm(**data, meta={'csrf': False})

    if form.validate():
        if not newsmart.isUrlValid(form.url.data):
            return (jsonify({"errors": {"url": ["Not a valid url."]}}), 400)

        article = Article.query.filter(
            Article.url == form.url.data).one_or_none()
        if article:
            # article object has been created already
            return (jsonify({"article": article.serialize()}), 200)
        else:
            # create new article object and save
            new_article = Article.new(**form.data)
            return (jsonify({"article": new_article.serialize()}), 201)

    errors = {"errors": form.errors}
    return (jsonify(errors), 400)
Example #15
0
def edit(id):
    if request.method == "GET":
        form = ArticleForm(request.form)
        baslik = "Makale Güncelleme"
        btntext = "Güncelle"
        con = sqlite3.connect("blog.db")
        con.row_factory = dict_factory
        cursor = con.cursor()
        sorgu = 'select * from articles where id = ?'
        article = cursor.execute(sorgu, (id, )).fetchone()
        form.content.data = article["content"]
        form.title.data = article["title"]
        con.close()
        return render_template("/article/edit.html",
                               form=form,
                               baslik=baslik,
                               btntext=btntext)
    else:
        form = ArticleForm(request.form)
        content = form.content.data
        title = form.title.data
        con = sqlite3.connect("blog.db")
        cursor = con.cursor()
        sorgu = "update articles set title = ? , content = ? where id = ?"
        cursor.execute(sorgu, (title, content, id))
        con.commit()
        flash("Güncelleme Başarılı", "success")
        con.close()
        return redirect(url_for("dashboard"))
Example #16
0
def delete(id):
    if request.method == "GET":
        form = ArticleForm(request.form)
        baslik = "Makale Silinecek Eminmisiniz"
        btntext = "Sil"
        con = sqlite3.connect("blog.db")
        con.row_factory = dict_factory
        cursor = con.cursor()
        sorgu = 'select * from articles where id = ?'
        article = cursor.execute(sorgu, (id, )).fetchone()
        print(article)
        form.content.data = article["content"]
        form.title.data = article["title"]
        con.close()
        return render_template("/article/edit.html",
                               form=form,
                               baslik=baslik,
                               btntext=btntext)
    else:
        form = ArticleForm(request.form)
        con = sqlite3.connect("blog.db")
        cursor = con.cursor()
        sorgu = " delete from articles where id = ?"
        cursor.execute(sorgu, (id, ))
        con.commit()
        flash("Silme İşlemi Başarılı ", "success")
        con.close()
        return redirect(url_for("dashboard"))
Example #17
0
def index(request):
    latest_article_list = Article.objects.all().order_by('-post_date')[:5]
    form = ArticleForm()
    template = loader.get_template('index.html')
    # user = User.objects.get(pk=User.pk)
    if request.user.is_active:
    # if user is not None:
        
        return render_to_response('index.html', { 'form': form, 'posts': latest_article_list })
    elif request.user.is_active != False and latest_article_list is not None:
        return render_to_response('index.html', { 'posts': latest_article_list })
        
    else:
        return render_to_response('index.html', {  }, context_instance=RequestContext(request))
        
    if request.method == 'POST':
        if form.is_valid():
            postedArticle = Article()
            postedArticle.post_date = timezone.now()
            postedArticle.title = request.POST.getlist('title')
            postedArticle.article = request.POST.getlist('article')
            postedArticle.save()
        else:
            form = ArticleForm(instance=article)
    return render_to_response('index.html', { 'form': form, 'posts': latest_article_list }, context_instance=RequestContext(request))
Example #18
0
def create_article():
    categories = Categories.query.all()
    article_form = ArticleForm()
    if article_form.validate_on_submit():
        title = article_form.title.data
        body = article_form.body.data
        category_id = article_form.category_id.data
        author_id = current_user.id
        image = article_form.image.data
        date = datetime.datetime.now().strftime('%d.%m..%Y')
        if image is not None or image != '':
            img = True
        else:
            img = False
        if len(body) > 300:
            big_body = True
        else:
            big_body = False
        article = Article(title=title,
                          body=body,
                          category_id=category_id,
                          author_id=author_id,
                          img=img,
                          img_url=image,
                          big=big_body,
                          date=date)
        db.session.add(article)
        db.session.commit()
        return redirect(url_for('homepage'))
    return render_template('new_article.html',
                           form=article_form,
                           categories=categories)
Example #19
0
def create(request):
    # profile_id = random.randint(0,32768)
    if request.method == "POST":
        form = ArticleForm(request.POST, request.FILES)
        if form.is_valid():
            profile_id = request.POST["psrn"]
            a = form.save()
            a.psrn = profile_id
            a.save()
            print profile_id
        jform = JobForm()
        args = {}
        args.update(csrf(request))
        args["form"] = jform
        args["profile_id"] = profile_id
        return render_to_response("job.html", args)
    else:
        form = ArticleForm()

    args = {}
    args.update(csrf(request))

    args["form"] = form

    return render_to_response("create_profile.html", args)
Example #20
0
def edit_topic(request, id):

    this_topic = get_object_or_404(Topic, pk=id)
    if this_topic.author.user != request.user:
        return HttpResponseRedirect(reverse('topic', args=[this_topic.id]))

    if request.method == 'GET':
        context = {
            'form': ArticleForm(instance=this_topic),
            'topic': this_topic,
            'tab': 'topic',
        }
        return render_to_response('core/edit_topic.html',
                                  context,
                                  context_instance=RequestContext(request))

    if request.method == 'POST':
        form = ArticleForm(request.POST, instance=this_topic)
        topic = form.save(commit=False)
        topic.set_author(request.user)
        topic.save()
        topic.send_notification_mail('updated')

        context = {
            'form': form,
            'topic': topic,
            'edit_success': True,
            'tab': 'topic',
        }

        return render_to_response('core/edit_topic.html',
                                  context,
                                  context_instance=RequestContext(request))
Example #21
0
def edit_article(id):
    db = MysqlUtil()  # 实例化数据库操作类
    fetch_sql = "SELECT * FROM articles WHERE id = '%s' and author = '%s'" % (
        id, session['username'])  # 根据笔记ID查找笔记信息
    article = db.fetchone(fetch_sql)  # 查找一条记录
    # 检测笔记不存在的情况
    if not article:
        flash('ID错误', 'danger')  # 闪存信息
        return redirect(url_for('dashboard'))
    # 获取表单
    form = ArticleForm(request.form)
    if request.method == 'POST' and form.validate():  # 如果用户提交表单,并且表单验证通过
        # 获取表单字段内容
        title = request.form['title']
        content = request.form['content']
        update_sql = "UPDATE articles SET title='%s', content='%s' WHERE id='%s' and author='%s'" % (
            title, content, id, session['username'])
        db = MysqlUtil()  # 实例化数据库操作类
        db.update(update_sql)  # 更新数据的SQL语句
        flash('更改成功', 'success')  # 闪存信息
        return redirect(url_for('dashboard'))  # 跳转到控制台
    # 从数据库中获取表单字段的值
    form.title.data = article['title']
    form.content.date = article['content']
    return render_template('edit_article.html', form=form)  # 渲染模板
Example #22
0
def submit_topic(request):
    if request.method == 'GET':
        form = ArticleForm()
        form.fields['in_event'].queryset = Event.objects.upcoming_events()

        context = {'form': form,
                   'tab': 'topic',
                }
        return render_to_response('core/submit_topic.html',
                                    context,
                                    context_instance=RequestContext(request))

    if request.method == 'POST':
        form = ArticleForm(request.POST)
        topic = form.save(commit=False)
        topic.set_author(request.user)
        topic.save()
        topic.send_notification_mail('created')
        
        context = {
            'form': form,
            'topic': topic,
            'save_success': True
        }
        
        return render_to_response('core/submit_topic.html',
                                    context,
                                    context_instance=RequestContext(request))
Example #23
0
def article_update(article_id):
    cur = mysql.connection.cursor()
    query = "SELECT * FROM articles WHERE id=%s"
    result = cur.execute(query, [article_id])
    article = {}
    if result > 0:
        article = cur.fetchone()
    cur.close()

    form = ArticleForm(request.form)

    if request.method == 'GET':
        form.title.data = article['title']
        form.body.data = article['body']
    elif request.method == 'POST' and form.validate():
        cur = mysql.connection.cursor()
        mysql.connection.autocommit(on=True)
        query = """ UPDATE articles 
                    SET title=%s, body=%s 
                    WHERE id=%s """
        params = (form.title.data, form.body.data, article_id)
        cur.execute(query, params)
        cur.close()
        flash('Статья обновлена', 'success')
        return redirect(url_for('dashboard'))

    return render_template('article-create.html',
                           form=form,
                           header='Редактирование')
Example #24
0
def edit_topic(request, id):

    this_topic = get_object_or_404(Topic, pk = id)
    if this_topic.author.user != request.user:
        return HttpResponseRedirect(reverse('topic', args=[this_topic.id]))

    if request.method == 'GET':
        context = {
                    'form': ArticleForm(instance = this_topic),
                    'topic': this_topic,
                    'tab': 'topic',
                  }
        return render_to_response('core/edit_topic.html', 
                                    context,
                                    context_instance=RequestContext(request))

    if request.method == 'POST':
        form = ArticleForm(request.POST, instance=this_topic)
        topic = form.save(commit=False)
        topic.set_author(request.user)
        topic.save()
        topic.send_notification_mail('updated')

        context = {
            'form': form,
            'topic': topic,
            'edit_success': True,
            'tab': 'topic',
        }
        
        return render_to_response('core/edit_topic.html',
                                    context,
                                    context_instance=RequestContext(request))
Example #25
0
def add_article():
    form = ArticleForm(request.form)

    if request.method == 'POST' and form.validate():
        title = form.title.data
        body = form.body.data

        # Create cursor
        cur = mysql.connection.cursor()

        # Insert article
        cur.execute(
            "INSERT INTO articles(title, body, author, user_id) VALUES (%s, %s, %s, %s)",
            (title, body, session['username'], session['user_id']))
        mysql.connection.commit()

        # Close connection
        cur.close()

        # Let user know of success
        flash('Article created', 'success')

        # Return corresponding page
        return redirect(url_for('dashboard'))

    return render_template('add_article.html', form=form)
Example #26
0
def create(request):
    if request.method == 'POST':
        form = ArticleForm(request.POST)
        if form.is_valid():
            article = Article(title=form.cleaned_data['title'],
                              body=form.cleaned_data['body'],
                              pub_date=timezone.now(),
                              author=request.user)
            article.save()
            return render(
                request, 'article.html', {
                    'article':
                    article,
                    'message':
                    'You added new article!',
                    'request':
                    request,
                    'likes':
                    Likes.objects.filter(article=article).count(),
                    'userlike':
                    Likes.objects.filter(article=article, author=request.user),
                })
        else:
            return render(request, 'article_create.html', {
                'message': 'Please, enter valid input!',
                'request': request,
            })
    return render(request, 'article_create.html', {
        'request': request,
    })
Example #27
0
def update_post(article_title):
    a = find_art(article_title)
    if not a:
        flash(f"Article not found")
        return redirect(url_for("home"))
    i, a = a
    f = ArticleForm()
    if request.method == "GET":
        f.title.data = a.get("title")
        f.body.data = a.get("body")
        f.url.data = a.get("url")
        f.source.data = a.get("source")
        f.author.data = a.get("author")
        f.date.data = a.get("date")
    if request.method == "POST":
        req = request.form.copy()
        req["body"] = req["body"].replace("\r", "")
        articles.pop(i)
        articles.insert(i, req)
    if f.validate_on_submit():
        flash(f"Updated {f.title.data}", "success")
        if f.homesub.data:
            return redirect(url_for("home"))
        if f.nextsub.data:
            if len(articles) <= i + 1:
                # flash(f"Updated {f.title.data} TESTING", "success")
                return redirect(url_for("add_article"))
            else:
                return redirect(
                    url_for("update_post",
                            article_title=articles[i + 1]['title']))
    return render_template("article_form.html", form=f, legend="Create Post")
Example #28
0
def post_article(request,
                 success_url = "/",
                 template="articles/post.html"):
    """ Post new article """
    if request.method == 'POST':
        form = ArticleForm(request.POST)
        if form.is_valid():
            title = form.cleaned_data['title']
            content = form.cleaned_data['content']
            tags = form.cleaned_data['tags']
            # new article
            art = Article(title=title,content=content,slug=slugify(title),author=request.user)
            art.save()
            # add tags
            for tag in tags:
                try:
                    t = Tag.objects.get(name=tag)
                except Tag.DoesNotExist:
                    t = None
                # if t doesnt exist
                if t is None:
                    t = Tag(name=tag,slug=slugify(tag))
                    t.save()
                # add the tag to the article
                art.tags.add(t)
            # set meta
            art.set_meta()
            # done here
            return HttpResponseRedirect(success_url)
    else:
        form = ArticleForm()
    
    return render_to_response(template,
                              {'form':form},
                              context_instance=RequestContext(request))
Example #29
0
def article_new():
    form = ArticleForm(request.form)
    if form.validate():
        try:
            db.save(Article(current_user, form.title.data, form.content.data, form.plain_text.data))
        except AssertionError, err:
            current_app.logger.error(err)
        return redirect(url_for('Common.index'))
Example #30
0
def edit_article(article_id):
    article1 = Article.query.get_or_404(article_id)
    form = ArticleForm(obj=article1)
    if form.validate_on_submit():
        form.update_article(article1)
        return redirect(url_for('article'))
    return render_template('admin/edit_article.html',
                           form=form,
                           article=article1)
Example #31
0
def nouveau(request):
    form = ArticleForm(request.POST)
    if form.is_valid():
            form.save()
            envoi= True
    else:
        form = ArticleForm()

    return render(request, 'nouveau.html', locals())
Example #32
0
def edit_article(request, slug):
    article = get_object_or_404(SubscriberArticle, slug=slug)
    form = ArticleForm(request.POST or None, instance=article)
    if form.is_valid():
        article = form.save()
        msg = "Article updated successfully"
        messages.success(request, msg, fail_silently=True)
        return redirect(article)
    return render(request, 'comunidad/article_form.html', {'form': form, 'article': article})
Example #33
0
def create(request):
	form = ArticleForm(request.POST, request.FILES)
	if form.is_valid():
		form.save()
		return HttpResponseRedirect('/articles/all')
	args = {}
	args.update(csrf(request))
	args['form'] = form
	return render_to_response('create_article.html', args)
Example #34
0
def add_art(req):
    errs = ''

    if req.method == "POST":
        #print(req.POST)
        form = ArticleForm(req.POST, req.FILES)
        if form.is_valid():
            #print ("--form data:",form.cleaned_data)
            form_data = form.cleaned_data
            form_data['author_id'] = req.user.userprofile.id
            #jieba 自动从title提取关键词,
            textrank = analyse.textrank
            keywords = textrank(form_data['title'])
            #循环组合前3个关键词
            arr = []
            n = 0
            for s in keywords:
                arr.append(s)
                strs = ','.join(arr)
                form_data['keywords'] = strs

                # 循环保存到tags表
                #查询数据库tag是否存在
                try:
                    have_tag = models.Tags.objects.get(tagname=s)
                    num = int(have_tag.num) + 1
                    models.Tags.objects.filter(tagname=s).update(num=num)
                except:
                    b = models.Tags(tagname=s, num=1)
                    b.save()
                n = n + 1
                if n == 3:
                    break

            #增加文章描述
            description = form_data['content']

            form_data['description'] = mvhtml.strip_tags(description[0:200])

            new_article_obj = models.Article(**form_data)
            new_article_obj.save()
            return render(req, 'addarticle.html')
        else:
            #print ('err:',form.errors)
            errs = form.errors

    if req.user.userprofile.id:
        parent_category = models.Category.objects.filter(
            parent_category_id=None)
        category = models.Category.objects.all()

        return render(req, 'addarticle.html', {
            'parent_category': parent_category,
            'category': category,
            'errs': errs
        })
Example #35
0
def add_article():
    f = ArticleForm()
    if request.method == "POST":
        req = request.form.copy()
        req["body"] = req["body"].replace("\r", "")
        articles.append(req)
    if f.validate_on_submit():
        flash(f"Added {f.title.data}", "success")
        return redirect(url_for("home"))
    return render_template("article_form.html", form=f, legend="Create Post")
Example #36
0
def add_article(request):
    form = ArticleForm(request.POST or None)
    if form.is_valid():
        article = form.save(commit=False)
        article.created_by = request.user
        article.save()
        msg = "Article saved successfully"
        messages.success(request, msg, fail_silently=True)
        return redirect(article)
    return render(request, 'comunidad/article_form.html', {'form': form})
Example #37
0
def add_article(request):
	form = ArticleForm(request.POST or None)
	if form.is_valid():
		article = form.save(commit=False)
		article.author = request.user
		article.save()
		msg = "Article saved successfully"
		messages.success(request, msg, fail_silently=True)
		return redirect(article)
	return render_to_response('wiki/article_form.html', {'form': form }, context_instance=RequestContext(request))
Example #38
0
def new_article():

    form = ArticleForm(request.form)

    if request.method == 'POST' and form.validate():
        article_info = Article_Info()
        save_changes(article_info, form, new=True)
        flash('Article added successfully!')
        return redirect('/')

    return render_template('new_article.html', form=form)
def create(request):
    if request.POST:
        form = ArticleForm(request.POST, request.FILES)  #this binds data to the form
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/articles/all')
    else:
        form = ArticleForm()
    args = {}
    args['form'] = form
    return render(request, 'article/create_article.html', args)
Example #40
0
def article_name(request):
    if request.method == 'POST':
        form = ArticleForm(request.POST)
        if form.is_valid():
            print form.cleaned_data
            form.save()
        return HttpResponseRedirect('redirect/')
    else:
        form = ArticleForm()

    return render(request, 'article.html', {'form': form})
Example #41
0
def add_article(request):
	form = ArticleForm(request.Post or None)
	if form.is_valid(): #  if something was typed in  the form do
		article = form.save(commit = False)
		article.author = request.user
		article.save()
		msg = " Article was saved successfully"
		message.sucess(request , msg , fail_silently = True)
		return redirect(article)
		
	return  render_to_response('wiki/article_form.html', dict (form = form ), context_instance = RequestContext(request))
Example #42
0
def home():
    try:
        storage.load()
    except IOError:
        pass
    form = ArticleForm(request.form)
    if request.method == 'POST' and form.validate():
        article = Articles(form.article_title.data, form.article_body.data)
        storage.articles.append(article)
        storage.dump()
    return render_template('base.html', form=form, storage=storage)
Example #43
0
def add_article():
    form = ArticleForm(request.form)
    if request.method == 'POST' and form.validate():
        sql = sqlpuzzle.insert_into('article').values({
            'title': form.title.data,
            'text': form.text.data,
        })
        cur = get_db().cursor()
        cur.execute(str(sql))
        return redirect(url_for('article_page.articles'))
    return render_template('article/add.html', form=form)
Example #44
0
def article_update(id):
	article = Article.query.get(id)
	form = ArticleForm(request.form, obj=article)
	if request.method == 'POST':
		if form.validate_on_submit():
			form.populate_obj(article)
			db.session.commit()
		
			flash(u'게시글을 수정하였습니다.', 'success')
			return redirect(url_for('article_list'))

	return render_template('article/update.html', form=form, active_tab='article_update')
Example #45
0
def editwiki(request, wiki_id):
    wiki = Article.objects.get(id = wiki_id)
    editform = ArticleForm(request.POST or None, instance=wiki)
    if request.method == 'POST':
        if editform.is_valid():
            editform.save()
            return HttpResponseRedirect('/wikis/all')
    args = {}
    args.update(csrf(request))
    args['editform'] = editform
    return render_to_response('editwiki.html',
                         args, context_instance=RequestContext(request))
Example #46
0
def article_edit(slug):
	""" Render edit article form by <slug> or update data from `POST` """
	from models import Article, Tag, db
	from forms import ArticleForm

	article = Article.by_slug(slug=slug).first_or_404()
	form = ArticleForm()

	if request.method != 'POST':
		# init form data from object
		form.title.data = article.title
		form.slug.data = article.slug
		form.description.data = article.description
		form.content.data = article.content
		tags = [t.title for t in article.tags]
		for t in tags:
			if form.tags.data:
				form.tags.data += ", " + t
			else:
				form.tags.data = t
		form.pub_date.data = article.pub_date.strftime("%Y-%m-%d %H:%M:%S")
		form.upd_date.data = article.upd_date.strftime("%Y-%m-%d %H:%M:%S")
	else:
		if form.validate():
			article.title = form.title.data
			article.slug = form.slug.data
			article.description = form.description.data
			article.content = form.content.data
			article.pub_date = datetime.strptime(form.pub_date.data, '%Y-%m-%d %H:%M:%S')

			# autonow if empty or error
			try:
				upd_datetime = datetime.strptime(form.upd_date.data, '%Y-%m-%d %H:%M:%S')
			except Exception:
				article.upd_date = datetime.now()

			article.tags = []
			tags_raw = form.tags.data.split(',')
			for t in tags_raw:
				t = t.strip()

				# Get or create
				try:
					article.tags += [Tag.query.filter(Tag.title == t)[0]]
				except Exception:
					article.tags += [Tag(t)]

			db.session.commit()

			flash("Article updated success.", 'success')
			return redirect(url_for('articles_view', slug=form.slug.data))

	return render_template('articles/edit.html', **locals())
Example #47
0
def add_article(request):
    form = ArticleForm(request.POST or None)
    if form.is_valid():
        article = form.save(commit=False)
        article.author = request.user
        article.save()
        msg = "Article saved successfully"
        messages.success(request, msg, fail_silently=True)
        return redirect(article)
    return render_to_response('wiki/article_form.html', 
                              { 'form': form },
                              context_instance=RequestContext(request))
Example #48
0
def create_article(request):
    values = {}
    values.update(csrf(request))
    values['form'] = ArticleForm()
    page = render_to_response("create_article.html", values)
    if request.POST:
        form = ArticleForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            page = HttpResponseRedirect('/articles/all')

    return page
Example #49
0
File: views.py Project: winglq/site
 def post(self, request):
     article = ArticleForm(request.POST)
     article_instance = article.save(commit=False)
     article_instance.save()
     tags = request.POST.get('stags', None)
     if tags:
         for tag in tags.split():
             tag_record = Tag.objects.filter(name=tag)
             if not tag_record:
                 tag_record = Tag.objects.create(name=tag)
             article_instance.tags.add(tag_record)
     return redirect(reverse('article_detail', args=[article_instance.id]))
Example #50
0
def create(request):
    if request.method == "POST":
        form = ArticleForm(request.POST)
        if form.is_valid():
            form.save()
            return render_to_response('index.html')
    else:
        form = ArticleForm(request.POST)
        con = {}
        con.update(csrf(request))
        con['form'] = form
        return render_to_response("form.html",con)
def article_add(request):
    if request.method == 'POST':
        formset = ArticleForm(request.POST)
        if formset.is_valid():
            instance = formset.save()
            Article.get(instance.key())
            return redirect(article_list)
    else:
        formset = ArticleForm()
    return render_to_response("articles_add.html", {
                                    "formset": formset,
                              }, context_instance=RequestContext(request))  
Example #52
0
def add_article(request):


    if request.method == "POST":


        form = ArticleForm(data=request.POST)

        #filter user folder
        #usr = User.get_by_id(uid)
        #form.folder = Folder.objects.filter(author=usr).order_by('sort_order')

        if form.is_valid():

            messages.success(request, 'Your new article was saved!')

            #form.errors['success'] = 'Saved'

            article = form.save(commit=False)


            article.save()



            #return the last random object created
            last_random = Article.objects.values_list('random', flat=True).order_by('-created_at')[:1]
            #this returns [u'5eXB612345']

            #return the random sequence only to a strng format 5eXB6
            new_random = str(last_random)[3:13]




            return redirect('/article/%s' % new_random)



    else:
        form = ArticleForm()



    return render_to_response(
        'add_article.html',
        {
            'article_form': form,
            #'success': success,

        },
        context_instance=RequestContext(request)
    )
Example #53
0
def new_article():
    article_form = ArticleForm()
    if article_form.validate_on_submit():
        article = Article()
        article.form_to_object(article_form)
        article.new_article(current_user.id)
        flash('文章提交成功')
        return redirect(
            url_for('views_blueprint.get_article_by_id',
                    article_id=article.id))
    return new_render_template('edit_article.html',
                               form=article_form,
                               page_title='NEW ARTICLE')
Example #54
0
def new_article():
    from forms import ArticleForm
    from models import Article

    if request.method == 'POST':
        form = ArticleForm(request.form)

        if form.validate():
            article = Article(**form.data)
            db.session.add(article)
            db.session.commit()

    return render_template('new_article.html')
Example #55
0
def add_article(request):
    if request.method == 'POST':
        raw_data = ArticleForm(request.POST)
        if raw_data.is_valid():
            data = raw_data.cleaned_data
            Articles.objects.create(**data)
            return redirect(view_articles)
        context = {'articles_form': raw_data}
        return render(request, 'homework6_add_article.html', context)
    else:
        articles = Articles.objects.filter()
        context = {'articles_form': ArticleForm(), 'articles': articles}
        return render(request, 'homework6_add_article.html', context)
Example #56
0
def add_article(request):
    form = ArticleForm(request.Post or None)
    if form.is_valid():  #  if something was typed in  the form do
        article = form.save(commit=False)
        article.author = request.user
        article.save()
        msg = " Article was saved successfully"
        message.sucess(request, msg, fail_silently=True)
        return redirect(article)

    return render_to_response('wiki/article_form.html',
                              dict(form=form),
                              context_instance=RequestContext(request))
Example #57
0
def edit(id):
    article = Article.query.filter_by(id=id).first()
    form = ArticleForm(obj=article)

    if request.method == 'POST':
        if form.validate() == True:
            article.titre = form.titre.data
            article.cont = form.cont.data
            article.category.name = form.category.data
            db.session.commit()
            return redirect(url_for('affiche'))

    return render_template('edit.html', form=form, article=article)
Example #58
0
def create(request):
	if request.POST:
		form = ArticleForm(request.POST, request.FILES)
		if form.is_valid():
			form.save()
			
			return HttpResponseRedirect('/articles/all/')
	else:
		form = ArticleForm()

	context = {}
	context.update(csrf(request))
	context['form'] = form
	return render(request, 'create_article.html', context)
Example #59
0
File: views.py Project: webNO5/web
def newarticle():
    form = ArticleForm()
    if request.method == 'POST':
        if form.validate_on_submit():
            title=form.data['title']
    	    body = form.data['body']
	    a=Article(title=title,body=body,timestamp=datetime.datetime.now(),author=g.user)
	    try:
	        db.session.add(a)
	        db.session.commit()
	        flash(u'发帖完成')
	    except Exception, e:
	        flash(u'发帖失败')
            return render_template('newarticle.html', title = 'newarticle',form = form)