Commit c6c53652 by Milovan Samardzic

dodavanjeOglasaFrontIzgled

parent 2f03958a
...@@ -31,7 +31,7 @@ public class OglasRepository ...@@ -31,7 +31,7 @@ public class OglasRepository
"," + newOglas.isNamesten() + "," + newOglas.isNamesten() +
"," + newOglas.isGrejanje() + "," + newOglas.isGrejanje() +
"," + newOglas.isLift() + "," + newOglas.isLift() +
",'" + newOglas.getLokacija() + "'"; ",'" + newOglas.getLokacija() + "')";
System.out.println( sql); System.out.println( sql);
try { try {
......
spring.servlet.multipart.max-file-size=16MB spring.servlet.multipart.max-file-size=16MB
spring.servlet.multipart.max-request-size=16MB
spring.servlet.multipart.max-file-size=16MB
spring.servlet.multipart.max-request-size=16MB spring.servlet.multipart.max-request-size=16MB
\ No newline at end of file
...@@ -406,4 +406,7 @@ img { ...@@ -406,4 +406,7 @@ img {
font-size: 12px; font-size: 12px;
width: 50%; width: 50%;
text-align: center; text-align: center;
}
.form-check-input{
position:relative;
} }
\ No newline at end of file
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="utf-8"/> <meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/>
<meta name="description" content=""/> <meta name="description" content=""/>
<meta name="author" content=""/> <meta name="author" content=""/>
<title>SkuciSe</title> <title>SkuciSe</title>
<link rel="shortcut icon" type="image/x-icon" href="/images/logo.ico"/> <link rel="shortcut icon" type="image/x-icon" href="/images/logo.ico"/>
<link href='https://fonts.googleapis.com/css?family=Jost' rel='stylesheet'> <link href='https://fonts.googleapis.com/css?family=Jost' rel='stylesheet'>
<link href="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css"> <link href="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<!-- Favicon--> <!-- Favicon-->
<link rel="icon" type="image/x-icon" href="assets/favicon.ico"/> <link rel="icon" type="image/x-icon" href="assets/favicon.ico"/>
<!-- CSS only --> <!-- CSS only -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet" <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous"> integrity="sha384-gH2yIJqKdNHPEq0n4Mqa/HGKIhSkIHeL5AyhkYV8i59U5AR6csBvApHHNl/vI1Bx" crossorigin="anonymous">
<!-- Core theme CSS (includes Bootstrap)--> <!-- Core theme CSS (includes Bootstrap)-->
<link href="/css/style.css" rel="stylesheet"/> <link href="/css/style.css" rel="stylesheet"/>
</head> </head>
<body th:object="${loggedUser}"> <body th:object="${loggedUser}">
<nav class="navbar navbar-icon-top navbar-expand-lg p-3" style="background-color: white;"> <nav class="navbar navbar-icon-top navbar-expand-lg p-3" style="background-color: white;">
<a class="navbar-brand" href="#"> </a> <a class="navbar-brand" href="#"> </a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span> <span class="navbar-toggler-icon"></span>
</button> </button>
<div class="collapse navbar-collapse" id="navbarSupportedContent"> <div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav mr-auto"> <ul class="navbar-nav mr-auto">
<li class="nav-item active"> <li class="nav-item active">
<a class="nav-link" th:href="@{/index}"> <a class="nav-link" th:href="@{/index}">
<i class="fa fa-home"></i> <i class="fa fa-home"></i>
Pocetna Pocetna
<span class="sr-only">(current)</span> <span class="sr-only">(current)</span>
</a> </a>
</li> </li>
</ul> </ul>
<form class="form-inline my-2 my-lg-0" th:if="${loggedUser != null}"> <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 <a th:href="@{/novi-oglas}">
novi oglas <button type="button" class="btn btn-primary btn-md mr-2"><i class="fa-solid fa-plus"></i> Postavite
</button> novi oglas
</a> </button>
</form> </a>
<ul class="navbar-nav"> </form>
<li class="nav-item" th:if="${loggedUser == null}"> <ul class="navbar-nav">
<a th:href="@{/login}"><i class="fas fa-sign-in-alt" style="color:#495056"></i><span <li class="nav-item" th:if="${loggedUser == null}">
style="padding:10px;color:#495056">Prijavi se</span></a> <a th:href="@{/login}"><i class="fas fa-sign-in-alt" style="color:#495056"></i><span
</li> style="padding:10px;color:#495056">Prijavi se</span></a>
<li class="nav-item" th:if="${loggedUser == null}"> </li>
<a th:href="@{/register}"><i class="fa-solid fa-circle-user" style="color:#495056"></i><span <li class="nav-item" th:if="${loggedUser == null}">
style="padding:10px;color:#495056">Registruj se</span></a> <a th:href="@{/register}"><i class="fa-solid fa-circle-user" style="color:#495056"></i><span
</li> style="padding:10px;color:#495056">Registruj se</span></a>
<li th:if="${loggedUser != null}"> </li>
<div class="dropdown mr-4"> <li th:if="${loggedUser != null}">
<button class="btn btn-secondary dropdown-toggle round" type="button" id="dropdownMenuButton" <div class="dropdown mr-4">
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <button class="btn btn-secondary dropdown-toggle round" type="button" id="dropdownMenuButton"
<i class="fa-solid fa-circle-user"></i><span style="padding:10px;" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
th:text="${loggedUser.getKorisnik().getIme()}"></span> <i class="fa-solid fa-circle-user"></i><span style="padding:10px;"
</button> th:text="${loggedUser.getKorisnik().getIme()}"></span>
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton"> </button>
<a class="dropdown-item" th:href="@{/profile}">Moj Profil</a> <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<a class="dropdown-item" th:href="@{/mojioglasi}">Moji Oglasi</a> <a class="dropdown-item" th:href="@{/profile}">Moj Profil</a>
<a class="dropdown-item" th:href="@{/mojizahtevi}">Moji Zahtevi</a> <a class="dropdown-item" th:href="@{/mojioglasi}">Moji Oglasi</a>
<a th:if="${loggedUser.getKorisnik().getTipId() == 2}" class="dropdown-item" <a class="dropdown-item" th:href="@{/mojizahtevi}">Moji Zahtevi</a>
th:href="@{/lista-korisnika}">Lista Profila</a> <a th:if="${loggedUser.getKorisnik().getTipId() == 2}" class="dropdown-item"
<form th:action="@{/logout}" method="post" id="my_form" class="dropdown-item"> th:href="@{/lista-korisnika}">Lista Profila</a>
<a href="#" onclick="document.getElementById('my_form').submit(); return false;"><i <form th:action="@{/logout}" method="post" id="my_form" class="dropdown-item">
class="fas fa-sign-in-alt"></i><span style="padding:5px;">Odjavi se</span></a> <a href="#" onclick="document.getElementById('my_form').submit(); return false;"><i
</form> class="fas fa-sign-in-alt"></i><span style="padding:5px;">Odjavi se</span></a>
</div> </form>
</div> </div>
</li> </div>
</ul> </li>
</div> </ul>
</div>
</nav> </nav>
<div class="form-body d-flex justify-content-center w-100 mt-5"> <div class="form-body d-flex justify-content-center w-100 mt-5" style="height: 600px;">
<div class="row"> <div class="row">
<div class="form-holder"> <div class="form-holder">
<div class="form-content" style="bottom:50px;"> <div class="form-content">
<div class="form-items"> <div class="form-items">
<h3>Novi oglas</h3> <h3>Novi oglas</h3>
<p>Popunite podatke ispod.</p> <p>Popunite podatke ispod.</p>
<form class="requires-validation" novalidate th:object="${newOglas}" method="POST" <form class="requires-validation d-flex flex-wrap justify-content-center align-items-center"
th:action="@{/novi-oglas/save}" enctype="multipart/form-data"> novalidate th:object="${newOglas}" method="POST"
th:action="@{/novi-oglas/save}" enctype="multipart/form-data">
<div class="col-md-12"> <div>
<input th:field="${newOglas.naslov}" class="form-control" type="text" <div class="col-md-12">
placeholder="Ime" required> <input th:field="${newOglas.naslov}" class="form-control" type="text"
<div class="invalid-feedback">Naslov ne sme biti prazan!</div> placeholder="Ime" required>
</div> <div class="invalid-feedback">Naslov ne sme biti prazan!</div>
</div>
<div class="col-md-12">
<select th:field="${newOglas.lokacijaId}">
<option th:each="lokacija: ${lokacije}" th:value="${lokacija.getLokacijaId()}"
th:text="${lokacija.getNaziv()}">
</option>
</select>
</div>
<div class="col-md-12"> <div class="col-md-12">
<input th:field="${newOglas.lokacija}" class="form-control" type="text" <select th:field="${newOglas.lokacijaId}">
placeholder="Naselje" required> <option th:each="lokacija: ${lokacije}" th:value="${lokacija.getLokacijaId()}"
<div class="invalid-feedback">Naselje ne sme biti prazno!</div> th:text="${lokacija.getNaziv()}">
</div> </option>
</select>
<div class="col-md-12"> </div>
<label class="form-check-label">
Kvadratura
</label>
<input th:field="${newOglas.kvadratura}" class="form-control" type="number"
placeholder="Kvadratura" required>
<div class="invalid-feedback">Kvadratura ne sme biti prazna!</div>
</div>
<div class="col-md-12">
<label class="form-check-label">
Cena po m2
</label>
<input th:field="${newOglas.cena}" class="form-control" type="number"
placeholder="Cena po m2" required>
<div class="invalid-feedback">Cena ne sme biti prazan!</div>
</div>
<div class="col-md-12"> <div class="col-md-12">
<label class="form-check-label"> <input th:field="${newOglas.lokacija}" class="form-control" type="text"
Broj soba placeholder="Naselje" required>
</label> <div class="invalid-feedback">Naselje ne sme biti prazno!</div>
<input th:field="${newOglas.brojSoba}" class="form-control" type="number" </div>
placeholder="Broj soba" required>
<div class="invalid-feedback">Broj soba ne sme biti prazan!</div>
</div>
<div class="col-md-12"> <div class="col-md-12">
<input th:field="${newOglas.lift}" class="form-check-input" type="checkbox" value=""> <label class="form-check-label">
<label class="form-check-label"> Kvadratura
Lift </label>
</label> <input th:field="${newOglas.kvadratura}" class="form-control" type="number"
</div> placeholder="Kvadratura" required>
<div class="invalid-feedback">Kvadratura ne sme biti prazna!</div>
</div>
<div class="col-md-12"> <div class="col-md-12">
<input th:field="${newOglas.namesten}" class="form-check-input" type="checkbox" value=""> <label class="form-check-label">
<label class="form-check-label"> Cena po m2
Namesten </label>
</label> <input th:field="${newOglas.cena}" class="form-control" type="number"
</div> placeholder="Cena po m2" required>
<div class="invalid-feedback">Cena ne sme biti prazan!</div>
</div>
<div class="col-md-12"> <div class="col-md-12">
<input th:field="${newOglas.grejanje}" class="form-check-input" type="checkbox" value=""> <label class="form-check-label">
<label class="form-check-label"> Broj soba
Grejanje </label>
</label> <input th:field="${newOglas.brojSoba}" class="form-control" type="number"
</div> placeholder="Broj soba" required>
<div class="invalid-feedback">Broj soba ne sme biti prazan!</div>
</div>
</div>
<div class="d-flex justify-content-center align-items-center flex-column mt-4">
<div class="d-flex flex-row justify-content-center align-items-center w-100">
<div class="col d-flex flex-row justify-content-center">
<input th:field="${newOglas.lift}" class="form-check-input" type="checkbox"
value="">
<label class="ml-2">
Lift
</label>
</div>
<div class="col-md-12"> <div class="col col d-flex flex-row justify-content-center">
<input class="form-check-input" type="radio" name="flexRadioDefault" id="flexRadioDefault1" value="1" checked> <input th:field="${newOglas.namesten}" class="form-check-input" type="checkbox"
<label class="form-check-label" for="flexRadioDefault1"> value="">
Prodaja <label class="ml-2">
</label> Namesten
<input class="form-check-input" type="radio" name="flexRadioDefault" id="flexRadioDefault2" value="2"> </label>
<label class="form-check-label" for="flexRadioDefault2"> </div>
Izdavanje
</label>
</div>
<div class="col-md-12"> <div class="col col d-flex flex-row justify-content-center">
<textarea th:field="${newOglas.opis}" class="form-control" <input th:field="${newOglas.grejanje}" class="form-check-input" type="checkbox"
placeholder="Opis" required></textarea> value="">
<div class="invalid-feedback">Opis ne sme biti prazan!</div> <label class="ml-2">
</div> Grejanje
</label>
</div>
</div>
<div class="col-md-12 d-flex justify-content-between align-items-center flex-row">
<div style="margin-left: 1.4rem">
<input class="form-check-input" type="radio" name="flexRadioDefault"
id="flexRadioDefault1" value="1" checked th:field="${newOglas.vrstaOglasaId}">
<label class="form-check-label" for="flexRadioDefault1">
Prodaja
</label>
</div>
<div>
<input class="form-check-input" type="radio" name="flexRadioDefault"
id="flexRadioDefault2" value="2" th:field="${newOglas.vrstaOglasaId}">
<label class="form-check-label" for="flexRadioDefault2">
Izdavanje
</label>
</div>
</div>
<div class="col-md-12 mt-2" style="color:white;">
<input class="form-control" name="images" type="file" id="formFileMultiple" accept="image/png, image/jpeg" multiple />
<label for="formFileMultiple" class="form-label">Slike stana</label>
<div class="invalid-feedback">Unesite sliku!</div>
</div>
<div class="col-md-12 mt-2" style="color:white;"> <div class="col-md-12">
<input type="file" name="images" accept="image/png, image/jpeg"/> <textarea th:field="${newOglas.opis}" class="form-control" placeholder="Opis"
<div class="invalid-feedback">Unesite sliku!</div> required></textarea>
</div> <div class="invalid-feedback">Opis ne sme biti prazan!</div>
</div>
<div class="form-check"> <div class="form-check ml-3">
<input class="form-check-input" type="checkbox" value="" id="invalidCheck" required> <input class="form-check-input" type="checkbox" value="" id="invalidCheck" required>
<label class="form-check-label">Potvrdjujem da su svi podaci tacni</label> <label class="form-check-label">Potvrdjujem da su svi podaci tacni</label>
<div class="invalid-feedback">Molim vas da potvrdite da su svi podaci tacni!</div> <div class="invalid-feedback">Molim vas da potvrdite da su svi podaci tacni!</div>
</div> </div>
<div class="form-button mt-3"> <div class="form-button mt-3">
<button id="submit" type="submit" class="btn btn-primary">Registruj se</button> <button id="submit" type="submit" class="btn btn-primary">Registruj se</button>
</div>
</div>
</form>
</div>
</div> </div>
</form>
</div> </div>
</div>
</div> </div>
</div>
</div> </div>
<div class="container-fluid pb-0 mb-0 justify-content-center text-light "> <div class="container-fluid pb-0 mb-0 justify-content-center text-light ">
<footer> <footer>
<div class="row my-5 justify-content-center py-5"> <div class="row my-5 justify-content-center py-5">
<div class="col-11"> <div class="col-11">
<div class="row "> <div class="row ">
<div class="col-xl-8 col-md-4 col-sm-4 col-12 my-auto mx-auto a"><h3 <div class="col-xl-8 col-md-4 col-sm-4 col-12 my-auto mx-auto a"><h3
class="text-muted mb-md-0 mb-5 bold-text">SkuciSe</h3></div> class="text-muted mb-md-0 mb-5 bold-text">SkuciSe</h3></div>
<div class="col-xl-2 col-md-4 col-sm-4 col-12"><h6 class="mb-3 mb-lg-4 bold-text "><b>MENI</b></h6> <div class="col-xl-2 col-md-4 col-sm-4 col-12"><h6 class="mb-3 mb-lg-4 bold-text "><b>MENI</b></h6>
<ul class="list-unstyled"> <ul class="list-unstyled">
<li>Pocetna</li> <li>Pocetna</li>
<li>O nama</li> <li>O nama</li>
<li>Blog</li> <li>Blog</li>
<li>Portfolio</li> <li>Portfolio</li>
</ul> </ul>
</div> </div>
<div class="col-xl-2 col-md-4 col-sm-4 col-12"><h6 <div class="col-xl-2 col-md-4 col-sm-4 col-12"><h6
class="mb-3 mb-lg-4 text-muted bold-text mt-sm-0 mt-5"><b>ADRESA</b></h6> class="mb-3 mb-lg-4 text-muted bold-text mt-sm-0 mt-5"><b>ADRESA</b></h6>
<p class="mb-1">Radoja Domanovića 12</p> <p class="mb-1">Radoja Domanovića 12</p>
<p> Kragujevac 34000</p></div> <p> Kragujevac 34000</p></div>
</div> </div>
<div class="row "> <div class="row ">
<div class="col-xl-8 col-md-4 col-sm-4 col-auto my-md-0 mt-5 order-sm-1 order-3 align-self-end"><p <div class="col-xl-8 col-md-4 col-sm-4 col-auto my-md-0 mt-5 order-sm-1 order-3 align-self-end"><p
class="social text-muted mb-0 pb-0 bold-text"><span class="mx-2"><i class="fa fa-facebook" class="social text-muted mb-0 pb-0 bold-text"><span class="mx-2"><i class="fa fa-facebook"
aria-hidden="true"></i></span> aria-hidden="true"></i></span>
<span class="mx-2"><i class="fa fa-linkedin-square" aria-hidden="true"></i></span> <span <span class="mx-2"><i class="fa fa-linkedin-square" aria-hidden="true"></i></span> <span
class="mx-2"><i class="fa fa-twitter" aria-hidden="true"></i></span> <span class="mx-2"><i class="mx-2"><i class="fa fa-twitter" aria-hidden="true"></i></span> <span class="mx-2"><i
class="fa fa-instagram" aria-hidden="true"></i></span></p><small class="rights"><span>&#174;</span> class="fa fa-instagram" aria-hidden="true"></i></span></p><small class="rights"><span>&#174;</span>
SkuciSe All Rights Reserved.</small></div> SkuciSe All Rights Reserved.</small></div>
<div class="col-xl-2 col-md-4 col-sm-4 col-auto order-1 align-self-end "><h6 <div class="col-xl-2 col-md-4 col-sm-4 col-auto order-1 align-self-end "><h6
class="mt-55 mt-2 text-muted bold-text"><b>PERA PERIC</b></h6><small> <span><i class="mt-55 mt-2 text-muted bold-text"><b>PERA PERIC</b></h6><small> <span><i
class="fa fa-envelope" aria-hidden="true"></i></span> pera@gmail.com</small></div> class="fa fa-envelope" aria-hidden="true"></i></span> pera@gmail.com</small></div>
<div class="col-xl-2 col-md-4 col-sm-4 col-auto order-2 align-self-end mt-3 "><h6 <div class="col-xl-2 col-md-4 col-sm-4 col-auto order-2 align-self-end mt-3 "><h6
class="text-muted bold-text"><b>ACA ACIC</b></h6><small><span><i class="fa fa-envelope" class="text-muted bold-text"><b>ACA ACIC</b></h6><small><span><i class="fa fa-envelope"
aria-hidden="true"></i></span> aria-hidden="true"></i></span>
aca@gmail.com</small></div> aca@gmail.com</small></div>
</div>
</div>
</div> </div>
</div> </footer>
</div>
</footer>
</div> </div>
<!-- JavaScript Bundle with Popper --> <!-- JavaScript Bundle with Popper -->
<script src="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js"></script> <script src="//maxcdn.bootstrapcdn.com/bootstrap/4.1.1/js/bootstrap.min.js"></script>
......
...@@ -134,7 +134,7 @@ ...@@ -134,7 +134,7 @@
</div> </div>
<div class="col-md-12 mt-2" style="color:white;"> <div class="col-md-12 mt-2" style="color:white;">
<input type="file" name="image" accept="image/png, image/jpeg"/> <input class="form-control" name="image" type="file" id="formFileMultiple" accept="image/png, image/jpeg" multiple />
<div class="invalid-feedback">Unesite sliku!</div> <div class="invalid-feedback">Unesite sliku!</div>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment