class definitions for survey/self assessment basically working
This commit is contained in:
		
							parent
							
								
									58bb16aaa9
								
							
						
					
					
						commit
						54253ee664
					
				
					 3 changed files with 29 additions and 12 deletions
				
			
		|  | @ -4,13 +4,14 @@ type(u'questionnaire', u'Fragebogen', viewName=u'', | ||||||
|     options=u'action.portlet:create_subtype,edit_concept') |     options=u'action.portlet:create_subtype,edit_concept') | ||||||
| type(u'questiongroup', u'Fragengruppe', viewName=u'',  | type(u'questiongroup', u'Fragengruppe', viewName=u'',  | ||||||
|     typeInterface=u'loops.knowledge.survey.interfaces.IQuestionGroup',  |     typeInterface=u'loops.knowledge.survey.interfaces.IQuestionGroup',  | ||||||
|     options=u'action.portlet:create_subtype,edit_concept') |     options=u'action.portlet:create_subtype,edit_concept\nchildren_append\nshow_navigation') | ||||||
| type(u'question', u'Frage', viewName=u'',  | type(u'question', u'Frage', viewName=u'',  | ||||||
|     typeInterface=u'loops.knowledge.survey.interfaces.IQuestion',  |     typeInterface=u'loops.knowledge.survey.interfaces.IQuestion',  | ||||||
|     options=u'action.portlet:create_subtype,edit_concept') |     options=u'action.portlet:edit_concept\nshow_navigation') | ||||||
|  |     #options=u'action.portlet:create_subtype,edit_concept') | ||||||
| type(u'feedbackitem', u'Feedback-Element', viewName=u'',  | type(u'feedbackitem', u'Feedback-Element', viewName=u'',  | ||||||
|     typeInterface=u'loops.knowledge.survey.interfaces.IFeedbackItem',  |     typeInterface=u'loops.knowledge.survey.interfaces.IFeedbackItem',  | ||||||
|     options=u'action.portlet:edit_concept') |     options=u'action.portlet:edit_concept\nshow_navigation') | ||||||
| 
 | 
 | ||||||
| # subtypes | # subtypes | ||||||
| #child(u'questionnaire', u'questionnaire', u'issubtype') | #child(u'questionnaire', u'questionnaire', u'issubtype') | ||||||
|  |  | ||||||
|  | @ -40,6 +40,9 @@ class Questionnaire(AdapterBase, Questionnaire): | ||||||
|     implements(IQuestionnaire) |     implements(IQuestionnaire) | ||||||
| 
 | 
 | ||||||
|     _contextAttributes = list(IQuestionnaire) |     _contextAttributes = list(IQuestionnaire) | ||||||
|  |     _adapterAttributes = AdapterBase._adapterAttributes + ( | ||||||
|  |                 'questionGroups', 'questions', 'responses',) | ||||||
|  |     _noexportAttributes = _adapterAttributes | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class QuestionGroup(AdapterBase, QuestionGroup): | class QuestionGroup(AdapterBase, QuestionGroup): | ||||||
|  | @ -47,6 +50,9 @@ class QuestionGroup(AdapterBase, QuestionGroup): | ||||||
|     implements(IQuestionGroup) |     implements(IQuestionGroup) | ||||||
| 
 | 
 | ||||||
|     _contextAttributes = list(IQuestionGroup) |     _contextAttributes = list(IQuestionGroup) | ||||||
|  |     _adapterAttributes = AdapterBase._adapterAttributes + ( | ||||||
|  |                 'questionnaire', 'questions', 'feedbackItems',) | ||||||
|  |     _noexportAttributes = _adapterAttributes | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class Question(AdapterBase, Question): | class Question(AdapterBase, Question): | ||||||
|  | @ -54,6 +60,9 @@ class Question(AdapterBase, Question): | ||||||
|     implements(IQuestion) |     implements(IQuestion) | ||||||
| 
 | 
 | ||||||
