| 27 | == Додавање мислења во секција за дискусија (4) |
| 28 | Во фазата прототип беше имплементирано и сценариото за додавање мислења. Подолу се прикажани отсечоци од код каде се имплементирани чекорите кои ги презема системот при тригер на сценариото, односно: |
| 29 | **1.** Javascript апликацијата јавува modal со полиња за внес на содржина и наслов (условно, само ако се отвара нова тема за предмет) |
| 30 | **2.** Javascript апликацијата ги валидира полињата (дали некое е празно), по што праќа барање со споменатите полиња, кое на серверска страна го пречекува контролерот и наредува тек од повици што завршува со складирање на диск нова торка во соодветната релација (Post). |
| 31 | **3.** По добивање на одговорот, JS апликацијата го освежува прелистувачот, значи се прикажува истата страница за дискусија, но во одговорот на fetch повикот за мислењата кои и припаѓаат сега ќе се најде и новододаденото мислење |
| 32 | |
| 33 | {{{#!div style="font-size: 80%" |
| 34 | [[https://develop.finki.ukim.mk/projects/profesori.mk/browser/springapp/src/main/java/mk/profesori/springapp/Service/MainService.java?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Service.MainService.java, ревизија ebc5176]] |
| 35 | {{{#!java |
| 36 | public void addOpinion(String title, String content, Long professorId, CustomUserDetails currentUser) { |
| 37 | Professor targetProfessor = professorRepository.findByProfessorId(professorId); |
| 38 | Opinion opinionToAdd = new Opinion(title, content, currentUser, null, null, |
| 39 | null, targetProfessor); |
| 40 | opinionRepository.save(opinionToAdd); |
| 41 | } |
| 42 | }}} |
| 43 | }}} |
| 44 | |