Olennaiset muutokset viime katselmointiin nähden:
timApp/static/scripts/view_html.jstimApp/static/scripts/wallView/wallController.jstimApp/templates/lectureinfo_menu.htmltimApp/templates/question.htmltimApp/templates/view_html.htmltimApp/tim.pytimApp/timdb/lectures.pytimApp/timdb/messages.pytimApp/timdb/questions.pytimApp/static/scripts/controllers/lectureInfoController.jstimApp/static/scripts/controllers/questionAnswerController.jstimApp/static/scripts/controllers/questionShowAnswersController.jstimApp/static/scripts/createDialog.js (onko kirjasto?)timApp/static/scripts/createLectureCtrl.jstimApp/static/scripts/popUpDialog.jstimApp/static/scripts/showChartDirective.jstimApp/static/scripts/sidebarMenuCtrl.jstimApp/static/scripts/smallMenuCtrl.jstimApp/static/scripts/statisticsView/statisticsController.jstimApp/static/scripts/timApp.jstimApp/static/templates/answersFromStudents.htmltimApp/static/templates/lectureEnding.htmltimApp/static/templates/lectureOptions.htmltimApp/static/templates/questionAskedStudent.htmltimApp/static/templates/questionNote.htmltimApp/static/templates/showQuestionTeacher.htmltimApp/static/templates/start_lecture.html (siirretty)timApp/templates/answers.htmltimApp/templates/join_lecture.htmltimApp/templates/lectureInfo.htmltimApp/templates/lectureinfo_menu_min.htmltimApp/templates/matrix.html (uudelleen nimetty)timApp/templates/questioninfo.htmltimApp/timdb/lectureanswers.pytimApp/static/scripts/Chart.min.jstimApp/static/scripts/jsDatePick.full.1.3.jstimApp/static/scripts/jsDatePick.min.1.3.jstimApp/templates/matriisi.html (uudelleen nimetty)timApp/templates/start_lecture.html (siirretty)style-attribuuttiin.label-elementtien käyttö joissain kohdissa vielä pielessä. Siis ei näin:
<label>Vastausaika:</label>
<input type="radio" name="vastausaika" value="0">Ei
vaan näin:
<label><input type="radio" name="vastausaika" value="0">Ei</label>
Toinen (mutta hankalampi) tapa for-attribuutilla:
`<label for="inputName">Some text</label>`.br-elementtejä ei tulisi käyttää välien saamiseksi, vaan CSS:ää (esim. margin-ominaisuus).Muottitiedostoissa joihinkin tiedostoihin viitataan tyyliin ../../static/windowstyle.css mutta parempi olisi url_for-funktio.
console pois (console -> $window.console).singleAnswer == "undefined"scope.question.question == undefined$scope.endDate !== undefinedtypeof userName === 'undefined' (oikein)angular.isDefined(question.DATA.ROWS) (oikein, paras)=== eikä ==.Onhan JSHint PyCharmista päällä?
get_lecture_answers():
for-silmukan tarkoitus?wait-kutsuun tarvinnee ainakin timeout-parametrin, ja paluuarvon tarkistus.request.args.get('time') kutsutaan kahdesti, mutta kerta riittää.noAnswer-tapausta?latestAnswer-avainta?question_id, lecture_id tai doc_id muita kuin kokonaislukuja, tulee Internal Server Error (status 500).answer_to_question():
(question_id, lecture_id) on olemassa __pull_answer-kokoelmassa?question_id tai lecture_id muita kuin kokonaislukuja, tulee Internal Server Error (status 500).document.getElementById("wall") käyttäminen ei ole "Angularmaista". Paras ratkaisu: Wallille oma direktiivi, jolle voisi sanoa luennon id:n ja hoitaisi viestien yms. hakemisen.wall_controller -> lecture_controller?answer.answers?parseInt-kutsuihin kantaluku, ks. MDN.extendLecture-funktiossa voisi käyttää valmiita päivämäärämetodeja oman toteutuksen sijaan. Esim. nyt karkausvuosia ei huomioida.canvas on turhaan erillisenä elementtinä. Direktiivi voisi luoda sen itse.basicSets-taulukon määrittelyssä hieman toistoa. Voisi luoda yhteiset osat silmukassa ja sen jälkeen asettaa värit.replace: "true" -> replace: truetransclude turha?timApp).getElementById:stä eroonclearForm:
$scopen muuttujille mitään.$scope.$emit("closeLectureForm");?submitLecture:
createLectureCtrl.js on linkitetty 2 kertaa.ng-class on tarpeeton, jos luokan nimi on vakio. Esim. ng-class="['menu']" -> class="menu".diviä peräkkäin (<div></div><div></div><div></div>)?useAswers.Show current<br>lectures../../../ -> url_for(...)matriisi.html sisällytetään 4 kertaa -> paljon toistoa selaimelle tulleessa HTML:ssä.textarea-elementissä type="text" on turha.QuestionController ja ShowQuestionController omiin tiedostoihinsa.//TODO use JSON.stringify - samaa mieltä. Eikö Angular muutenkin hoida merkkijonomuunnoksen automaattisesti $http-palvelussa?answerFiledType.label-elementtien for-attribuutit väärin; pitäisi viitata id-attribuuttiin eikä name-attribuuttiin. Mutta mieluummin niin, että input on labelin sisällä.__author__ = 'localadmin'?commit-parametrilla voisi aina olla oletusarvo true.Question-taulun sarake on question_id, ei id."string" -> "str""" vai ''?