| 69 | {{{#!div style="font-size: 80%" |
| 70 | [[https://develop.finki.ukim.mk/projects/profesori.mk/browser/reactapp/src/Pages/Professor.js?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Pages/Professor.js, ревизија ebc5176]] |
| 71 | {{{#!javascript |
| 72 | const handlePostSubmit = async (e) => { |
| 73 | e.preventDefault(); |
| 74 | |
| 75 | const response = await axios( |
| 76 | `http://192.168.0.17:8080/secure/professor/${professor.professorId}/addOpinion`, |
| 77 | { |
| 78 | method: "post", |
| 79 | data: { |
| 80 | title: postTitle, |
| 81 | content: postContent, |
| 82 | }, |
| 83 | withCredentials: true, |
| 84 | } |
| 85 | ); |
| 86 | |
| 87 | window.location.reload(false); |
| 88 | }; |
| 89 | |
| 90 | const handleTitleChange = (e) => { //метод за контрола на полето за наслов на мислење |
| 91 | setPostTitle(e.target.value); |
| 92 | }; |
| 93 | |
| 94 | const handleContentChange = (e) => { |
| 95 | setPostContent(e.target.value); //метод за контрола на полето за содржина |
| 96 | }; |
| 97 | }}} |
| 98 | }}} |
| 99 | |
| 100 | {{{#!div style="font-size: 80%" |
| 101 | [[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]] |
| 102 | {{{#!java |
| 103 | public void addOpinion(String title, String content, Long professorId, CustomUserDetails currentUser) { |
| 104 | Professor targetProfessor = professorRepository.findByProfessorId(professorId); |
| 105 | Opinion opinionToAdd = new Opinion(title, content, currentUser, null, null, |
| 106 | null, targetProfessor); |
| 107 | opinionRepository.save(opinionToAdd); |
| 108 | } |
| 109 | }}} |
| 110 | }}} |
| 111 | |
| 112 | == Оценување на туѓо мислење (5) |
| 113 | Во оваа фаза е имплементирано и сценариото за оценување мислења. Подолу се прикажани главните отсечоци од код каде се имплементирани чекорите кои ги презема системот при тригер на сценариото, односно: \\\\ |
| 114 | **1.** Апликацијата на клиентска страна со самото вчитување на мислењата кои одговараат на секцијата има достапна во меморија листа од кориснички ИД-а кои го оцениле секое мислење. Врз основа на тоа кликот го игнорира (доколку ИД на моменталниот корисник е исто со некое ИД од листата), или праќа повик до серверот што резултира со додавање на ставка во релацијата што ги чува податоците за оцени (корисник-пост) и инкрементирање/декрементирање на кармата на авторот на корисникот. |
120 | | public void addOpinion(String title, String content, Long professorId, CustomUserDetails currentUser) { |
121 | | Professor targetProfessor = professorRepository.findByProfessorId(professorId); |
122 | | Opinion opinionToAdd = new Opinion(title, content, currentUser, null, null, |
123 | | null, targetProfessor); |
124 | | opinionRepository.save(opinionToAdd); |
125 | | } |
126 | | }}} |
127 | | }}} |
128 | | |
129 | | == Оценување на туѓо мислење (5) |
130 | | Во оваа фаза е имплементирано и сценариото за оценување мислења. Подолу се прикажани главните отсечоци од код каде се имплементирани чекорите кои ги презема системот при тригер на сценариото, односно: \\\\ |
131 | | **1.** Апликацијата на клиентска страна со самото вчитување на мислењата кои одговараат на секцијата има достапна во меморија листа од кориснички ИД-а кои го оцениле секое мислење. Врз основа на тоа кликот го игнорира (доколку ИД на моменталниот корисник е исто со некое ИД од листата), или праќа повик до серверот што резултира со додавање на ставка во релацијата што ги чува податоците за оцени (корисник-пост) и инкрементирање/декрементирање на кармата на авторот на корисникот. |
132 | | |
133 | | {{{#!div style="font-size: 80%" |
134 | | [[https://develop.finki.ukim.mk/projects/profesori.mk/browser/reactapp/src/Pages/Professor.js?rev=ebc51762bbd1b4345d8908789af87bdc49aad058|Pages/Professor.js, ревизија ebc5176]] |
135 | | {{{#!javascript |
136 | | const handlePostSubmit = async (e) => { |
137 | | e.preventDefault(); |
138 | | |
139 | | const response = await axios( |
140 | | `http://192.168.0.17:8080/secure/professor/${professor.professorId}/addOpinion`, |
141 | | { |
142 | | method: "post", |
143 | | data: { |
144 | | title: postTitle, |
145 | | content: postContent, |
146 | | }, |
147 | | withCredentials: true, |
148 | | } |
149 | | ); |
150 | | |
151 | | window.location.reload(false); |
152 | | }; |
153 | | |
154 | | const handleTitleChange = (e) => { //метод за контрола на полето за наслов на мислење |
155 | | setPostTitle(e.target.value); |
156 | | }; |
157 | | |
158 | | const handleContentChange = (e) => { |
159 | | setPostContent(e.target.value); //метод за контрола на полето за содржина |
160 | | }; |
161 | | }}} |
162 | | }}} |
163 | | |
164 | | {{{#!div style="font-size: 80%" |
165 | | [[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]] |
166 | | {{{#!java |