Esempio n. 1
0
def index(request):

	# See http://stackoverflow.com/questions/2406537/django-formsets-make-first-required/4951032#4951032
	class RequiredFormSet(BaseFormSet):
		def __init__(self, *args, **kwargs):
			super(RequiredFormSet, self).__init__(*args, **kwargs)
			for form in self.forms:
				form.empty_permitted = False

	#si se fija aca le puse extra 3 para que me pinte 3 formularios de tareas al mismo tiempo
	#si se lo quito pues pone solo uno prueben 
	TodoArticuloFormSet = formset_factory(TodoArticuloForm, extra=3, max_num=10, formset=RequiredFormSet)
	

	if request.method == 'POST':

		todo_form = TodoForm(request.POST)
		todo_articulo_formset = TodoArticuloFormSet(request.POST, request.FILES)

		if todo_form.is_valid() and todo_articulo_formset.is_valid():
			todo_lista = todo_form.save()
			for form in todo_articulo_formset.forms:
				todo_item = form.save(commit=False)
				todo_item.fktodo = todo_lista
				todo_item.save()

			return HttpResponseRedirect('/')
	else:
		todo_form = TodoForm()
		todo_articulo_formset = TodoArticuloFormSet()

	todo = Todo.objects.all().order_by('id') #Select * from Todo ;
	return  render_to_response('index.html', locals(),
								RequestContext(request))
Esempio n. 2
0
def todo_create(request):
    if request.method == "POST":
        form = TodoForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('todo_list')
    form = TodoForm()
    return render(request, 'todo/edit.html', {'form': form})
Esempio n. 3
0
def createtodo(request):
    if request.method == "GET":
        return render(request, 'todo/createtodo.html', {'form': TodoForm()})
    else:
        form = TodoForm(request.POST)
        newtodo = form.save(commit=False)
        newtodo.user = request.user
        newtodo.save()
        return redirect('currenttodos')
Esempio n. 4
0
def create_todo(request):
    if request.method == 'GET':
        form = TodoForm(user=request.user)
    elif request.method == 'POST':
        form = TodoForm(request.POST, user=request.user)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/')
    return render(request, "todo_form.html", {'form': form})
Esempio n. 5
0
def todo_edit(request, pk):
    todo = List.objects.get(user=request.user, pk=pk)
    if request.method == "POST":
        form = TodoForm(request.POST, instance=todo)
        if form.is_valid():
            form.save()
            return redirect('todo_view', todo.pk)
    else:
        form = TodoForm(instance=todo)
    return render(request, 'todo/edit.html', {'menu': 'list', 'form': form, 'pk': pk})
Esempio n. 6
0
def todo_create(request):
    if request.method == "POST":
        form = TodoForm(request.POST)
        if form.is_valid():
            todo = form.save(commit=False)
            todo.user = request.user
            todo.save()
            return redirect('todo_view', todo.pk)
    else:
        form = TodoForm()
    return render(request, 'todo/edit.html', {'menu': 'list', 'form': form})
Esempio n. 7
0
def todo_edit(request, pk):
    task = Todo.objects.get(pk=pk)
    if request.method == "POST":
        form = TodoForm(request.POST)
        if form.is_valid():
            task.description = request.POST.get('description')
            task.status = request.POST.get('status')
            task.save()
            return redirect('todo_list')
    form = TodoForm(instance=task)
    return render(request, 'todo/edit.html', {'form': form})
Esempio n. 8
0
def todo_add(request):
    if request.method == 'POST':
        form = TodoForm(request.POST, request.FILES)
        if form.is_valid():
            todo = form.save()
            return redirect('todo_detail', pk=todo.pk)
    form = TodoForm()
    context = {
        'form': form,
    }
    return render(request, 'todo/todo_create.html', context)
Esempio n. 9
0
def todoView(request):
    if request.method == "POST":
        form = TodoForm(request.POST)
        if form.is_valid():
            item = form.save(commit=False)
            item.createUser = request.user.username
            item.save()

    items = Todo.objects.filter(createUser=request.user.username).reverse()
    form = TodoForm()
    return render(request, 'todo.html', {'items': items, 'form': form})
Esempio n. 10
0
def viewtodo(request, todo_pk):
    todo = get_object_or_404(Todo, pk=todo_pk, user=request.user)
    if request.method == 'GET':
        form = TodoForm(instance=todo)
        return render(request,'todo/viewtodo.html',{'todo':todo, 'form':form})
    else:
        try:
            form = TodoForm(request.POST, instance=todo)
            form.save()
            return redirect('currenttodos')
        except ValueError:
            return render(request,'todo/viewtodo.html',{'todo':todo, 'form':form, 'error':'Too many data input. Please try again.'})
