19.1.18. camcops_server.cc_modules.cc_forms¶
Copyright (C) 2012-2018 Rudolf Cardinal (rudolf@pobox.com).
This file is part of CamCOPS.
CamCOPS is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
CamCOPS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with CamCOPS. If not, see <http://www.gnu.org/licenses/>.
COLANDER NODES, NULLS, AND VALIDATION
Surprisingly tricky.
Nodes must be validly intialized with NO USER-DEFINED PARAMETERS to __init__; the Deform framework clones them.
A null appstruct is used to initialize nodes as Forms are created. Therefore, the “default” value must be acceptable to the underlying type’s serialize() function. Note in particular that “default = None” is not acceptable to Integer. Having no default is fine, though.
In general, flexible inheritance is very hard to implement.
Note that this error:
AttributeError: 'EditTaskFilterSchema' object has no attribute 'typ'
means you have failed to call super().__init__() properly from __init__().
When creating a schema, its members seem to have to be created in the class declaration as class properties, not in __init__().
-
class
camcops_server.cc_modules.cc_forms.
AddCancelForm
(schema_class: Type[colander.Schema], request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
AddIdDefinitionForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
AddSpecialNoteForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
AddUserGroupadminForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
AddUserSuperuserForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
AdministeredGroupsSequence
(*args, **kwargs)[source]¶ Typical use: (non-superuser) group administrator assigns group memberships to a user. Offers the groups administered by the requestor.
-
class
camcops_server.cc_modules.cc_forms.
AllGroupsSequence
(*args, minimum_number: int = 0, **kwargs)[source]¶ Typical use: superuser assigns group memberships to a user. Offer all possible groups.
-
class
camcops_server.cc_modules.cc_forms.
AllOtherGroupsSequence
(*args, minimum_number: int = 0, **kwargs)[source]¶ Typical use: superuser assigns group permissions to another group. Offer all possible OTHER groups.
-
class
camcops_server.cc_modules.cc_forms.
AllowedGroupsSequence
(*args, minimum_number: int = 0, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ApplyCancelForm
(schema_class: Type[colander.Schema], request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
CSRFSchema
(*arg, **kw)[source]¶ Base class for form schemas that use CSRF (XSRF; cross-site request forgery) tokens.
You can’t put the call to bind() at the end of __init__(), because bind() calls clone() with no arguments and clone() ends up calling __init__()…
-
class
camcops_server.cc_modules.cc_forms.
CSRFToken
(*arg, **kw)[source]¶ From http://deform2000.readthedocs.io/en/latest/basics.html:
“The default of a schema node indicates the value to be serialized if a value for the schema node is not found in the input data during serialization. It should be the deserialized representation. If a schema node does not have a default, it is considered “serialization required”.”
“The missing of a schema node indicates the value to be deserialized if a value for the schema node is not found in the input data during deserialization. It should be the deserialized representation. If a schema node does not have a missing value, a colander.Invalid exception will be raised if the data structure being deserialized does not contain a matching value.”
RNC: Serialized values are always STRINGS.
-
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
ChangeOtherPasswordForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ChangeOwnPasswordForm
(request: CamcopsRequest, must_differ: bool = True, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ChangeOwnPasswordSchema
(*args, must_differ: bool = True, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ChooseTrackerForm
(request: CamcopsRequest, as_ctv: bool, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DangerousForm
(schema_class: Type[colander.Schema], submit_action: str, submit_title: str, request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DatabaseDialectSelector
(*args, **kwargs)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
DeleteCancelForm
(schema_class: Type[colander.Schema], request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DeleteGroupForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DeleteIdDefinitionForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DeletePatientChooseForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DeletePatientConfirmForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
DumpTypeSelector
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
EditGroupForm
(request: CamcopsRequest, group: camcops_server.cc_modules.cc_group.Group, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditIdDefinitionForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditPatientForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditServerSettingsForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditTaskFilterForm
(request: CamcopsRequest, open_who: bool = False, open_what: bool = False, open_when: bool = False, open_admin: bool = False, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditUserFullForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditUserGroupAdminForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditUserGroupMembershipFullForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
EditUserGroupMembershipGroupAdminForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ForciblyFinalizeChooseDeviceForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ForciblyFinalizeConfirmForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
GroupsSequenceBase
(*args, minimum_number: int = 0, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
HL7MessageLogForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
Hl7AssigningAuthorityNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
Hl7IdTypeNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
IdDefinitionDescriptionNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
IdDefinitionShortDescriptionNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
IncludeBlobsNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.Boolean
-
-
class
camcops_server.cc_modules.cc_forms.
LoginForm
(request: CamcopsRequest, autocomplete_password: bool = True, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
MandatoryDeviceIdSelector
(*args, **kwargs)[source]¶ -
schema_type
¶ alias of
colander.Integer
-
-
class
camcops_server.cc_modules.cc_forms.
MandatoryGroupIdSelectorAdministeredGroups
(*args, **kwargs)[source]¶ Offers a picklist of groups from GROUPS ADMINISTERED BY REQUESTOR. Used by groupadmins: add user to my group(s).
-
class
camcops_server.cc_modules.cc_forms.
MandatoryGroupIdSelectorAllGroups
(*args, **kwargs)[source]¶ Offers a picklist of groups from ALL POSSIBLE GROUPS. Used by superusers: add user to any group.
-
class
camcops_server.cc_modules.cc_forms.
MandatoryGroupIdSelectorAllowedGroups
(*args, **kwargs)[source]¶ Offers a picklist of groups from THOSE THE USER IS ALLOWED TO SEE. Used for task filters.
-
class
camcops_server.cc_modules.cc_forms.
MandatoryGroupIdSelectorOtherGroups
(*args, **kwargs)[source]¶ Offers a picklist of groups THAT ARE NOT THE SPECIFIED GROUP. Used by superusers: “which other groups can this group see?”
-
class
camcops_server.cc_modules.cc_forms.
MandatoryGroupIdSelectorUserGroups
(*args, **kwargs)[source]¶ Offers a picklist of groups from THOSE THE USER IS A MEMBER OF. Used for: “which of your groups do you want to upload into?”
-
class
camcops_server.cc_modules.cc_forms.
MandatoryIdNumValue
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.Integer
-
-
class
camcops_server.cc_modules.cc_forms.
MandatoryUserIdSelectorUsersAllowedToSee
(*args, **kwargs)[source]¶ -
schema_type
¶ alias of
colander.Integer
-
-
class
camcops_server.cc_modules.cc_forms.
MultiTaskSelector
(*args, tracker_tasks_only: bool = False, minimum_number: int = 0, **kwargs)[source]¶ -
schema_type
¶ alias of
colander.Set
-
-
class
camcops_server.cc_modules.cc_forms.
MustChangePasswordNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.Boolean
-
-
class
camcops_server.cc_modules.cc_forms.
NewPasswordNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
OfferBasicDumpForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
OfferSqlDumpForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
OfferTermsForm
(request: CamcopsRequest, agree_button_text: str, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
OldUserPasswordCheck
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
OptionalGroupIdSelectorUserGroups
(*args, **kwargs)[source]¶ Offers a picklist of groups from THOSE THE USER IS A MEMBER OF. Used for “which do you want to upload into?”.
-
class
camcops_server.cc_modules.cc_forms.
OptionalSingleTaskSelector
(*args, tracker_tasks_only: bool = False, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
RefreshTasksForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
ReportOutputTypeSelector
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
ReportParamForm
(request: CamcopsRequest, schema_class: Type[camcops_server.cc_modules.cc_forms.ReportParamSchema], **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
RowsPerPageSelector
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.Integer
-
-
class
camcops_server.cc_modules.cc_forms.
SetUserUploadGroupForm
(request: CamcopsRequest, user: User, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
SimpleSubmitForm
(schema_class: Type[colander.Schema], submit_title: str, request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
SortTsvByHeadingsNode
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.Boolean
-
-
class
camcops_server.cc_modules.cc_forms.
SqliteSelector
(*args, **kwargs)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
TaskTrackerOutputTypeSelector
(*arg, **kw)[source]¶ -
schema_type
¶ alias of
colander.String
-
-
class
camcops_server.cc_modules.cc_forms.
TasksPerPageForm
(request: CamcopsRequest, **kwargs)[source]¶
-
class
camcops_server.cc_modules.cc_forms.
UserGroupMembershipFullSchema
(*arg, **kw)[source]¶ Edit group membership - for superusers.
-
class
camcops_server.cc_modules.cc_forms.
UserGroupMembershipGroupAdminSchema
(*arg, **kw)[source]¶ Edit group membership - for group administrators.