EduploneExam/questions BaseExamQuestion.py,1.29,1.30 FillGapQuestion.py,1.25,1.26 FreeTextQuestion.py,1.25,1.26 MatchingQuestion.py,1.25,1.26 MultipleChoiceQuestion.py,1.25,1.26 SingleChoiceQuestion.py,1.25,1.26 TrueFalseQuestion.py,1.25,1.26

Nils Haagen <[email protected]> Thu, 09 Jun 2005 09:21:54 +0000
Newsgroups gmane.comp.web.zope.eduplone.cvs
Message-ID <[email protected]>
Update of /cvsroot/eduplone/EduploneExam/questions
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3532/questions

Modified Files:
	BaseExamQuestion.py FillGapQuestion.py FreeTextQuestion.py 
	MatchingQuestion.py MultipleChoiceQuestion.py 
	SingleChoiceQuestion.py TrueFalseQuestion.py 
Log Message:
score as float, GUI-fixes, implementation of 'strict'-parameter, additional css-file

Index: FreeTextQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/FreeTextQuestion.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** FreeTextQuestion.py	8 Apr 2005 09:18:14 -0000	1.25
--- FreeTextQuestion.py	9 Jun 2005 09:21:52 -0000	1.26
***************
*** 113,117 ****
              #now calculate score
              possibleCorrect=len(answerObjects)
!             score=self.getMaxScore() / possibleCorrect * correctCounter
                      
                  
--- 113,123 ----
              #now calculate score
              possibleCorrect=len(answerObjects)
!             if self.getStrict():
!                 if possibleCorrect == correctCounter:
!                     score=self.getMaxScore()
!                 else:
!                     score=0
!             else:
!                 score=float(self.getMaxScore()) / possibleCorrect * correctCounter
                      
                  

Index: FillGapQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/FillGapQuestion.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** FillGapQuestion.py	8 Apr 2005 09:18:14 -0000	1.25
--- FillGapQuestion.py	9 Jun 2005 09:21:52 -0000	1.26
***************
*** 102,110 ****
          return basetext[gapId].startswith("<id='") and basetext[gapId].endswith("'>")
  
!     def getBasetextAsList(self):
!         """ Returns FillGap's base text as splitted list, each item
!             is one word.
!         """
!         return self.getBasetext().split(" ")
  
      def processResponse(self, REQUEST):
--- 102,108 ----
          return basetext[gapId].startswith("<id='") and basetext[gapId].endswith("'>")
  
!     def getWordById(self, gapId):
!         """ Returns word by given ID <gapId>. """
!         return self.getBasetextAsList()[gapId]
  
      def processResponse(self, REQUEST):
***************
*** 133,142 ****
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         score=self.getMaxScore() / possibleCorrect * correctCounter
          responseObj.setScore(score)
  
!     def getWordById(self, gapId):
!         """ Returns word by given ID <gapId>. """
!         return self.getBasetextAsList()[gapId]
  
  
--- 131,150 ----
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         
!         if self.getStrict():
!             if possibleCorrect == correctCounter:
!                 score=self.getMaxScore()
!             else:
!                 score=0
!         else:
!             score=float(self.getMaxScore()) / possibleCorrect * correctCounter
!         
          responseObj.setScore(score)
  
!     def getBasetextAsList(self):
!         """ Returns FillGap's base text as splitted list, each item
!             is one word.
!         """
!         return self.getBasetext().split(" ")
  
  

Index: TrueFalseQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/TrueFalseQuestion.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** TrueFalseQuestion.py	8 Apr 2005 09:18:14 -0000	1.25
--- TrueFalseQuestion.py	9 Jun 2005 09:21:52 -0000	1.26
***************
*** 104,108 ****
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         score=self.getMaxScore() / possibleCorrect * correctCounter
          responseObj.setScore(score)
  
--- 104,115 ----
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         if self.getStrict():
!             if possibleCorrect == correctCounter:
!                 score=self.getMaxScore()
!             else:
!                 score=0
!         else:
!             score=float(self.getMaxScore()) / possibleCorrect * correctCounter
!             
          responseObj.setScore(score)
  

Index: MatchingQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/MatchingQuestion.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** MatchingQuestion.py	8 Apr 2005 09:18:14 -0000	1.25
--- MatchingQuestion.py	9 Jun 2005 09:21:52 -0000	1.26
***************
*** 119,123 ****
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         score=self.getMaxScore() / possibleCorrect * correctCounter
          responseObj.setScore(score)
  
--- 119,130 ----
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         if self.getStrict():
!             if possibleCorrect == correctCounter:
!                 score=self.getMaxScore()
!             else:
!                 score=0
!         else:
!             score=float(self.getMaxScore()) / possibleCorrect * correctCounter
!         
          responseObj.setScore(score)
  

Index: SingleChoiceQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/SingleChoiceQuestion.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** SingleChoiceQuestion.py	8 Apr 2005 09:18:14 -0000	1.25
--- SingleChoiceQuestion.py	9 Jun 2005 09:21:52 -0000	1.26
***************
*** 104,108 ****
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         score=self.getMaxScore() / possibleCorrect * correctCounter
          responseObj.setScore(score)
  
--- 104,115 ----
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         if self.getStrict():
!             if possibleCorrect == correctCounter:
!                 score=self.getMaxScore()
!             else:
!                 score=0
!         else:
!             score=float(self.getMaxScore()) / possibleCorrect * correctCounter
!             
          responseObj.setScore(score)
  

Index: MultipleChoiceQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/MultipleChoiceQuestion.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -d -r1.25 -r1.26
*** MultipleChoiceQuestion.py	8 Apr 2005 09:18:14 -0000	1.25
--- MultipleChoiceQuestion.py	9 Jun 2005 09:21:52 -0000	1.26
***************
*** 107,111 ****
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         score=self.getMaxScore() / possibleCorrect * correctCounter
          responseObj.setScore(score)
  
--- 107,118 ----
          #now calculate and set score
          possibleCorrect=len(answerObjects) #is not the case for i.e. maching
!         if self.getStrict():
!             if possibleCorrect == correctCounter:
!                 score=self.getMaxScore()
!             else:
!                 score=0
!         else:
!             score=float(self.getMaxScore()) / possibleCorrect * correctCounter
!             
          responseObj.setScore(score)
  

Index: BaseExamQuestion.py
===================================================================
RCS file: /cvsroot/eduplone/EduploneExam/questions/BaseExamQuestion.py,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** BaseExamQuestion.py	8 Apr 2005 09:18:14 -0000	1.29
--- BaseExamQuestion.py	9 Jun 2005 09:21:52 -0000	1.30
***************
*** 102,108 ****
  ##/code-section after-schema
  
! class BaseExamQuestion:
      security = ClassSecurityInfo()
!     __implements__ = () + (IExamNotifier,IExamQuestion,)
  
  
--- 102,109 ----
  ##/code-section after-schema
  
! class BaseExamQuestion(OrderedBaseFolder):
      security = ClassSecurityInfo()
!     #__implements__ = () + (IExamNotifier,IExamQuestion,)
!     __implements__ = (getattr(OrderedBaseFolder,'__implements__',()),) + (IExamNotifier,IExamQuestion,)
  
  
***************
*** 168,174 ****
      def getQuestionType(self):
          '''
- 
          '''
- 
          return self.archetype_name
  
--- 169,173 ----



-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.  How far can you shotput
a projector? How fast can you ride your desk chair down the office luge track?
If you want to score the big prize, get to know the little guy.  
Play to win an NEC 61" plasma display: http://www.necitguy.com/?r=20