Esempio n. 11
0
def createtodo(request):
    if request.method == 'GET':
        return render(request,'todo/createtodo.html',{'form':TodoForm()})
    else:
        try:
            form = TodoForm(request.POST)
            newtodo = form.save(commit=False)
            newtodo.user = request.user
            newtodo.save()
            return redirect('currenttodos')
        except ValueError:
            return render(request,'todo/createtodo.html',{'form':TodoForm(), 'error':'Too many data input. Please try again.'})
Esempio n. 12
0
def edit_todo(req, pk):
    todo = TodoList.objects.get(pk=pk)
    if req.method == 'GET':
        form = TodoForm(initial=todo.__dict__)
        return home(req, form, 'edit todo', pk=pk)
    else:
        form = TodoForm(req.POST)
        if form.is_valid():
            todo.name = form.cleaned_data['name']
            todo.description = form.cleaned_data['description']
            todo.save()
        return home(req, form)
Esempio n. 13
0
def viewtodo(request, todo_pk):
    todo = get_object_or_404(Todo, pk=todo_pk, user=request.user)
    if request.method == 'GET':
        form = TodoForm(instance=todo)
        return render(request, 'todo/viewtodo.html', {
            'todo': todo,
            'form': form
        })
    else:
        form = TodoForm(request.POST, instance=todo)
        form.save()
        return redirect('currenttodos')
Esempio n. 14
0
def view_todo(request, todo_id):
    todo = get_object_or_404(Todo, pk=todo_id, user=request.user)
    context = {"todo": todo}
    if request.method == "POST":
        try:
            form = TodoForm(request.POST, instance=todo)
            form.save()
            return redirect('currenttodos')
        except Exception:
            context["error"] = "Something bad happen. Please try again"
    context["form"] = TodoForm(instance=todo)
    return render(request, "todo/view-todo.html", context=context)
Esempio n. 15
0
def AddTodo(request):
    if not request.user.is_authenticated():
        return redirect('accounts:login')
    if request.method == "POST":
        form = TodoForm(request.POST)
        if form.is_valid():
            todo = form.save(commit=False)
            todo.user = request.user
            todo.save()
            return IndexView(request)
    else:
        form = TodoForm()
    return render(request, 'addtodo.html', {'form': form})
Esempio n. 16
0
def create_todo(request):
    context = {}
    if request.method == "POST":
        try:
            todo = TodoForm(request.POST)
            new_todo = todo.save(commit=False)
            new_todo.user = request.user
            new_todo.save()
            return redirect('currenttodos')
        except Exception:
            context["error"] = "Something bad happen. Please try again"

    context["form"] = TodoForm()
    return render(request, "todo/create-todo.html", context=context)
Esempio n. 17
0
def createtodos(request):
    if request.method == 'GET':
        return render(request, 'todo/createtodo.html', {'form': TodoForm()})
    else:
        try:
            form = TodoForm(request.POST)
            new_todo = form.save(commit=False)
            new_todo.user = request.user
            new_todo.save()
            return redirect('currenttodos')
        except ValueError:
            return render(request, 'todo/createtodo.html', {
                'form': TodoForm(),
                'error': 'Bad data passed in'
            })
Esempio n. 18
0
def edit_todo(request: HttpRequest, todo_id: int = 0):
    context = {'todo_lists': TodoList.objects.filter(user=request.user).all()}
    todo = get_object_or_404(Todo, pk=todo_id)
    if todo.todo_list.user != request.user:
        raise Http404
    if request.method == 'POST':
        form = TodoForm(request.POST, instance=todo)
        if not form.is_valid():
            context['form'] = form
            return render(request, 'edit_todo.html', context)
        todo = form.save()
        return redirect('view_list', todo.todo_list.id)
    form = TodoForm(instance=todo)
    context['form'] = form
    return render(request, 'edit_todo.html', context)
Esempio n. 19
0
def create_todo(request: HttpRequest, list_id: int = 0):
    context = {'todo_lists': TodoList.objects.filter(user=request.user).all()}
    todo_list = get_object_or_404(TodoList, pk=list_id)
    if request.method == 'POST':
        form = TodoForm(request.POST)
        if not form.is_valid():
            context['form'] = form
            return render(request, 'create_todo.html', context)
        todo = form.save(commit=False)
        todo.todo_list = todo_list
        todo.save()
        return redirect('view_list', todo_list.id)
    form = TodoForm()
    context['form'] = form
    return render(request, 'create_todo.html', context)
