= Use Case Realizations = ---- === Примач на донации === ||= **ИД:** =|| 1 || ||= **Случај на употреба:** =|| Поставува барања за материјални средства || 1.По најава, на корисникот му се појавува насловната страна со копчето "Upload" во navbar, коешто кога ќе го избере се праќа GET барање со патека /upload и на корисникот му се враќа формата којашто треба да ја пополни за да креира нова објава. [[Image(home.jpg)]] 2.Корисникот ја пополнува формата, и откако ќе кликне на копчето "Upload post" се праќа POST барање на патека /newpost и доколку проверката на серверска страна е успешна објавата ќе се креира и логичката променлива "approved" ќе се сетира на false. Објавата ќе се зачува во базата на податоци. [[Image(1.JPG)]] \\ ||= **ИД:** =|| 2 || ||= **Случај на употреба:** =|| Ажурира податоци за примени средства || 1.По најава, на корисникот му се појавува насловната страна со копчето "My profile" во navbar, коешто кога ќе го избере се праќа GET барање со патека /userinformation и на корисникот му се враќаат податоците за корисникот, и мени од коешто корисникот треба да ја избере опцијата "My Posts". [[Image(USERINFO.JPG)]] 2.Откако корисникот ќе го избере копчето "My Posts", се праќа GET барање со патека /myPosts и на корисникот му се враќа страната со сите негови објави, во скратена форма, и на секоја објава има копче "Add collected funds". Откако корисникот ќе го избере тоа копче, се појавува modal којшто е на front-end, во којшто се внесуваат тип на донација и сума. [[Image(myposts.JPG)]] 3.По клик на копчето "Submit" се праќа POST барање на патека /addfunds. На серверска страна се проверува дали објавата на која се додаваат средствата припаѓа на истиот корисник кој додава средства, и доколку е така се зачувува оваа промена во базата на податоци. \\ === Донатор === ||= **ИД:** =|| 1 || ||= **Случај на употреба:** =|| Донира на објавите || 1.По најава, на корисникот му се појавува насловната страна кадешто го избира копчето "Posts" и праќа GET барање со патека /album и на корисникот му се враќаат сите објави коишто се одобрени, распоредени на повеќе страници. [[Image(POSTS.JPG)]] 2.Откако корисникот ќе ја најде соодветната објава на којашто сака да донира, клика на копчето "Open", и се праќа GET барање со патека /post кадешто се наоѓа и query параметар "postid". На корисникот му се враќа страна кадешто ги има сите податоци за објавата и неколку копчиња од кои корисникот ќе го избере копчето "Donate". [[Image(opendonationpost.JPG)]] 3.Доколку корисникот веќе има внесено податоци за интернет картичка, тие автоматски ќе се појават и на корисникот ќе му остане да внесе сума. Во спротивно корисникот треба да ја пополни цела форма. Откако корисникот ќе ја пополни формата, треба да го избере копчето "Confirm". [[Image(DONATEONPOST.JPG)]] 4.Кога ќе го избере тоа копче, се праќа POST барање на патека /donate и на серверска страна се зачувува донацијата на објавата во базата на податоци, а кај корисникот му се додава донацијата во "My Donations". [[Image(MYDONATIONS.JPG)]] \\ ||= **ИД:** =|| 2 || ||= **Случај на употреба:** =|| Ја пријавува објавата за злоупотреба || 1.По најава, на корисникот му се појавува насловната страна кадешто го избира копчето "Posts" и праќа GET барање со патека /album и на корисникот му се враќаат сите објави коишто се одобрени, распоредени на повеќе страници. 2.Откако корисникот ќе ја најде соодветната објава на којашто сака да ja пријави, клика на копчето "Open", и се праќа GET барање со патека /post кадешто се наоѓа и query параметар "postid". На корисникот му се враќа страна кадешто ги има сите податоци за објавата и неколку копчиња од кои корисникот ќе го избере копчето "Report". 3.Кога ќе го кликне тоа копче, се појавува modal во којшто треба да се наведе причината. Откако корисникот ќе го кликне копчето Confirm, се праќа POST барање на патека /report и на серверска страна се проверува дали објавата била пријавена и претходно, и доколку не била пријавена се креира нов reportpost и се зачувува пријавата на објавата во базата на податоци. \\ === Модератор === ||= **ИД:** =|| 1 || ||= **Случај на употреба:** =|| Одлучува дали објавата ќе биде одобрена || 1.По најава, на модераторот му се појавува страната со објави коишто чекаат на одобрување. 2.По одбирање на соодветната објава, се праќа GET барање со патека /moderator/post и се враќа страната со сите информации за објавата, меѓу кои и копчињата за одобрување или отфрлање на објава. 2.1.При клик на копчето "Approve", се праќа GET барање на патека /moderator/approvePost и на објавата логичката променлива "approved" се сетира на "true" и се сетира кој модератор ја одобрил објавата. На корисникот му се испраќа mail дека му е одобрена соодветната објава. 2.2.При клик на копчето "Dont Approve",се појавува modal на којшто треба да ја наведе причината за отфрлање на објавата.По клик на копчето "Confirm" се праќа GET барање на патека /moderator/dontapprove и на серверска страна објавата се брише и на корисникот му се испраќа mail во којшто се содржи името на објавата и причината. \\ ||= **ИД:** =|| 2 || ||= **Случај на употреба:** =|| Одлучува дали пријавената објава ќе биде избришана || 1.По најава, на модераторот му се појавува страната со објави коишто чекаат на одобрување со копчето "Reported posts" во navbar. 2.По клик на соодветното копче, се праќа GET барање на патека /moderator/report и се враќа страница со сите пријавени објави. 3.По избор на соодветната објава, модераторот клика на копчето "Open", и праќа GET барање на патека /moderator/reportpost на коешто се враќа страница со сите детали за објавата, причините за пријава на објавата и копчињата "Dismiss reports" и "Delete post". 3.1.При клик на копчето "Dismiss reports" се прави GET барање на патека /moderator/dismiss. На серверска страна се бришат сите причини за пријава на објавата, и притоа се брише и објавата од пријавени објави. 3.2.При клик на копчето "Delete post", се појавува modal во којшто треба да се наведе причината за бришење на постот. По клик на копчето "Confirm" се праќа GET барање на патека /moderator/deletepost и на серверска страна се брише објавата, и му се враќа mail на корисникот којшто ја креирал објавата со причината поради која е избришана. \\