|     _contextAttributes = list(IQuestion) |     _contextAttributes = list(IQuestion) | ||||||
|  |     _adapterAttributes = AdapterBase._adapterAttributes + ( | ||||||
|  |                 'text', 'questionnaire', 'answerRange', 'feedbackItems',) | ||||||
|  |     _noexportAttributes = _adapterAttributes | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class FeedbackItem(AdapterBase, FeedbackItem): | class FeedbackItem(AdapterBase, FeedbackItem): | ||||||
|  | @ -61,4 +70,7 @@ class FeedbackItem(AdapterBase, FeedbackItem): | ||||||
|     implements(IFeedbackItem) |     implements(IFeedbackItem) | ||||||
| 
 | 
 | ||||||
|     _contextAttributes = list(IFeedbackItem) |     _contextAttributes = list(IFeedbackItem) | ||||||
|  |     _adapterAttributes = AdapterBase._adapterAttributes + ( | ||||||
|  |                 'text',) | ||||||
|  |     _noexportAttributes = _adapterAttributes | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -25,15 +25,18 @@ from zope import interface, component, schema | ||||||
| 
 | 
 | ||||||
| from cybertools.knowledge.survey import interfaces | from cybertools.knowledge.survey import interfaces | ||||||
| from loops.interfaces import IConceptSchema | from loops.interfaces import IConceptSchema | ||||||
|  | from loops.util import _ | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class IQuestionnaire(IConceptSchema, interfaces.IQuestionnaire): | class IQuestionnaire(IConceptSchema, interfaces.IQuestionnaire): | ||||||
|     """ A collection of questions for setting up a survey. |     """ A collection of questions for setting up a survey. | ||||||
|     """ |     """ | ||||||
| 
 | 
 | ||||||
|     defaultAnswerOptions = Attribute('A sequence of answer options to select from. ' |     defaultAnswerRange = schema.Int( | ||||||
|                 'Default value used for questions that do not ' |         title=_(u'Answer Range'), | ||||||
|                 'explicitly provide the values attribute.') |         description=_(u'Number of items (answer options) to select from.'), | ||||||
|  |         default=4, | ||||||
|  |         required=True) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class IQuestionGroup(IConceptSchema, interfaces.IQuestionGroup): | class IQuestionGroup(IConceptSchema, interfaces.IQuestionGroup): | ||||||
|  | @ -45,8 +48,11 @@ class IQuestion(IConceptSchema, interfaces.IQuestion): | ||||||
|     """ A single question within a questionnaire. |     """ A single question within a questionnaire. | ||||||
|     """ |     """ | ||||||
| 
 | 
 | ||||||
|     text = Attribute('The question asked.') |     revertAnswerOptions = schema.Bool( | ||||||
|     answerOptions = Attribute('A sequence of answer options to select from.') |         title=_(u'Negative'), | ||||||
|  |         description=_(u'Value inversion: High selection means low value.'), | ||||||
|  |         default=False, | ||||||
|  |         required=False) | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| class IFeedbackItem(IConceptSchema, interfaces.IFeedbackItem): | class IFeedbackItem(IConceptSchema, interfaces.IFeedbackItem): | ||||||
|  | @ -54,8 +60,6 @@ class IFeedbackItem(IConceptSchema, interfaces.IFeedbackItem): | ||||||
|         that may be deduced from the res)ponses to a questionnaire. |         that may be deduced from the res)ponses to a questionnaire. | ||||||
|     """ |     """ | ||||||
| 
 | 
 | ||||||
|     text = Attribute('A text representing this result element.') |  | ||||||
| 
 |  | ||||||
| 
 | 
 | ||||||
| class IResponse(interfaces.IResponse): | class IResponse(interfaces.IResponse): | ||||||
|     """ A set of response values given to the questions of a questionnaire |     """ A set of response values given to the questions of a questionnaire | ||||||
|  | @ -64,6 +68,6 @@ class IResponse(interfaces.IResponse): | ||||||
|      |      | ||||||
| 
 | 
 | ||||||
| class IResponses(Interface): | class IResponses(Interface): | ||||||
|     """ A container of manager of survey responses. |     """ A container or manager of survey responses. | ||||||
|     """ |     """ | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue