16
15
# You should have received a copy of the GNU Affero General Public License
17
16
# along with linaro-ci-dashboard. If not, see <http://www.gnu.org/licenses/>.
19
from django.contrib.auth.decorators import login_required
20
from django.core.urlresolvers import reverse
21
from django.views.generic.edit import CreateView
22
from django.utils.decorators import method_decorator
23
18
from frontend.android_textfield_loop.models.android_textfield_loop \
24
19
import AndroidTextFieldLoop
25
20
from frontend.android_textfield_loop.forms.android_textfield_loop_form \
26
21
import AndroidTextFieldLoopForm
29
class AndroidTextFieldLoopCreateView(CreateView):
22
from frontend.views.loop_create_view import LoopCreateView
25
class AndroidTextFieldLoopCreateView(LoopCreateView):
31
27
template_name = "android_textfield_loop_create.html"
32
28
form_class = AndroidTextFieldLoopForm
33
29
model = AndroidTextFieldLoop
34
form_name = 'android_textfield_loop'
36
def form_valid(self, form):
37
"""This method is called when valid form data has been POSTed.
39
It should return an HttpResponse."""
40
return super(AndroidTextFieldLoopCreateView, self).form_valid(form)
42
@method_decorator(login_required)
43
def dispatch(self, *args, **kwargs):
44
return super(AndroidTextFieldLoopCreateView,
45
self).dispatch(*args, **kwargs)
47
def get_context_data(self, **kwargs):
48
'''Get the context data passed to template.'''
49
context = super(AndroidTextFieldLoopCreateView,
50
self).get_context_data(**kwargs)
51
context['request'] = self.request
52
context['form_name'] = self.form_name
55
def get_success_url(self):
56
'''Return the URL when the form is valid.'''
57
return reverse('AndroidTextFieldLoopDetail', args=[self.object.name])
30
reverse_url = 'AndroidTextFieldLoopDetail'