django-fobi/examples/simple/foo/fobi_form_callbacks.py

54 lines
1.5 KiB
Python
Raw Normal View History

2014-10-11 03:54:24 +00:00
from __future__ import print_function
import logging
from fobi.base import FormCallback, form_callback_registry
from fobi.constants import (
CALLBACK_BEFORE_FORM_VALIDATION,
CALLBACK_FORM_VALID_BEFORE_SUBMIT_PLUGIN_FORM_DATA,
CALLBACK_FORM_VALID,
CALLBACK_FORM_VALID_AFTER_FORM_HANDLERS,
CALLBACK_FORM_INVALID
)
2014-10-11 03:54:24 +00:00
logger = logging.getLogger('fobi')
__all__ = (
'SaveAsFooItem',
'DummyInvalidCallback',
)
2014-10-11 03:54:24 +00:00
# *************************************************************
# **************** Save as foo callback ***********************
# *************************************************************
2014-10-11 03:54:24 +00:00
class SaveAsFooItem(FormCallback):
"""Save the form as a foo item, if certain conditions are met."""
2014-10-11 03:54:24 +00:00
stage = CALLBACK_FORM_VALID
def callback(self, form_entry, request, form):
"""Custom callback login comes here."""
2014-10-11 03:54:24 +00:00
logger.debug("Great! Your form is valid!")
form_callback_registry.register(SaveAsFooItem)
# *************************************************************
# **************** Save as foo callback ***********************
# *************************************************************
2014-10-11 03:54:24 +00:00
class DummyInvalidCallback(FormCallback):
"""Saves the form as a foo item, if certain conditions are met."""
2014-10-11 03:54:24 +00:00
stage = CALLBACK_FORM_INVALID
def callback(self, form_entry, request, form):
"""Custom callback login comes here."""
2014-10-11 03:54:24 +00:00
logger.debug("Damn! You've made a mistake, boy!")
form_callback_registry.register(DummyInvalidCallback)