hawat.blueprints.events package

This file contains pluggable module for Hawat web interface containing features related to IDEA events, database searching, viewing event details and producing event dashboards.

class hawat.blueprints.events.APIDashboardView[source]

Bases: hawat.view.mixin.AJAXMixin, hawat.blueprints.events.AbstractDashboardView

View responsible for presenting overall IDEA event statistics dashboard in the form of JSON document.

classmethod get_view_name()[source]

Implementation of hawat.view.BaseView.get_view_name().

methods: Optional[List[str]] = ['GET', 'POST']
process_response_context()[source]

Perform additional mangling with the response context before generating the response. This method can be useful to delete some context keys, that should not leave the server.

Returns

Possibly updated response context.

Return type

dict

class hawat.blueprints.events.APIMetadataView[source]

Bases: hawat.view.mixin.AJAXMixin, hawat.view.SimpleView

Application view providing access event metadata information.

authentication = True
do_before_response(**kwargs)[source]

This method will be called just before generating the response. By providing some meaningfull implementation you can use it for some simple item and response context mangling tasks.

Parameters

kwargs – Custom additional arguments.

classmethod get_view_name()[source]

Return unique name for the view. Name must be unique in the namespace of parent blueprint/module and should contain only characters [a-z0-9]. It will be used for generating endpoint name for the view.

This method does not have any default implementation and must be overridden by a subclass.

Returns

Name for the view.

Return type

str

classmethod get_view_title(**kwargs)[source]

Return title for the view, that will be displayed in the title tag of HTML head element and also as the content of page header in h2 tag.

Default implementation returns the return value of hawat.view.BaseView.get_menu_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Title for the view.

Return type

str

methods: Optional[List[str]] = ['GET', 'POST']
class hawat.blueprints.events.APISearchView[source]

Bases: hawat.view.mixin.AJAXMixin, hawat.blueprints.events.AbstractSearchView

View responsible for searching the IDEA event database and presenting the results in the form of JSON document.

classmethod get_view_name()[source]

Implementation of hawat.view.BaseView.get_view_name().

methods: Optional[List[str]] = ['GET', 'POST']
class hawat.blueprints.events.APIShowView[source]

Bases: hawat.view.mixin.AJAXMixin, hawat.blueprints.events.AbstractShowView

Detailed IDEA event view that presents the result as HTML page.

classmethod get_view_name()[source]

Implementation of hawat.view.BaseView.get_view_name().

methods: Optional[List[str]] = ['GET', 'POST']
class hawat.blueprints.events.AbstractDashboardView[source]

Bases: hawat.view.mixin.SQLAlchemyMixin, hawat.view.BaseSearchView

Base class for presenting overall IDEA event statistics dashboard.

authentication = True
static build_query(query, model, form_args)[source]

Hook method. Modify given query according to the given arguments.

property dbmodel

This property must be implemented in each subclass to return reference to appropriate model class based on SQLAlchemy declarative base.

This hook method will be called after successfull search.

do_before_response(**kwargs)[source]

This method will be called just before generating the response. By providing some meaningfull implementation you can use it for some simple item and response context mangling tasks.

Parameters

kwargs – Custom additional arguments.

classmethod get_menu_title(**kwargs)[source]

Return menu entry title for the view.

Default implementation returns the return value of hawat.view.BaseView.get_view_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Menu entry title for the view.

Return type

str

static get_search_form(request_args)[source]

Must return instance of flask_wtf.FlaskForm appropriate for searching given type of items.

classmethod get_view_icon()[source]

Implementation of mydojo.base.BaseView.get_view_name().

classmethod get_view_template()[source]

Return Jinja2 template file that should be used for rendering the view content. This default implementation works only in case the view class was properly registered into the parent blueprint/module with hawat.app.hawatBlueprint.register_view_class() method.

Returns

Jinja2 template file to use to render the view.

Return type

str

classmethod get_view_title(**kwargs)[source]

Return title for the view, that will be displayed in the title tag of HTML head element and also as the content of page header in h2 tag.

Default implementation returns the return value of hawat.view.BaseView.get_menu_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Title for the view.

Return type

str

class hawat.blueprints.events.AbstractSearchView[source]

Bases: hawat.base.PsycopgMixin, hawat.view.BaseSearchView

Base class for all views responsible for searching IDEA event database.

authentication = True
do_before_response(**kwargs)[source]

This method will be called just before generating the response. By providing some meaningfull implementation you can use it for some simple item and response context mangling tasks.

Parameters

kwargs – Custom additional arguments.

This hook method will be called before search attempt.

classmethod get_menu_title(**kwargs)[source]

Return menu entry title for the view.

Default implementation returns the return value of hawat.view.BaseView.get_view_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Menu entry title for the view.

Return type

str

static get_search_form(request_args)[source]

Must return instance of flask_wtf.FlaskForm appropriate for searching given type of items.

