Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
SkuciSe
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Tim 2 - 2022
SkuciSe
Commits
37501b21
Commit
37501b21
authored
Sep 18, 2022
by
Milovan Samardzic
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
porukeStilIzmenjeno
parent
09ef0aa2
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
213 additions
and
173 deletions
+213
-173
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/MessageController.java
+1
-1
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSController.java
+0
-20
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSService.java
+2
-1
SkuciSe/src/main/java/com/example/SkuciSe/controller/KomentarController.java
+6
-7
SkuciSe/src/main/resources/static/css/oglasiStyle.css
+46
-0
SkuciSe/src/main/resources/static/css/style.css
+128
-40
SkuciSe/src/main/resources/static/js/main.js
+4
-0
SkuciSe/src/main/resources/static/js/socket.js
+7
-3
SkuciSe/src/main/resources/templates/chat.html
+13
-95
SkuciSe/src/main/resources/templates/moji-zahtevi.html
+1
-1
SkuciSe/src/main/resources/templates/oglas.html
+5
-5
No files found.
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/MessageController.java
View file @
37501b21
...
...
@@ -21,6 +21,6 @@ public class MessageController {
Thread
.
sleep
(
1000
);
message
.
setFrom
(
principal
.
getName
());
service
.
notifyUser
(
message
.
getTo
(),
message
);
return
new
ResponseMessage
(
HtmlUtils
.
htmlEscape
(
message
.
getFrom
()
+
":
"
+
message
.
getMessageContent
()));
return
new
ResponseMessage
(
HtmlUtils
.
htmlEscape
(
message
.
getFrom
()
+
":"
+
message
.
getMessageContent
()));
}
}
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSController.java
deleted
100644 → 0
View file @
09ef0aa2
package
com
.
example
.
SkuciSe
.
configuration
.
WebSocket
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
public
class
WSController
{
@Autowired
private
WSService
service
;
@PostMapping
(
"/send-private-message/{mail}"
)
public
void
sendPrivateMessage
(
@PathVariable
(
"mail"
)
final
String
mail
,
@RequestBody
final
Message
message
)
{
service
.
notifyUser
(
mail
,
message
);
}
}
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSService.java
View file @
37501b21
...
...
@@ -14,7 +14,7 @@ public class WSService {
this
.
messagingTemplate
=
messagingTemplate
;
}
public
void
notifyUser
(
final
String
mail
,
final
Message
message
)
{
ResponseMessage
responseMessage
=
new
ResponseMessage
(
message
.
getFrom
()
+
":
"
+
message
.
getMessageContent
());
ResponseMessage
responseMessage
=
new
ResponseMessage
(
message
.
getFrom
()
+
":"
+
message
.
getMessageContent
());
messagingTemplate
.
convertAndSendToUser
(
mail
,
"/topic/private-messages"
,
responseMessage
);
}
}
\ No newline at end of file
SkuciSe/src/main/java/com/example/SkuciSe/controller/KomentarController.java
View file @
37501b21
...
...
@@ -8,22 +8,21 @@ import org.springframework.web.bind.annotation.GetMapping;
import
org.springframework.web.bind.annotation.RequestParam
;
@Controller
public
class
KomentarController
{
public
class
KomentarController
{
@Autowired
KomentarRepository
komentarRepo
;
@Autowired
ZahtevRepository
zRepo
;
@GetMapping
(
"/profile/moji-zahtevi/sacuvaj-komentar"
)
public
String
postSacuvajKomentar
(
@RequestParam
(
"korisnikId"
)
int
korisnikId
,
public
String
postSacuvajKomentar
(
@RequestParam
(
"korisnikId"
)
int
korisnikId
,
@RequestParam
(
"oglasId"
)
int
oglasId
,
@RequestParam
(
"zahtevId"
)
int
zahtevId
,
@RequestParam
(
"ocenaRadio"
)
int
ocenaRadio
,
@RequestParam
(
"komentar"
)
String
text
)
{
@RequestParam
(
"komentar"
)
String
text
)
{
try
{
komentarRepo
.
insert
(
korisnikId
,
oglasId
,
text
,
ocenaRadio
);
zRepo
.
deleteZahtev
(
zahtevId
);
komentarRepo
.
insert
(
korisnikId
,
oglasId
,
text
,
ocenaRadio
);
zRepo
.
deleteZahtev
(
zahtevId
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
e
);
}
...
...
SkuciSe/src/main/resources/static/css/oglasiStyle.css
View file @
37501b21
...
...
@@ -336,3 +336,48 @@ h3{
.gradient-bg
{
background
:
linear-gradient
(
90deg
,
rgba
(
255
,
255
,
255
,
1
)
0%
,
rgba
(
251
,
251
,
251
,
1
)
10%
,
rgba
(
251
,
251
,
251
,
1
)
91%
,
rgba
(
255
,
255
,
255
,
1
)
100%
);
}
input
.star
{
display
:
none
;
}
label
.star
{
float
:
right
;
padding
:
10px
;
font-size
:
36px
;
color
:
#
grey
;
transition
:
all
.2s
;
}
input
.star
:checked
~
label
.star
:before
{
content
:
'\f005'
;
color
:
#FD4
;
transition
:
all
.25s
;
}
input
.star-5
:checked
~
label
.star
:before
{
color
:
#FE7
;
text-shadow
:
0
0
20px
#952
;
}
input
.star-1
:checked
~
label
.star
:before
{
color
:
#F62
;
}
label
.star
:hover
{
transform
:
rotate
(
-15deg
)
scale
(
1.3
);
}
label
.star
:before
{
content
:
'\f006'
;
font-family
:
FontAwesome
;
}
\ No newline at end of file
SkuciSe/src/main/resources/static/css/style.css
View file @
37501b21
@import
url("//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css")
;
body
{
font-family
:
'Jost'
,
serif
;
font-size
:
22px
;
body
{
font-family
:
'Jost'
,
serif
;
font-size
:
22px
;
background-color
:
#fff
;
/*sredina*/
overflow-x
:
hidden
;
}
.navbar
{
.navbar
{
background-color
:
#f9f9f9
;
/*header*/
}
.navbar
a
{
.navbar
a
{
text-decoration
:
none
;
color
:
#495056
;
color
:
#495056
;
}
.navbar-icon-top
.navbar-nav
.nav-link
>
.fa
{
position
:
relative
;
width
:
36px
;
...
...
@@ -124,48 +129,51 @@ body{
top
:
-7px
;
}
}
@media
(
max-width
:
996px
){
#indexCont
{
@media
(
max-width
:
996px
)
{
#indexCont
{
min-height
:
900px
;
}
}
.container-fluid
{
overflow
:
hidden
;
background
:
#1c1c1c
;
/*footer*/
.container-fluid
{
overflow
:
hidden
;
background
:
#1c1c1c
;
/*footer*/
color
:
#627482
!important
;
margin-bottom
:
0
;
padding-bottom
:
0
;
margin-bottom
:
0
;
padding-bottom
:
0
;
}
small
{
small
{
font-size
:
calc
(
12px
+
(
15
-
12
)
*
((
100vw
-
360px
)
/
(
1600
-
360
)))
!important
;
}
.bold-text
{
.bold-text
{
color
:
#989c9e
!important
;
}
.mt-55
{
.mt-55
{
margin-top
:
calc
(
50px
+
(
60
-
50
)
*
((
100vw
-
360px
)
/
(
1600
-
360
)))
!important
;
}
h3
{
h3
{
font-size
:
calc
(
34px
+
(
40
-
34
)
*
((
100vw
-
360px
)
/
(
1600
-
360
)))
!important
;
}
.social
{
.social
{
font-size
:
21px
!important
;
}
.rights
{
.rights
{
font-size
:
calc
(
10px
+
(
12
-
10
)
*
((
100vw
-
360px
)
/
(
1600
-
360
)))
!important
;
}
.form-body
{
border-top
:
2px
solid
#1c1c1c
;
.form-body
{
border-top
:
2px
solid
#1c1c1c
;
}
.form-holder
{
display
:
flex
;
flex-direction
:
column
;
...
...
@@ -200,7 +208,7 @@ h3{
text-align
:
left
;
-webkit-transition
:
all
0.4s
ease
;
transition
:
all
0.4s
ease
;
color
:
lightblue
;
color
:
lightblue
;
}
.form-content
h3
{
...
...
@@ -225,7 +233,7 @@ h3{
}
.form-content
label
,
.was-validated
.form-check-input
:invalid
~
.form-check-label
,
.was-validated
.form-check-input
:valid
~
.form-check-label
{
.form-content
label
,
.was-validated
.form-check-input
:invalid
~
.form-check-label
,
.was-validated
.form-check-input
:valid
~
.form-check-label
{
color
:
#fff
;
}
...
...
@@ -246,14 +254,14 @@ h3{
}
.btn-primary
{
.btn-primary
{
background-color
:
#6C757D
;
outline
:
none
;
border
:
0px
;
box-shadow
:
none
;
}
.btn-primary
:hover
,
.btn-primary
:focus
,
.btn-primary
:active
{
.btn-primary
:hover
,
.btn-primary
:focus
,
.btn-primary
:active
{
background-color
:
#495056
;
outline
:
none
!important
;
border
:
none
!important
;
...
...
@@ -285,22 +293,24 @@ h3{
color
:
#8D8D8D
;
}
.mv-up
{
.mv-up
{
margin-top
:
-9px
!important
;
margin-bottom
:
8px
!important
;
}
.invalid-feedback
{
.invalid-feedback
{
color
:
#ff606e
;
}
.valid-feedback
{
.valid-feedback
{
color
:
#2acc80
;
}
#losaSifra
{
#losaSifra
{
display
:
none
;
margin-top
:
10px
;
margin-top
:
10px
;
}
.breadcrumb
{
background-color
:
#c5cee4
;
...
...
@@ -325,13 +335,14 @@ p {
color
:
#686868
;
}
#slikaProfil
{
#slikaProfil
{
width
:
100px
;
height
:
100px
;
border-radius
:
50%
;
object-fit
:
cover
;
}
#slikaProfil1
{
#slikaProfil1
{
width
:
150px
;
height
:
150px
;
border-radius
:
50%
;
...
...
@@ -349,6 +360,7 @@ p {
.fab.fa-facebook-f
{
color
:
#5999ec
;
}
.profilepic
{
position
:
relative
;
border-radius
:
50%
;
...
...
@@ -400,6 +412,7 @@ p {
width
:
50%
;
text-align
:
center
;
}
#ads
{
margin
:
30px
0
30px
0
;
...
...
@@ -443,10 +456,9 @@ p {
}
#ads
.card
:hover
{
background
:
#fff
;
box-shadow
:
12px
15px
20px
0px
rgba
(
46
,
61
,
73
,
0.15
);
box-shadow
:
12px
15px
20px
0px
rgba
(
46
,
61
,
73
,
0.15
);
border-radius
:
4px
;
transition
:
all
0.3s
ease
;
}
...
...
@@ -486,19 +498,20 @@ p {
border
:
2px
solid
#e6de08
;
background
:
transparent
;
transition
:
all
0.3s
ease
;
box-shadow
:
12px
15px
20px
0px
rgba
(
46
,
61
,
73
,
0.15
);
box-shadow
:
12px
15px
20px
0px
rgba
(
46
,
61
,
73
,
0.15
);
}
#ads
.ad-title
h5
{
text-transform
:
uppercase
;
font-size
:
18px
;
}
.container-main
{
.container-main
{
height
:
820px
;
}
.pozadinaSVG
{
background
:
linear-gradient
(
.pozadinaSVG
{
background
:
linear-gradient
(
to
bottom
,
hsl
(
0
,
0%
,
100%
)
0%
,
hsl
(
0
,
0%
,
99.66%
)
8.1%
,
...
...
@@ -523,8 +536,82 @@ p {
width
:
100%
;
height
:
100%
;
}
.pozadinaSlika
{
background-image
:
url("https://wallpaperaccess.com/full/1895610.jpg")
;
.pozadinaSlika
{
background-image
:
url("https://wallpaperaccess.com/full/1895610.jpg")
;
background-repeat
:
no-repeat
;
background-size
:
cover
;
}
div
.stars
{
width
:
270px
;
display
:
inline-block
;
}
.mt-200
{
margin-top
:
200px
;
}
input
.star
{
display
:
none
;
}
label
.star
{
float
:
right
;
padding
:
10px
;
font-size
:
36px
;
color
:
#4A148C
;
transition
:
all
.2s
;
}
input
.star
:checked
~
label
.star
:before
{
content
:
'\f005'
;
color
:
#FD4
;
transition
:
all
.25s
;
}
input
.star-5
:checked
~
label
.star
:before
{
color
:
#FE7
;
text-shadow
:
0
0
20px
#952
;
}
input
.star-1
:checked
~
label
.star
:before
{
color
:
#F62
;
}
label
.star
:hover
{
transform
:
rotate
(
-15deg
)
scale
(
1.3
);
}
label
.star
:before
{
content
:
'\f006'
;
font-family
:
FontAwesome
;
}
#messages
td
{
width
:
50px
;
}
\ No newline at end of file
SkuciSe/src/main/resources/static/js/main.js
View file @
37501b21
...
...
@@ -107,3 +107,6 @@ function promenaProdaja(radio){
else
document
.
getElementById
(
"prodajaLabel"
).
innerText
=
"Cena po m2"
;
}
$
(
document
).
ready
(
function
()
{
$
(
'#rateMe1'
).
mdbRate
();
});
\ No newline at end of file
SkuciSe/src/main/resources/static/js/socket.js
View file @
37501b21
...
...
@@ -23,11 +23,16 @@ function connect() {
}
function
showMessage
(
message
)
{
$
(
"#messages"
).
append
(
"<tr><td>"
+
message
+
"</td></tr>"
);
let
mail
=
message
.
split
(
":"
)[
0
];
let
messageC
=
message
.
split
(
":"
)[
1
];
if
(
mail
!==
email
)
document
.
getElementById
(
"porukaDodaj"
).
innerHTML
+=
"<div class=
\"
row w-100 m-0
\"
><div class=
\"
col-6
\"
></div><div class=
\"
col-6 d-flex justify-content-center align-items-center p-3 w-50 bg-info rounded
\"
>"
+
messageC
+
"</div></div>"
else
document
.
getElementById
(
"porukaDodaj"
).
innerHTML
+=
"<div class=
\"
row w-100
\"
><div class=
\"\"
><div class=
\"
col-6 d-flex justify-content-center align-items-center p-3 w-50 bg-info rounded
\"
>"
+
messageC
+
"</div><div class=
\"
col-6
\"
></div></div></div>"
}
function
sendPrivateMessage
()
{
console
.
log
(
"sending private message"
);
stompClient
.
send
(
"/ws/private-message"
,
{},
JSON
.
stringify
({
'from'
:
""
,
'to'
:
email
/*$("#to").val()*/
,
'messageContent'
:
$
(
"#private-message"
).
val
()}));
$
(
"#private-message"
).
val
(
""
);
}
\ No newline at end of file
SkuciSe/src/main/resources/templates/chat.html
View file @
37501b21
...
...
@@ -29,108 +29,26 @@
</head>
<body
th:object=
"${loggedUser}"
>
<nav
class=
"navbar navbar-icon-top navbar-expand-lg p-3"
>
<a
class=
"navbar-brand"
href=
"#"
>
</a>
<button
class=
"navbar-toggler"
type=
"button"
data-toggle=
"collapse"
data-target=
"#navbarSupportedContent"
aria-controls=
"navbarSupportedContent"
aria-expanded=
"false"
aria-label=
"Toggle navigation"
>
<span
class=
"navbar-toggler-icon"
></span>
</button>
<div
class=
"collapse navbar-collapse"
id=
"navbarSupportedContent"
>
<ul
class=
"navbar-nav mr-auto"
>
<li
class=
"nav-item active"
>
<a
class=
"nav-link"
th:href=
"@{/index}"
>
<i
class=
"fa fa-home"
></i>
Pocetna
<span
class=
"sr-only"
>
(current)
</span>
</a>
</li>
<li
class=
"nav-item active"
>
<a
class=
"nav-link"
href=
"/lista-oglasa"
>
<i
class=
"fa fa-poll-h"
></i>
Lista oglasa
<span
class=
"sr-only"
>
(current)
</span>
</a>
</li>
<li
class=
"nav-item active"
>
<a
class=
"nav-link"
th:href=
"@{/onama}"
>
<i
class=
"fa-sharp fa-solid fa-address-card"
></i>
<p>
O nama
</p>
<span
class=
"sr-only"
>
(current)
</span>
</a>
</li>
<li
class=
"nav-item active"
>
<a
class=
"nav-link"
th:href=
"@{/portfolio}"
>
<i
class=
"fa-solid fa-briefcase"
></i>
<p>
Portfolio
</p>
<span
class=
"sr-only"
>
(current)
</span>
</a>
</li>
</ul>
<form
class=
"form-inline my-2 my-lg-0"
th:if=
"${loggedUser != null}"
>
<a
th:href=
"@{/novi-oglas}"
>
<button
type=
"button"
class=
"btn btn-primary btn-md mr-2"
><i
class=
"fa-solid fa-plus"
></i>
Postavite
novi oglas
</button>
</a>
</form>
<ul
class=
"navbar-nav"
>
<li
class=
"nav-item"
th:if=
"${loggedUser == null}"
>
<a
th:href=
"@{/login}"
><i
class=
"fas fa-sign-in-alt"
style=
"color:#495056"
></i><span
style=
"padding:10px;color:#495056"
>
Prijavi se
</span></a>
</li>
<li
class=
"nav-item"
th:if=
"${loggedUser == null}"
>
<a
th:href=
"@{/register}"
><i
class=
"fa-solid fa-circle-user"
style=
"color:#495056"
></i><span
style=
"padding:10px;color:#495056"
>
Registruj se
</span></a>
</li>
<li
th:if=
"${loggedUser != null}"
>
<div
class=
"dropdown mr-4"
>
<button
class=
"btn btn-secondary dropdown-toggle round"
type=
"button"
id=
"dropdownMenuButton"
data-toggle=
"dropdown"
aria-haspopup=
"true"
aria-expanded=
"false"
>
<i
class=
"fa-solid fa-circle-user"
></i><span
style=
"padding:10px;"
th:text=
"${loggedUser.getKorisnik().getIme()}"
></span>
</button>
<div
class=
"dropdown-menu"
aria-labelledby=
"dropdownMenuButton"
>
<a
class=
"dropdown-item"
th:href=
"@{/profile}"
>
Moj Profil
</a>
<a
class=
"dropdown-item"
th:href=
"@{/profile/moji-oglasi}"
>
Moji Oglasi
</a>
<a
class=
"dropdown-item"
th:href=
"@{/profile/moji-zahtevi}"
>
Moji Zahtevi
</a>
<a
th:if=
"${loggedUser.getKorisnik().getTipId() == 2}"
class=
"dropdown-item"
th:href=
"@{/lista-korisnika}"
>
Lista Profila
</a>
<form
th:action=
"@{/logout}"
method=
"post"
id=
"my_form"
class=
"dropdown-item"
>
<a
href=
"#"
onclick=
"document.getElementById('my_form').submit(); return false;"
><i
class=
"fas fa-sign-in-alt"
></i><span
style=
"padding:5px;"
>
Odjavi se
</span></a>
</form>
</div>
</div>
</li>
</ul>
</div>
</nav>
<section
class=
"features-icons bg-light text-center"
>
<div
class=
"row"
style=
"margin-top: 10px"
>
<section
class=
"features-icons text-center"
>
<div
class=
"row fixed-bottom"
style=
"margin-top: 10px"
>
<div
class=
"col-md-12"
>
<form
class=
"form-inline"
>
<div
class=
"form-group"
>
<label
for=
"private-message"
>
Private Message
</label>
<input
type=
"text"
id=
"private-message"
class=
"form-control"
placeholder=
"Enter your message here..."
>
<div
class=
"form-group d-flex justify-content-start align-items-center flex-wrap w-100"
>
<div
class=
"col-9"
>
<textarea
id=
"private-message"
class=
"form-control m-2 w-100"
rows=
3
placeholder=
"Unesite poruku ovde..."
></textarea>
</div>
<div
class=
"col-3"
>
<button
id=
"send-private"
class=
"btn btn-primary m-1"
type=
"button"
>
Posaljite poruku
</button>
</div>
</div>
<button
id=
"send-private"
class=
"btn btn-default"
type=
"button"
>
Send Private Message
</button>
</form>
</div>
</div>
<div
class=
"row"
>
<div
class=
"col-md-12"
>
<table
id=
"message-history"
class=
"table table-striped"
>
<thead>
<tr>
<th>
Messages
</th>
</tr>
</thead>
<tbody
id=
"messages"
>
</tbody>
</table>
<div
class=
"row m-3"
>
<div
class=
"col-md-12"
id=
"porukaDodaj"
style=
"overflow: scroll"
>
</div>
</div>
</section>
...
...
SkuciSe/src/main/resources/templates/moji-zahtevi.html
View file @
37501b21
...
...
@@ -194,7 +194,7 @@
</form>
<div>
<p
th:text=
"'Vlasnik: ' + ${vlasnici[oglasStat.count - 1].ime}"
></p>
<
a
th:href=
"'/chat?email='+${vlasnici[oglasStat.count - 1].email}"
target=
"_blank"
onclick=
"window.open(this.href,'mywindow','menubar=1,resizable=0,width=500,height=900')"
>
Posaljite poruku
</a
>
<
button
class=
"btn btn-primary"
th:onclick=
"window.open('/chat?email='+[[${vlasnici[oglasStat.count - 1].email}]],'mywindow','menubar=1,width=650,height=900')"
>
Posaljite poruku
</button
>
</div>
</div>
</div>
...
...
SkuciSe/src/main/resources/templates/oglas.html
View file @
37501b21
...
...
@@ -255,25 +255,25 @@
</div>
<div
class=
"col-md-2 d-flex justify-content-center align-items-center"
>
<img
th:if=
"${zahtevi[korisnikStat.
count - 1
].status.toString() == 'POTVRDJEN'}"
th:if=
"${zahtevi[korisnikStat.
index
].status.toString() == 'POTVRDJEN'}"
th:src=
"@{'data:image/png;charset=utf-8;base64,'+${korisnik.getSlika()}}"
alt=
"slika korisnika"
style=
"width: 150px;height: 150px;border-radius: 50%;object-fit: cover;
border: green 5px solid"
>
<img
th:if=
"${zahtevi[korisnikStat.
count - 1
].status.toString() == 'CEKANJE'}"
th:if=
"${zahtevi[korisnikStat.
index
].status.toString() == 'CEKANJE'}"
th:src=
"@{'data:image/png;charset=utf-8;base64,'+${korisnik.getSlika()}}"
alt=
"slika korisnika"
style=
"width: 150px;height: 150px;border-radius: 50%;object-fit: cover;
border: yellow 5px solid"
>
<img
th:if=
"${zahtevi[korisnikStat.
count - 1
].status.toString() == 'ZAVRSEN'}"
th:if=
"${zahtevi[korisnikStat.
index
].status.toString() == 'ZAVRSEN'}"
th:src=
"@{'data:image/png;charset=utf-8;base64,'+${korisnik.getSlika()}}"
alt=
"slika korisnika"
style=
"width: 150px;height: 150px;border-radius: 50%;object-fit: cover;
border: blue 5px solid"
>
<img
th:if=
"${zahtevi[korisnikStat.
count - 1
].status.toString() == 'ODBIJEN'}"
th:if=
"${zahtevi[korisnikStat.
index
].status.toString() == 'ODBIJEN'}"
th:src=
"@{'data:image/png;charset=utf-8;base64,'+${korisnik.getSlika()}}"
alt=
"slika korisnika"
style=
"width: 150px;height: 150px;border-radius: 50%;object-fit: cover;
...
...
@@ -288,7 +288,7 @@
Email:
<span
th:text=
"${korisnik.getEmail()}"
></span><br>
Telefon:
<span
th:text=
"${korisnik.getTelefon()}"
></span>
</p>
<
a
th:href=
"'/chat?email='+${korisnik.email}"
target=
"_blank"
onclick=
"window.open(this.href,'mywindow','menubar=1,resizable=0,width=500,height=900')"
>
Posaljite poruku
</a
>
<
button
class=
"btn btn-primary"
th:onclick=
"window.open('/chat?email='+[[${korisnik.getEmail()}]],'mywindow','menubar=1,width=650,height=900')"
>
Posaljite poruku
</button
>
</div>
</div>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment