示例#1
0
    def get(self):
        if self.request.get('langCode'):
            langCode = self.request.get('langCode')

            q = SubjectAreas.query(SubjectAreas.LangCode == langCode)
            units = q.fetch(999)

            countmap_other_language={}
            for unit in units:
                logging.info('QQQ: LangCode in clone: %s' % unit.LangCode)
                if unit.LearningUnitID not in countmap_other_language:
                    logging.info('QQQ: LearningUnitID in clone: %s' % unit.LearningUnitID)
                    countmap_other_language[unit.LearningUnitID] = 1

            q = SubjectAreas.query(SubjectAreas.LangCode == 'en')
            units_en = q.fetch(999)

            for unit2 in units_en:
                if unit2.LearningUnitID not in countmap_other_language:
                    logging.info('QQQ: LearningUnitID to add in clone: %s' % unit2.LearningUnitID)
                    logging.info('QQQ: LangCode to add in clone: %s' % langCode)
                    n = SubjectAreas(LearningUnitID = unit2.LearningUnitID
                        , Name = unit2.Name
                        , LangCode = langCode
                        , Description = unit2.Description
                        , Status = 'Pending Translation'
                        )
                    n.put()
            return self.redirect('/subjareas')        

        else:
            return self.redirect('/subjareas')  
示例#2
0
    def post(self):
        #logging.error('QQQ: templatecreate POST')
        n = SubjectAreas(LearningUnitID = self.request.get('Name')
#                  , Subject=self.request.get('Subject')
                  , Name = self.request.get('Name')
                  , Seq = 256
                  , LangCode = 'en'
                  , Description=self.request.get('Description')
                  , Status = 'Pending Review'
                  )
        n.put()
        return self.redirect('/subjareas/create')
示例#3
0
    def post(self):
        #logging.error('QQQ: templatecreate POST')
        n = SubjectAreas(LearningUnitID = self.request.get('Name')
#                  , Subject=self.request.get('Subject')
                  , Name = self.request.get('Name')
                  , Seq = 999
                  , LangCode = 'en'
                  , Description=self.request.get('Description')
                  , Status = 'Pending Review'
                  )
        n.put()
        logging.info("PPP - Preparing to delete SubjAreas_units from memcache.")
        memcache.delete("SubjAreas")
        memcache.delete("SubjAreas_EnCnt")
        return self.redirect('/subjareas/create')
示例#4
0
    def get(self, unit_id):
        iden = int(unit_id)
        unit = ndb.Key('Subjects', iden).get()

        f = Subjects.query(Subjects.LangCode == 'en', Subjects.LearningUnitID == unit.LearningUnitID)
        units_en = f.get()
        
        SubjAreaList = []
        if SubjectAreas.LangCode == 'en':
            q = SubjectAreas.query(SubjectAreas.LangCode == 'en').order(SubjectAreas.Seq)
            SubjAreaResponseSet = q.fetch(999)
            for SubjArea in SubjAreaResponseSet:
                SubjAreaList.append(SubjArea.Name)

        logout = None
        login = None
        currentuser = users.get_current_user()
        if currentuser:
              logout = users.create_logout_url('/units' )
        else:
              login = users.create_login_url('/units')

        #SubjectList = ['Math', 'Biology', 'Chemistry'];		  
        StatusList = ['Pending Translation', 'Pending Review', 'Published'];		  
        self.render_template('LearnSubjEdit.html', {'unit': unit, 'units_en': units_en, 'SubjectList': SubjAreaList, 'StatusList': StatusList, 'currentuser':currentuser, 'login':login, 'logout': logout})
示例#5
0
    def get(self):
        languages = memcache.get("languages")
        if languages is not None:
            logging.info("get languages from memcache.")
        else:
            q = Languages.query().order(Languages.langName)
            languages = q.fetch(99)
            logging.info("Can not get languages from memcache.")
            if not memcache.add("languages", languages, 10):
                logging.info("Memcache set failed.")

        if self.request.get('langCode'):
            langCode=self.request.get('langCode')
            self.session['langCode'] = langCode
        else:
            langCode = self.session.get('langCode')
        if not langCode:
            self.session['langCode'] = 'en' 
            langCode = 'en'

        SubjAreaFilter = self.session.get('SubjAreaFilter')
        if not SubjAreaFilter:
            self.session['SubjAreaFilter'] = 'Math'
            SubjAreaFilter = 'Math'

        SubjAreaList = []
        q = SubjectAreas.query(SubjectAreas.LangCode == langCode).order(SubjectAreas.Seq)
        SubjAreaResponseSet = q.fetch(999)
        for SubjArea in SubjAreaResponseSet:
            SubjAreaList.append(SubjArea.Name)

        logout = None
        login = None
        currentuser = users.get_current_user()
        if currentuser:
              logout = users.create_logout_url('/subjs' )
        else:
              login = users.create_login_url('/subjs')

#        SubjectList = ['Math', 'Biology', 'Chemistry'];		  
        self.render_template('LearnSubjCreate.html', {'SubjectList': SubjAreaList, 'SubjAreaFilter': SubjAreaFilter, 'currentuser':currentuser, 'login':login, 'logout': logout})
示例#6
0
    def get(self):
#        TopicSeqRecalc()
        
        languages = memcache.get("languages")
        if languages is not None:
            logging.info("get languages from memcache.")
        else:
            q = Languages.query().order(Languages.langName)
            languages = q.fetch(99)
            logging.info("Can not get languages from memcache.")
            if not memcache.add("languages", languages, 99):
                logging.info("Memcache set failed.")

        if self.request.get('langCode'):
            langCode=self.request.get('langCode')
            self.session['langCode'] = langCode
        else:
            langCode = self.session.get('langCode')
        if not langCode:
            self.session['langCode'] = 'en' 
            langCode = 'en'

        langName = 'no language'
        for language in languages:
            if language.langCode == langCode:
                langName = language.langName

        if self.request.get('StatusFilter'):
            StatusFilter=self.request.get('StatusFilter')
            self.session['StatusFilter'] = StatusFilter
        else:
            StatusFilter = self.session.get('StatusFilter')
        if not StatusFilter:
            self.session['StatusFilter'] = 'all'
            StatusFilter = 'all'

        if self.request.get('SubjAreaFilter'):
            SubjAreaFilter=self.request.get('SubjAreaFilter')
            self.session['SubjAreaFilter'] = SubjAreaFilter
        else:
            SubjAreaFilter = self.session.get('SubjAreaFilter')
        if not SubjAreaFilter:
            self.session['SubjAreaFilter'] = 'Math'
            SubjAreaFilter = 'Math'

        if self.request.get('Typ'):
            Typ=self.request.get('Typ')
            self.session['Typ'] = Typ
        else:
            Typ = self.session.get('Typ')
        if not Typ:
            self.session['Typ'] = 'ex'
            Typ = 'ex'

        logout = None
        login = None
        currentuser = users.get_current_user()
        if currentuser:
              logout = users.create_logout_url('/units' )
        else:
              login = users.create_login_url('/units')

        SubjAreaList = []
        q = SubjectAreas.query(SubjectAreas.LangCode == langCode)
        SubjAreaResponseSet = q.fetch(999)
        for SubjArea in SubjAreaResponseSet:
            SubjAreaList.append(SubjArea.Name)
        StatusList = ['Pending Translation', 'Pending Review', 'Published'];
#        SubjAreaList = ['Math', 'Science'];	
        logging.info('QQQ: rq rq rq: %s' % self.request.get('rq'))
#        if self.request.get('rq') == '2':

        Cnt = memcache.get("Subj_EnCnt")
        if Cnt is not None:
            logging.info("PPP - got Subj_EnCnt from memcache.")
            count_en = Cnt
        else:
            logging.info("PPP - Could not get Subjs_EnCnt from memcache.")
            count_en = 0
            langCode_en = 'en'
            units = memcache.get("Subjs_En")
            if units is not None:
                logging.info("PPP - got Subjs_En_units from memcache.")
            else:
                # logging.info("PPP - Can not get SubjAreas_units from memcache.")
                q = Subjects.query(Subjects.LangCode == langCode_en)
                units = q.fetch(999, keys_only=True)
                if not memcache.add("Subjs_En", units, 999):
                    logging.info("PPP - Subjs_EnCnt_Memcache set failed.")
            for unit in units:
#                logging.info('QQQ: count_en: %d' % count_en)
                count_en = count_en + 1
            if not memcache.add("Subj_EnCnt", count_en, 999):
                    logging.info("PPP - Subj_EnCnt_Memcache set failed.")
        logging.info('QQQ: Total count_en: %d' % count_en)

        # count_en = 0
        # langCode_en = 'en'
        # q = Subjects.query(Subjects.LangCode == langCode_en)
        # units = q.fetch(999)
        # for unit in units:
            # logging.info('QQQ: count_en: %d' % count_en)
            # count_en = count_en + 1
        # logging.info('QQQ: Total count_en: %d' % count_en)

        logging.info('QQQ: langCode: %s' % langCode)
        count_other_language = 0
        q2 = Subjects.query(Subjects.LangCode == langCode)
        unitsx = q2.fetch(999, keys_only=True)
        for unit in unitsx:
            logging.info('QQQ: count_other_language: %d' % count_other_language)
            count_other_language = count_other_language + 1
        logging.info('QQQ: Total count_other_language: %d' % count_other_language)

        logging.info('GGG: StatusFilter in LearnUnitList: %s' % StatusFilter)
        logging.info('GGG: SubjAreaFilter in LearnUnitList: %s' % SubjAreaFilter)
        if SubjAreaFilter == 'all':
            if StatusFilter == 'all':
                logging.info('GGG: Which Query in LearnUnitList: %s' % 'all and all')
                logging.info('GGG: LangCode in LearnUnitList: %s' % langCode)
                q = Subjects.query(Subjects.LangCode == langCode).order(Subjects.Seq, Subjects.LearningUnitID)
            else:
                logging.info('GGG: Which Query in LearnUnitList: %s' % 'all and StatusFilter')
                logging.info('GGG: LangCode in LearnUnitList: %s' % langCode)
                logging.info('GGG: StatusFilter in LearnUnitList: %s' % StatusFilter)
                q = Subjects.query(Subjects.LangCode == langCode, Subjects.Status == StatusFilter).order(Subjects.Seq, Subjects.LearningUnitID)
        else:
            if StatusFilter == 'all':
                logging.info('GGG: Which Query in LearnUnitList: %s' % 'SubjAreaFilter and all')
                logging.info('GGG: LangCode in LearnUnitList: %s' % langCode)
                logging.info('GGG: SubjAreaFilter in LearnUnitList: %s' % SubjAreaFilter)
                q = Subjects.query(Subjects.LangCode == langCode, Subjects.Subject == SubjAreaFilter).order(Subjects.Seq, Subjects.LearningUnitID)
            else:
                logging.info('GGG: Which Query in LearnUnitList: %s' % 'SubjAreaFilter and StatusFilter')
                logging.info('GGG: LangCode in LearnUnitList: %s' % langCode)
                logging.info('GGG: SubjAreaFilter in LearnUnitList: %s' % SubjAreaFilter)
                logging.info('GGG: StatusFilter in LearnUnitList: %s' % StatusFilter)
                q = Subjects.query(Subjects.LangCode == langCode, Subjects.Subject == SubjAreaFilter, Subjects.Status == StatusFilter).order(Subjects.Seq, Subjects.LearningUnitID)

        units = q.fetch(999)
    #    self.render_template('LearnSubjList.html', {'units': units, 'count_en': count_en, 'count_other_language': count_other_language, 'StatusList':StatusList, 'StatusFilter':StatusFilter, 'SubjAreaFilter':SubjAreaFilter, 'SubjAreaList':SubjAreaList, 'languages':languages, 'langCode':langCode, 'langName':langName, 'currentuser':currentuser, 'login':login, 'logout': logout})

#        else:
#            units = []
#            count_en = 0
#            count_other_language = 0
        self.render_template('LearnSubjList.html', {'units': units, 'count_en': count_en, 'count_other_language': count_other_language, 'StatusList':StatusList, 'StatusFilter':StatusFilter, 'SubjAreaFilter':SubjAreaFilter, 'Typ':Typ, 'SubjAreaList':SubjAreaList, 'languages':languages, 'langCode':langCode, 'langName':langName, 'currentuser':currentuser, 'login':login, 'logout': logout})
示例#7
0
      def get(self):  
        languages = memcache.get("languages")
        if languages is not None:
            logging.info("get languages from memcache.")
        else:
            q = Languages.query().order(Languages.langName)
            languages = q.fetch(99)
            logging.info("Can not get languages from memcache.")
            if not memcache.add("languages", languages, 10):
                logging.info("Memcache set failed.")

        if self.request.get('langCode'):
            langCode=self.request.get('langCode')
            self.session['langCode'] = langCode
        else:
            langCode = self.session.get('langCode')
        if not langCode:
            self.session['langCode'] = 'en' 
            langCode = 'en'

        langName = 'no language'
        for language in languages:
            if language.langCode == langCode:
                langName = language.langName

        if self.request.get('StatusFilter'):
            StatusFilter=self.request.get('StatusFilter')
            self.session['StatusFilter'] = StatusFilter
        else:
            StatusFilter = self.session.get('StatusFilter')
        if not StatusFilter:
            self.session['StatusFilter'] = 'all'
            StatusFilter = 'all'

        count_en = 0
        langCode_en = 'en'
        q = SubjectAreas.query(SubjectAreas.LangCode == langCode_en)
        units = q.fetch(999)
        for unit in units:
            logging.info('QQQ: count_en: %d' % count_en)
            count_en = count_en + 1
        logging.info('QQQ: Total count_en: %d' % count_en)

        logging.info('QQQ: langCode: %s' % langCode)
        count_other_language = 0
        q2 = SubjectAreas.query(SubjectAreas.LangCode == langCode)
        unitsx = q2.fetch(999)
        for unit in unitsx:
            logging.info('QQQ: count_other_language: %d' % count_other_language)
            count_other_language = count_other_language + 1
        logging.info('QQQ: Total count_other_language: %d' % count_other_language)

        logging.info('GGG: StatusFilter in SubjAreasList: %s' % StatusFilter)
        if StatusFilter == 'all':
            q = SubjectAreas.query(SubjectAreas.LangCode == langCode).order(SubjectAreas.LearningUnitID)
        else:
            q = SubjectAreas.query(SubjectAreas.LangCode == langCode, SubjectAreas.Status == StatusFilter).order(SubjectAreas.LearningUnitID)
        units = q.fetch(999)

        logout = None
        login = None
        currentuser = users.get_current_user()
        if currentuser:
              logout = users.create_logout_url('/subjareas' )
        else:
              login = users.create_login_url('/subjareas')

        StatusList = ['Pending Translation', 'Pending Review', 'Published'];

        self.render_template('LearnSubjAreaList.html', {'units': units, 'count_en': count_en, 'count_other_language': count_other_language, 'StatusList':StatusList, 'StatusFilter':StatusFilter, 'languages':languages, 'langCode':langCode, 'langName':langName, 'currentuser':currentuser, 'login':login, 'logout': logout})
示例#8
0
    def get(self):
        languages = memcache.get("languages")
        if languages is not None:
            logging.info("PPP - got languages from memcache.")
        else:
            logging.info("PPP - Can not get languages from memcache.")
            q = Languages.query().order(Languages.langName)
            languages = q.fetch(99)
            if not memcache.add("languages", languages, 99):
                logging.info("PPP - Memcache set failed.")
            # languages = memcache.get("languages")
            # if languages is not None:
                # logging.info("PPP2 - got languages from memcache.")
            # else:
                # logging.info("PPP - Can not get languages from memcache.")
                # q = Languages.query().order(Languages.langName)
                # languages = q.fetch(99)
                # if not memcache.add("languages", languages, 99):
                    # logging.info("PPP - Memcache set failed.")
            
        langCode = 'en'
        if self.request.get('langCode'):
#            logging.info('GGG: SubjAreasList-Where: %s' % 'LangCode passed as param')
            langCode=self.request.get('langCode')
            self.session['langCode'] = langCode
        else:
#            logging.info('GGG: SubjAreasList-Where: %s' % 'LangCode NOT passed as param - prep get from session')
#            logging.info('GGG: SubjAreasList-LangCode before session.get = : %s' % langCode)
            langCode = self.session.get('langCode')
#            logging.info('GGG: SubjAreasList-LangCode after session.get = : %s' % langCode)
        if not langCode:
#            logging.info('GGG: SubjAreasList-Where: %s' % 'LangCode still blank')
            langCode = 'en'

        langName = 'no language'
        for language in languages:
            if language.langCode == langCode:
                langName = language.langName

        if self.request.get('StatusFilter'):
            StatusFilter=self.request.get('StatusFilter')
            self.session['StatusFilter'] = StatusFilter
        else:
            StatusFilter = self.session.get('StatusFilter')
        if not StatusFilter:
            self.session['StatusFilter'] = 'all'
            StatusFilter = 'all'

        if self.request.get('Typ'):
            Typ=self.request.get('Typ')
            self.session['Typ'] = Typ
        else:
            Typ = self.session.get('Typ')
        if not Typ:
            self.session['Typ'] = 'ex'
            Typ = 'ex'

        # count_en = 0
        # langCode_en = 'en'
        # units = memcache.get("SubjAreas")
        # if units is not None:
            # logging.info("PPP - got SubjAreas_units from memcache.")
        # else:
            # logging.info("PPP - Can not get SubjAreas_units from memcache.")
            # q = SubjectAreas.query(SubjectAreas.LangCode == langCode_en)
            # units = q.fetch(999)
            # if not memcache.add("SubjAreas", units, 999):
                # logging.info("PPP - SubjAreas_Memcache set failed.")
        # for unit in units:
            # logging.info('QQQ: count_en: %d' % count_en)
            # count_en = count_en + 1
        # logging.info('QQQ: Total count_en: %d' % count_en)

        Cnt = memcache.get("SubjAreas_EnCnt")
        if Cnt is not None:
            logging.info("PPP - got SubjAreas_EnCnt from memcache.")
            count_en = Cnt
        else:
            logging.info("PPP - Could not get SubjAreas_EnCnt from memcache.")
            count_en = 0
            langCode_en = 'en'
            units = memcache.get("SubjAreas")
            if units is not None:
                logging.info("PPP - got SubjAreas_units from memcache.")
            else:
                # logging.info("PPP - Can not get SubjAreas_units from memcache.")
                q = SubjectAreas.query(SubjectAreas.LangCode == langCode_en)
                units = q.fetch(999, keys_only=True)
                if not memcache.add("SubjAreas", units, 999):
                    logging.info("PPP - SubjAreas_Memcache set failed.")
            for unit in units:
#                logging.info('QQQ: count_en: %d' % count_en)
                count_en = count_en + 1
            if not memcache.add("SubjAreas_EnCnt", count_en, 999):
                    logging.info("PPP - SubjAreas_EnCnt_Memcache set failed.")
        logging.info('QQQ: Total count_en: %d' % count_en)

        logging.info('QQQ: langCode: %s' % langCode)
        count_other_language = 0
        q2 = SubjectAreas.query(SubjectAreas.LangCode == langCode)
        unitsx = q2.fetch(999, keys_only=True)
        for unit in unitsx:
#            logging.info('QQQ: count_other_language: %d' % count_other_language)
            count_other_language = count_other_language + 1
        logging.info('QQQ: Total count_other_language: %d' % count_other_language)

        logging.info('GGG: StatusFilter in SubjAreasList: %s' % StatusFilter)
        if StatusFilter == 'all':
            q = SubjectAreas.query(SubjectAreas.LangCode == langCode).order(SubjectAreas.Seq, SubjectAreas.LearningUnitID)
        else:
            q = SubjectAreas.query(SubjectAreas.LangCode == langCode, SubjectAreas.Status == StatusFilter).order(SubjectAreas.Seq, SubjectAreas.LearningUnitID)
        units = q.fetch(999)

        logout = None
        login = None
        currentuser = users.get_current_user()
        if currentuser:
              logout = users.create_logout_url('/subjareas' )
        else:
              login = users.create_login_url('/subjareas')

        StatusList = ['Pending Translation', 'Pending Review', 'Published'];

        self.render_template('LearnSubjAreaList.html', {'units': units, 'Typ': Typ, 'count_en': count_en, 'count_other_language': count_other_language, 'StatusList':StatusList, 'StatusFilter':StatusFilter, 'languages':languages, 'langCode':langCode, 'langName':langName, 'currentuser':currentuser, 'login':login, 'logout': logout})