Esempio n. 20
0
def todoedit(request, pk):
    todo = get_object_or_404(Todo, pk=pk)
    todoform = TodoForm(request.POST or None, instance=todo)
    if todoform.is_valid():
        todoform.save()
        return redirect('todolist')
    return render(request, 'todoadd.html', {'form': todoform})
Esempio n. 21
0
def edit_task(request, task_id):
    if request.method == "POST":
        task = TodoList.objects.get(pk=task_id)
        form = TodoForm(request.POST or None, instance=task)
        if form.is_valid():
            form.save()
        messages.success(request, ("Task Edited!"))
        return redirect('addTodo')
    else:
        form = TodoForm()
        # for checking status of task
        task_obj = TodoList.objects.get(pk=task_id)
        return render(request, 'edit.html', {
            'task_obj': task_obj,
            'form': form
        })
Esempio n. 22
0
def addTodo_page():
    form = TodoForm()
    id = current_user.id
    #request.args.get("user")
    if request.args.get("action") == 'add':
        if form.validate_on_submit():
            print('form executed')

            todo_to_create = Todo(name=form.name.data,
                                  category=form.category.data,
                                  owner=id)
            db.session.add(todo_to_create)
            db.session.commit()
            print('db executed')
            return redirect(url_for('dashboard_page', page_num=1))
    if form.errors != {}:
        for err_msg in form.errors.values():
            flash(err_msg)
    if request.args.get("action") == "edit":
        idTodo = request.args.get("todo")
        todo = Todo.query.filter_by(id=idTodo).first()
        if form.validate_on_submit():
            todo.name = form.name.data
            todo.category = form.category.data
            db.session.commit()
            return redirect(url_for('dashboard_page'))
        return render_template('addTodo.html',
                               form=form,
                               todo=todo,
                               action='edit')

    return render_template('addTodo.html', form=form)
Esempio n. 23
0
def add_or_update_task(request, pk=None):
    task = get_object_or_404(Todo, pk=pk) if pk else None
    form = TodoForm(request.user, request.POST or None, instance=task)
    if form.is_valid():
        form.save()
        return redirect(reverse('todo:home'))
    return render(request, 'todo/task_form.html', {'form': form})
Esempio n. 24
0
def addTodo(request):
    form = TodoForm(request.POST)

    if form.is_valid():
        new_todo = Todo(text=request.POST['text'])
        new_todo.save()
    return redirect('index')
Esempio n. 25
0
def posttodo(request):
    if request.method == 'GET':
        return render(request, 'todo/posttodo.html', {'form': TodoForm()})
    else:
        try:
            form = TodoForm(request.POST)
            newTodo = form.save(commit=False)
            newTodo.user = request.user
            newTodo.save()
            return redirect('usertodos')
        except ValueError:
            print('fffffffffffffffffffffffffffffff')
            error = 'Bad data passed in.'
            return render(request, 'todo/posttodo.html', {
                'form': TodoForm(),
                'error': error
            })
Esempio n. 26
0
 def test_valid(self):
     """バリデーションOK"""
     params = {
         'title': 'title-1',
         'expiration_date': self.today,
     }
     form = TodoForm(params)
     self.assertTrue(form.is_valid())
Esempio n. 27
0
    def test_form_is_valid(self):
        obj = Todo.objects.create(text='Do this', owner=self.user)
        data = {'text': obj.text}
        form = TodoForm(data=data)

        self.assertTrue(form.is_valid())
        self.assertEqual(form.cleaned_data.get('text'), obj.text)
        self.assertNotEqual(form.cleaned_data.get('text'), 'Sleep')
Esempio n. 28
0
 def get_context_data(self, **kwargs):
     context = super(IndexView, self).get_context_data(**kwargs)
     active_tab = 'todo'
     if self.request.GET.get('tab') == 'done':
         active_tab = 'done'
     context['active_tab'] = active_tab
     context['todo_form'] = TodoForm()
     return context
Esempio n. 29
0
def add(request):
    form = TodoForm(request.POST or None)
    if form.is_valid():
        form.save()
        return http.HttpResponseRedirect(reverse('todo.list'))

    return render_to_response('add.html', {'form': form},
                              context_instance=RequestContext(request))
Esempio n. 30
0
def todoadd(request):
    todoform=TodoForm(request.POST or None)
    if todoform.is_valid():
        todo = todoform.save()
        todo.user = request.user
        todo.save()
        return redirect('todolist')
    return render(request,'todoadd.html',{'form':todoform})