classmethod get_view_icon()[source]

Implementation of mydojo.base.BaseView.get_view_name().

classmethod get_view_title(**kwargs)[source]

Return title for the view, that will be displayed in the title tag of HTML head element and also as the content of page header in h2 tag.

Default implementation returns the return value of hawat.view.BaseView.get_menu_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Title for the view.

Return type

str

class hawat.blueprints.events.AbstractShowView[source]

Bases: hawat.base.PsycopgMixin, hawat.view.ItemShowView

Base class responsible for fetching and presenting single IDEA event.

authentication = True
classmethod get_menu_legend(**kwargs)[source]

Return menu entry legend for the view (menu entry hover tooltip).

Default implementation returns the return value of hawat.view.BaseView.get_menu_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Menu entry legend for the view.

Return type

str

classmethod get_menu_title(**kwargs)[source]

Implementation of hawat.view.BaseView.get_menu_title().

classmethod get_view_title(**kwargs)[source]

Implementation of hawat.view.BaseView.get_view_title().

hawat.blueprints.events.BLUEPRINT_NAME = 'events'

Name of the blueprint as module global constant.

class hawat.blueprints.events.DashboardView[source]

Bases: hawat.view.mixin.HTMLMixin, hawat.blueprints.events.AbstractDashboardView

View responsible for presenting overall IDEA event statistics dashboard in the form of HTML page.

classmethod get_view_name()[source]

Implementation of hawat.view.BaseView.get_view_name().

methods: Optional[List[str]] = ['GET']
class hawat.blueprints.events.DownloadView[source]

Bases: hawat.base.PsycopgMixin, hawat.view.BaseView

Download IDEA event as JSON file.

authentication = True
dispatch_request(item_id)[source]

Mandatory interface required by the flask.views.View.dispatch_request(). Will be called by the Flask framework to service the request.

Single item with given unique identifier will be retrieved from database and injected into template to be displayed to the user.

classmethod get_menu_legend(**kwargs)[source]

Return menu entry legend for the view (menu entry hover tooltip).

Default implementation returns the return value of hawat.view.BaseView.get_menu_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Menu entry legend for the view.

Return type

str

classmethod get_menu_title(**kwargs)[source]

Return menu entry title for the view.

Default implementation returns the return value of hawat.view.BaseView.get_view_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Menu entry title for the view.

Return type

str

classmethod get_view_name()[source]

Return unique name for the view. Name must be unique in the namespace of parent blueprint/module and should contain only characters [a-z0-9]. It will be used for generating endpoint name for the view.

This method does not have any default implementation and must be overridden by a subclass.

Returns

Name for the view.

Return type

str

classmethod get_view_title(**kwargs)[source]

Return title for the view, that will be displayed in the title tag of HTML head element and also as the content of page header in h2 tag.

Default implementation returns the return value of hawat.view.BaseView.get_menu_title() method by default.

Parameters

kwargs (dict) – Optional parameters.

Returns

Title for the view.

Return type

str

classmethod get_view_url(**kwargs)[source]

Return view URL.

Parameters

kwargs (dict) – Optional parameters.

Returns

URL for the view.

Return type

str

methods: Optional[List[str]] = ['GET']
class hawat.blueprints.events.EventsBlueprint(name, import_name, **kwargs)[source]

Bases: hawat.base.HawatBlueprint

Pluggable module - IDEA event database (events).

classmethod get_module_title()[source]

Get human readable name for this blueprint/module.

Returns

Name (short summary) of the blueprint/module.

Return type

str

name = None
register_app(app)[source]

Hook method: Custom callback, which will be called from hawat.app.Hawat.register_blueprint() method and which can perform additional tweaking of Hawat application object.

Parameters

app (hawat.app.Hawat) – Application object.

class hawat.blueprints.events.SearchView[source]

Bases: hawat.view.mixin.HTMLMixin, hawat.blueprints.events.AbstractSearchView

View responsible for searching the IDEA event database and presenting the results in the form of HTML page.

classmethod get_breadcrumbs_menu()[source]

Get breadcrumbs menu.

classmethod get_context_action_menu()[source]

Implementation of hawat.view.ItemListView.get_context_action_menu().

static get_qtype()[source]

Get type of the event select query.

has_help = True
methods: Optional[List[str]] = ['GET']
class hawat.blueprints.events.ShowView[source]

Bases: hawat.view.mixin.HTMLMixin, hawat.blueprints.events.AbstractShowView

Detailed IDEA event view that presents the result as HTML page.

classmethod get_action_menu()[source]

Get action menu for particular item.

has_help = True
methods: Optional[List[str]] = ['GET']
hawat.blueprints.events.get_blueprint()[source]

Mandatory interface for hawat.Hawat and factory function. This function must return a valid instance of hawat.app.HawatBlueprint or flask.Blueprint.