Changeset c02189f in Git for src/main/resources/static


Ignore:
Timestamp:
02/08/22 20:13:23 (2 years ago)
Author:
Petar Partaloski <ppartaloski@…>
Branches:
main
Children:
0226942, 3fe36de
Parents:
3c0f9a9
Message:

Added new core functionalities, fixed bugs and improved visual clarity

Location:
src/main/resources/static
Files:
1 added
2 edited

Legend:

Unmodified
Added
Removed
  • src/main/resources/static/css/shared.css

    r3c0f9a9 rc02189f  
    5252.bottom{
    5353    position: absolute;
    54     top: 80%;
     54    top: 75%;
    5555    margin:auto;
    5656    width: 100%;
     
    6060    background-color: rgba(0,0,0,0.25);
    6161}
    62 
    63 
    64 .bottom-heart{
     62.bottom h3, .bottom span{
     63    margin-bottom: 0px;
     64    margin-top: 0px;
     65}
     66.bottom span{
     67    font-size: 75%;
     68    margin-top: 5px;
     69}
     70
     71
     72.elements .card .btn{
    6573    top: 60%;
    6674    left: auto;
     
    105113    opacity: 0;
    106114}
     115
     116.person-movies-list{
     117    margin: auto;
     118    margin-top: 20px;
     119    padding: 10px;
     120    width: 80%;
     121    background-color: rgba(52, 58, 64, 0.7);
     122    border-radius: 10px;
     123    transition: 200ms;
     124    color: white;
     125}
     126
     127.person-movies-list:hover{
     128    background-color: rgba(52, 58, 64, 1);
     129}
     130
     131.person-movies-list ul{
     132    list-style-type: none;
     133}
     134
     135.person-movies-list ul li{
     136    color:black;
     137    background-color: rgba(255,255,255,0.7);
     138    padding: 12px;
     139    font-size: 120%;
     140    width: 80%;
     141    text-align: center;
     142    margin: auto;
     143    transition: 200ms;
     144    border-radius: 10px;
     145    margin-bottom: 5px;
     146    text-decoration: underline;
     147}
     148
     149.person-movies-list hr{
     150    color: white;
     151    background-color: white;
     152    border-color: white;
     153}
     154
     155.person-movies-list ul li:hover{
     156    background-color: rgba(255,255,255,1);
     157    text-decoration-color: blue;
     158}
     159
     160.genres-listing ul li:hover{
     161    background-color: rgba(222,128,128,1);
     162}
     163
     164.genres-listing ul li{
     165    background-color: rgba(192,128,128,0.7);
     166    text-decoration: none !important;
     167}
     168
     169.person-movies-list ul li a{
     170    color: black;
     171    transition: 250ms;
     172    text-decoration: underline;
     173    text-decoration-color: black;
     174}
     175
     176.person-movies-list ul li a:hover{
     177    color:blue;
     178}
     179
     180
     181#admin-buttons a{
     182    display: inline-block;
     183    width: 95%;
     184    margin: auto;
     185    margin-top: 10px;
     186    font-size: 125%;
     187    clear: both;
     188}
     189
     190#image-movie-section{
     191    height: fit-content;
     192    min-height: fit-content;
     193}
     194
     195#likes-showcase{
     196    background-color: rgba(192,128,128,0.7);
     197    border-radius: 10px;
     198    padding:10px;
     199    width: 60%;
     200    margin: auto;
     201    transition: 200ms;
     202    margin-top: 2%;
     203}
     204
     205#likes-showcase strong{
     206    font-size: 150%;
     207}
     208
     209#likes-showcase:hover{
     210    background-color: rgba(222,128,128,1);
     211}
     212
     213.invisible-search{
     214    display: none;
     215}
  • src/main/resources/static/js/sharedScript.js

    r3c0f9a9 rc02189f  
    44    var elements = $(".elements")
    55    var elementGrade;
    6 
     6    var first_time = true;
    77
    88    $("#button-add").on("click", function (){
     
    5656    $(".button-add-grade-movie").on("click",function (){
    5757        elementGrade = $(this)
    58         urlRating ="api/movies/grade/"+$(this).attr("movie-id")
     58        urlRating ="/api/movies/grade/"+$(this).attr("movie-id")
    5959        $("#dialog-rating").dialog("open")
    6060    })
    6161    $(".button-add-grade-person").on("click",function (){
    6262        elementGrade = $(this)
    63         urlRating ="api/persons/grade/"+$(this).attr("person-id")
     63        urlRating ="/api/persons/grade/"+$(this).attr("person-id")
    6464        $("#dialog-rating").dialog("open")
    6565    })
     
    8181    })*/
    8282
     83    $("#button_toggle_filters").on("click", function (){
     84        if(first_time){
     85            $("#filters_div").removeClass("invisible-search")
     86            first_time=false
     87        }
     88        else
     89            $("#filters_div").fadeToggle();
     90    })
    8391
    8492   $(".search-button").on("click",function () {
    85         let filter = $("#searchGenre").val()
     93       elements = $(".elements")
     94       let filter = $("#searchGenre").val()
     95       console.log('\''+filter+'\'')
     96       console.log(elements)
     97       if(filter.length==0){
     98           console.log("HERE")
     99           for (let item of elements) {
     100               $(item).removeClass("visibility")
     101           }
     102       }
    86103       for (let item of elements) {
    87             let genre = $(item).find(".card-genre")
     104           $(item).removeClass("visibility")
     105            let genre = $(item).children(".card-genre")
    88106            let visible = false;
    89 
     107            console.log(genre.length)
    90108            for (let g of genre) {
    91 
    92                 if (( $(g).text().toLowerCase() === filter.toLowerCase() && !$(g).hasClass("visibility") && filter.trim().length != 0)) {
     109                if (( $(g).text().toLowerCase() === filter.toLowerCase())){
     110                    console.log(item.text + ' ' + $(g).text())
    93111                    visible = true
    94112                    $(item).removeClass("visibility")
     
    96114                }
    97115            }
    98             if (!visible && filter.trim().length != 0)
     116            if(!visible){
    99117                $(item).addClass("visibility")
    100             else
    101                 $(item).removeClass("visibility")
     118            }
    102119
    103120        }
     
    106123    $(".button-delete-movie").on("click",function (){
    107124        let button = $(this)
    108         let url = "api/movies/delete/" + $(button).attr("movie-id")
     125        let url = "/api/movies/delete/" + $(button).attr("movie-id")
    109126        ajaxCallDelete(url,button)
    110127    })
    111128    $(".button-delete-actor").on("click",function (){
    112129        let button = $(this)
    113         let url  = "api/persons/delete/" + $(button).attr("person-id")
     130        let url  = "/api/persons/delete/" + $(button).attr("person-id")
    114131        ajaxCallDelete(url,button)
    115132    })
    116133    $(".button-delete-discussion").on("click",function (){
    117134        let button = $(this)
    118         let url = "api/discussions/delete/" + $(button).attr("discussion-id")
     135        let url = "/api/discussions/delete/" + $(button).attr("discussion-id")
    119136        ajaxCallDelete(url,button)
    120137    })
     
    139156    $(document.body).on("click",".button-add-favourite-list",function (){
    140157        let button = $(this)
    141         let url = "api/movies/like/"+ $(this).attr("movie-id") + "?userId="+ $(this).attr("user-id")
     158        let url = "/api/movies/like/"+ $(this).attr("movie-id") + "?userId="+ $(this).attr("user-id")
    142159        ajaxCallLike(url,button,'like','Веќе е филмот допаднат!')
    143160    })
    144161    $(document.body).on("click",".button-remove-favourite-list",function (){
    145162        let button = $(this)
    146         let url = "api/movies/unlike/"+ $(this).attr("movie-id")+"?userId="+ $(this).attr("user-id")
     163        let url = "/api/movies/unlike/"+ $(this).attr("movie-id")+"?userId="+ $(this).attr("user-id")
    147164        ajaxCallLike(url,button,'unlike','Немате оставено допаѓање на филмот!')
    148165    })
    149166    $(document.body).on("click",".button-add-genre-liked-list",function (){
    150167        let button = $(this)
    151         let url = "api/genres/like/"+ $(this).attr("genre-id") + "?userId="+ $(this).attr("user-id")
     168        let url = "/api/genres/like/"+ $(this).attr("genre-id") + "?userId="+ $(this).attr("user-id")
    152169        ajaxCallLikeGenre(url,button,'like','Веќе ви се допаѓа жанрот!')
    153170    })
    154171    $(document.body).on("click",".button-remove-genre-liked-list",function (){
    155172        let button = $(this)
    156         let url = "api/genres/unlike/"+ $(this).attr("genre-id")+"?userId="+ $(this).attr("user-id")
     173        let url = "/api/genres/unlike/"+ $(this).attr("genre-id")+"?userId="+ $(this).attr("user-id")
    157174        ajaxCallLikeGenre(url,button,'unlike','Немате оставено допаѓање на жанрот!')
     175    })
     176    $(document.body).on("click",".button-like-discussion",function (){
     177        let button = $(this)
     178        let url = "/api/discussions/like/"+ $(this).attr("discussion-id")+"?userId="+ $(this).attr("user-id")
     179        ajaxCallLikeDiscussion(url,button,'like','Веќе имате оставено допаѓање на дискусијата!')
     180    })
     181    $(document.body).on("click",".button-unlike-discussion",function (){
     182        let button = $(this)
     183        let url = "/api/discussions/unlike/"+ $(this).attr("discussion-id")+"?userId="+ $(this).attr("user-id")
     184        ajaxCallLikeDiscussion(url,button,'unlike','Немате оставено допаѓање на дискусијата!')
     185    })
     186    $(document.body).on("click",".button-like-discussion-alt",function (){
     187        let button = $(this)
     188        let url = "/api/discussions/like/"+ $(this).attr("discussion-id")+"?userId="+ $(this).attr("user-id")
     189        ajaxCallLikeDiscussionAlternative(url,button,'like','Веќе имате оставено допаѓање на дискусијата!')
     190    })
     191    $(document.body).on("click",".button-unlike-discussion-alt",function (){
     192        let button = $(this)
     193        let url = "/api/discussions/unlike/"+ $(this).attr("discussion-id")+"?userId="+ $(this).attr("user-id")
     194        ajaxCallLikeDiscussionAlternative(url,button,'unlike','Немате оставено допаѓање на дискусијата!')
    158195    })
    159196    $(".discussion-type").change(function (){
     
    189226                let movieId=$(button).attr("movie-id")
    190227                if (type==='like') {
    191                     $(button).parent().append("<a class='bottom-heart btn btn-danger button-remove-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">💔</a>")
     228                    $(button).parent().append("<a class='btn btn-danger button-remove-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">💔</a>")
    192229                    console.log("da")
    193230                }
    194231                else{
    195                     $(button).parent().append("<a class='bottom-heart btn btn-success button-add-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">❤</a>")
    196 
    197                 }
     232                    $(button).parent().append("<a class='btn btn-success button-add-favourite-list' movie-id=" + movieId + " user-id=" + userId + ">❤</a>")
     233                }
     234                likes_count = $("#movie_likes_count")
     235                count = Number($(likes_count).text())
     236                if(type==="like")
     237                    count++
     238                else
     239                    count--
     240                likes_count.text(count)
    198241                $(button).remove()
    199242            }
     
    263306
    264307
     308
     309
     310function ajaxCallLikeDiscussion(url,button,type,message){
     311    $.ajax({
     312        url:url,
     313        success:function (data){
     314            if (data){
     315                let el = $(button).parent().siblings().eq(3)
     316                console.log(el)
     317                if (type=="like") {
     318                    $(el).html(parseInt($(el).text()) + 1)
     319                    console.log("da")
     320                }
     321                else
     322                    $(el).html(parseInt($(el).text()) - 1)
     323                $(button).css("display","none")
     324                let userId = $(button).attr("user-id")
     325                let discussionId=$(button).attr("discussion-id")
     326                if (type==='like') {
     327                    $(button).parent().append("<a class='btn btn-danger button-unlike-discussion' discussion-id=" + discussionId + " user-id=" + userId + ">💔</a>")
     328                    console.log("da")
     329                }
     330                else{
     331                    $(button).parent().append("<a class='btn btn-success button-like-discussion' discussion-id=" + discussionId + " user-id=" + userId + ">❤</a>")
     332                }
     333                var likes_count = $("#likes_count")
     334                var count = Number($(likes_count).text())
     335                if(type==='like')
     336                    count += 1
     337                else
     338                    count -= 1
     339                $(likes_count).text(count);
     340                $(button).remove()
     341            }
     342            else {
     343                $(button).parent().append("<div>" + message +" <button class='button-confirm'>Ок</button></div>")
     344            }
     345        }
     346    })
     347}
     348
     349
     350
     351function ajaxCallLikeDiscussionAlternative(url,button,type,message){
     352    $.ajax({
     353        url:url,
     354        success:function (data){
     355            if (data){
     356                let el = $(button).parent().siblings().eq(3)
     357                console.log(el)
     358                if (type=="like") {
     359                    $(el).html(parseInt($(el).text()) + 1)
     360                    console.log("da")
     361                }
     362                else
     363                    $(el).html(parseInt($(el).text()) - 1)
     364                $(button).css("display","none")
     365                let userId = $(button).attr("user-id")
     366                let discussionId=$(button).attr("discussion-id")
     367                if (type==='like') {
     368                    $(button).parent().append("<a class='btn btn-danger button-unlike-discussion-alt' discussion-id=" + discussionId + " user-id=" + userId + ">💔</a>")
     369                    console.log("da")
     370                }
     371                else{
     372                    $(button).parent().append("<a class='btn btn-success button-like-discussion-alt' discussion-id=" + discussionId + " user-id=" + userId + ">❤</a>")
     373                }
     374                var likes_count = $(button).parent().siblings(".likes_count").first()
     375                var count = Number(likes_count.text())
     376                if(type==='like')
     377                    count += 1
     378                else
     379                    count -= 1
     380                $(likes_count).text(count);
     381                $(button).remove()
     382            }
     383            else {
     384                $(button).parent().append("<div>" + message +" <button class='button-confirm'>Ок</button></div>")
     385            }
     386        }
     387    })
     388}
     389
     390
    265391function  ajaxCallRating(url,button,type){
    266392    model = {
Note: See TracChangeset for help on using the changeset viewer.