Commit f795a190 by Vuk Lazovic

autentifikacija admina

parent 0fb76423
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AutoImportSettings">
<option name="autoReloadType" value="ALL" />
</component>
<component name="ChangeListManager">
<list default="true" id="d75636e7-c025-49ee-88ce-f7dd3739636c" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/compiler.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/jpa-buddy.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/misc.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_18_9_2022__18_26_[Default_Changelist]/shelved.patch" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_18_9_2022__18_26__Default_Changelist_.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_18_9_2022__20_08_[Default_Changelist]/shelved.patch" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_18_9_2022__20_08__Default_Changelist_.xml" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_19_9_2022__15_07_[Default_Changelist]/shelved.patch" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/shelf/Uncommitted_changes_before_Update_at_19_9_2022__15_07__Default_Changelist_.xml" beforeDir="false" />
<list default="true" id="6e82c7f1-3949-40e2-bc26-7eb50b36f993" name="Default Changelist" comment="header i footer register">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/app/usluga/Implementacija.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/app/usluga/Implementacija.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/app/usluga/web/MainKontroler.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/app/usluga/web/MainKontroler.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/templates/index.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/index.html" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/templates/listaKorisnik.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/listaKorisnik.html" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/templates/listaOglas.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/listaOglas.html" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/resources/templates/property.html" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/resources/templates/property.html" afterDir="false" />
</list>
<ignored path="$PROJECT_DIR$/target/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Interface" />
<option value="HTML File" />
<option value="Class" />
</list>
</option>
</component>
<component name="Git.Settings">
<option name="UPDATE_TYPE" value="MERGE" />
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/main/resources/templates/login.html" />
</list>
</option>
</component>
<component name="JpbToolWindowState">
<option name="myId2FirstActivated">
<map>
<entry key="com.haulmont.jpb.jpaInspector" value="true" />
<entry key="com.haulmont.jpb.jpaPalette" value="true" />
<entry key="com.haulmont.jpb.jpaStructure" value="true" />
</map>
</option>
<option name="myId2Visible">
<map>
<entry key="com.haulmont.jpb.jpaInspector" value="false" />
<entry key="com.haulmont.jpb.jpaPalette" value="false" />
<entry key="com.haulmont.jpb.jpaStructure" value="false" />
</map>
</option>
</component>
<component name="MarkdownSettingsMigration">
<option name="stateVersion" value="1" />
</component>
<component name="MavenProjectNavigator">
<treeState>
<expand>
<path>
<item name="" type="16c1761:MavenProjectsStructure$RootNode" />
<item name="registration-login-spring-boot-security-thymeleaf" type="9519ce18:MavenProjectsStructure$ProjectNode" />
</path>
</expand>
<select />
</treeState>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="x" value="10" />
<option name="y" value="20" />
<option name="width" value="1004" />
<option name="height" value="688" />
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
<component name="ProjectId" id="2EwILGSPKCVn860rmBDBYR0jn3o" />
<component name="ProjectLevelVcsManager" settingsEditedManually="true">
<ConfirmationsSetting value="2" id="Add" />
</component>
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
......@@ -54,31 +101,84 @@
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="registration-login-spring-boot-security-thymeleaf" type="b2602c69:ProjectViewProjectNode" />
<item name="awesomelands" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="registration-login-spring-boot-security-thymeleaf" type="b2602c69:ProjectViewProjectNode" />
<item name="awesomelands" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="app" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="registration-login-spring-boot-security-thymeleaf" type="b2602c69:ProjectViewProjectNode" />
<item name="awesomelands" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="app" type="462c0819:PsiDirectoryNode" />
<item name="config" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="registration-login-spring-boot-security-thymeleaf" type="b2602c69:ProjectViewProjectNode" />
<item name="awesomelands" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="app" type="462c0819:PsiDirectoryNode" />
<item name="model" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="registration-login-spring-boot-security-thymeleaf" type="b2602c69:ProjectViewProjectNode" />
<item name="awesomelands" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="resources" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="registration-login-spring-boot-security-thymeleaf" type="b2602c69:ProjectViewProjectNode" />
<item name="awesomelands" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="462c0819:PsiDirectoryNode" />
<item name="resources" type="462c0819:PsiDirectoryNode" />
<item name="templates" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="PackagesPane" />
<pane id="Scope" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
<component name="PropertiesComponent">{
&quot;keyToString&quot;: {
&quot;ASKED_ADD_EXTERNAL_FILES&quot;: &quot;true&quot;,
&quot;DefaultHtmlFileTemplate&quot;: &quot;HTML File&quot;,
&quot;RequestMappingsPanelOrder0&quot;: &quot;0&quot;,
&quot;RequestMappingsPanelOrder1&quot;: &quot;1&quot;,
&quot;RequestMappingsPanelWidth0&quot;: &quot;75&quot;,
&quot;RequestMappingsPanelWidth1&quot;: &quot;75&quot;,
&quot;WebServerToolWindowFactoryState&quot;: &quot;false&quot;,
&quot;spring.configuration.checksum&quot;: &quot;bb9bda38566c870d6f3a70881ab7a768&quot;
}
}</component>
<component name="RecentsManager">
<key name="CopyClassDialog.RECENTS_KEY">
<recent name="app.usluga" />
<recent name="app.usluga.web" />
<recent name="app.usluga.web.transfer" />
<recent name="app.rep" />
</key>
</component>
<component name="RunManager">
<configuration name="Aplikacija" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
......@@ -89,25 +189,67 @@
</method>
</configuration>
</component>
<component name="SpellCheckerSettings" RuntimeDictionaries="0" Folders="0" CustomDictionaries="0" DefaultDictionary="application-level" UseSingleDictionary="true" transferred="true" />
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="d75636e7-c025-49ee-88ce-f7dd3739636c" name="Default Changelist" comment="" />
<created>1663793555663</created>
<changelist id="6e82c7f1-3949-40e2-bc26-7eb50b36f993" name="Default Changelist" comment="" />
<created>1663427032475</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1663793555663</updated>
<workItem from="1663793565593" duration="270000" />
<updated>1663427032475</updated>
<workItem from="1663427050863" duration="1923000" />
<workItem from="1663500169914" duration="6177000" />
<workItem from="1663512751550" duration="4807000" />
<workItem from="1663587110231" duration="665000" />
<workItem from="1663587883995" duration="11000" />
<workItem from="1663589644471" duration="4472000" />
<workItem from="1663594548080" duration="456000" />
<workItem from="1663598082766" duration="1751000" />
<workItem from="1663600055785" duration="984000" />
<workItem from="1663675731268" duration="8728000" />
<workItem from="1663703824680" duration="5427000" />
<workItem from="1663780970951" duration="541000" />
</task>
<task id="LOCAL-00001" summary="dodata ulogovana verzija">
<created>1663501497955</created>
<option name="number" value="00001" />
<option name="presentableId" value="LOCAL-00001" />
<option name="project" value="LOCAL" />
<updated>1663501497955</updated>
</task>
<task id="LOCAL-00002" summary="login/logout/anonymous user...">
<created>1663590651571</created>
<option name="number" value="00002" />
<option name="presentableId" value="LOCAL-00002" />
<option name="project" value="LOCAL" />
<updated>1663590651571</updated>
</task>
<task id="LOCAL-00003" summary="UPLOAD sada radi">
<created>1663599823537</created>
<option name="number" value="00003" />
<option name="presentableId" value="LOCAL-00003" />
<option name="project" value="LOCAL" />
<updated>1663599823537</updated>
</task>
<task id="LOCAL-00004" summary="header i footer register">
<created>1663781295222</created>
<option name="number" value="00004" />
<option name="presentableId" value="LOCAL-00004" />
<option name="project" value="LOCAL" />
<updated>1663781295222</updated>
</task>
<option name="localTasksCounter" value="5" />
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="270000" />
<option name="totallyTimeSpent" value="1923000" />
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1040" height="744" extended-state="6" />
<editor active="true" />
<layout>
<window_info id="Designer" />
<window_info id="Image Layers" />
......@@ -115,23 +257,24 @@
<window_info id="UI Designer" />
<window_info id="Favorites" side_tool="true" />
<window_info id="Web" side_tool="true" />
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.25" />
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.24081632" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info anchor="bottom" id="Spring" />
<window_info anchor="bottom" id="Terminal" />
<window_info anchor="bottom" id="Docker" show_stripe_button="false" />
<window_info anchor="bottom" id="Event Log" side_tool="true" />
<window_info anchor="bottom" id="Messages" />
<window_info anchor="bottom" id="Java Enterprise" />
<window_info anchor="bottom" id="Database Changes" />
<window_info anchor="bottom" id="Version Control" visible="true" weight="0.3289689" />
<window_info anchor="bottom" id="Version Control" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Run" order="2" weight="0.3289689" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="right" id="Maven" />
<window_info anchor="right" id="Maven" visible="true" weight="0.03469388" />
<window_info anchor="right" id="Palette" />
<window_info anchor="right" id="Capture Analysis" />
<window_info anchor="right" id="Database" />
......@@ -143,7 +286,59 @@
</layout>
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="1" />
<option name="version" value="3" />
</component>
<component name="Vcs.Log.Tabs.Properties">
<option name="TAB_STATES">
<map>
<entry key="MAIN">
<value>
<State />
</value>
</entry>
</map>
</option>
</component>
<component name="VcsManagerConfiguration">
<option name="ADD_EXTERNAL_FILES_SILENTLY" value="true" />
<MESSAGE value="dodata ulogovana verzija" />
<MESSAGE value="login/logout/anonymous user..." />
<MESSAGE value="UPLOAD sada radi" />
<MESSAGE value="header i footer register" />
<option name="LAST_COMMIT_MESSAGE" value="header i footer register" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/main/java/app/model/Korisnik.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="19" column="13" selection-start-line="19" selection-start-column="13" selection-end-line="19" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/app/config/Bezbednost.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="17" column="13" selection-start-line="17" selection-start-column="13" selection-end-line="17" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/templates/index.html">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/templates/login.html">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="226">
<caret line="75" column="10" lean-forward="true" selection-start-line="75" selection-start-column="10" selection-end-line="75" selection-end-column="10" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/app/Aplikacija.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="153">
<caret line="12" column="1" lean-forward="true" selection-start-line="12" selection-start-column="1" selection-end-line="12" selection-end-column="1" />
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
......
package app.usluga;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
......@@ -55,17 +56,24 @@ public class Implementacija implements KorisnickaUsluga{
if(k == null) {
throw new UsernameNotFoundException("Invalid username or password.");
}
return new org.springframework.security.core.userdetails.User(k.getEmail(), k.getLozinka(), mapRolesToAuthorities(k.getUloge()));
return new org.springframework.security.core.userdetails.User(k.getEmail(), k.getLozinka(), mapRolesToAuthorities(k.getUloge(),k.getId()));
}
private Collection<? extends GrantedAuthority> mapRolesToAuthorities(Collection<Uloga> uloge){
return uloge.stream().map(uloga -> new SimpleGrantedAuthority(uloga.getIme())).collect(Collectors.toList());
private Collection<? extends GrantedAuthority> mapRolesToAuthorities(Collection<Uloga> uloge,long id)
{
if(id==1)
return uloge.stream().map(uloga -> new SimpleGrantedAuthority("ADMIN")).collect(Collectors.toList());
else
return uloge.stream().map(uloga -> new SimpleGrantedAuthority("KORISNIK")).collect(Collectors.toList());
}
@Override
public List<Korisnik>izlistaj(){
return (List<Korisnik>) kr.findAll();
List<Korisnik> lista= kr.findAll();
Korisnik k = kr.findById(Long.valueOf(1)).get();
lista.remove(k);
return lista;
}
@Override
......
......@@ -5,6 +5,8 @@ import app.model.Oglas;
import app.usluga.OglasUsluga;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.ui.Model;
......@@ -14,6 +16,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.IOException;
import java.util.Collection;
import java.util.List;
@Controller
......@@ -41,7 +44,11 @@ public class MainKontroler {
@GetMapping("/")
public String prikaziHome() {
return "index";
Collection<SimpleGrantedAuthority> authorities = (Collection<SimpleGrantedAuthority>) SecurityContextHolder.getContext().getAuthentication().getAuthorities();
System.out.println(authorities);
return "index";
}
......
......@@ -46,6 +46,7 @@
<div class="col d-flex justify-content-end">
<div th:text="${#authentication.name}">
The value of the "name" property of the authentication object should appear here.
</div>
......@@ -65,9 +66,15 @@
<ul class="navbar-nav ml-auto">
<li class="nav-item active"><a href="/" class="nav-link">Pocetna strana</a></li>
<li class="nav-item"><a href="oglasi" class="nav-link">Oglasi</a></li>
<li class="nav-item"><a href="maintance" class="nav-link">Agenti</a></li>
<li class="nav-item"><a href="adminKorisnik" class="nav-link">Korisnici</a></li>
<li class="nav-item"><a href="adminOglas" class="nav-link">Ukloni Oglase</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">Agenti</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">O nama</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">Kontakt</a></li>
<li sec:authorize="hasAuthority('ADMIN')" class="nav-item"><a href="adminKorisnik" class="nav-link">Ukloni Korisnike</a></li>
<li sec:authorize="hasAuthority('ADMIN')" class="nav-item"><a href="adminOglas" class="nav-link"> Ukloni Oglase</a></li>
<li sec:authorize="isAnonymous()" class="nav-item cta"><a href="login" class="nav-link ml-lg-2"><span class="icon-user"></span> Prijava</a></li>
<li sec:authorize="isAnonymous()" class="nav-item cta cta-colored"><a href="registration" class="nav-link" ><span class="icon-pencil"></span> Registracija</a></li>
......
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="ISO-8859-1">
<title>Employee Management System</title>
<title>Royal Estate - Free Bootstrap 4 Template by TIM</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"
integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO"
crossorigin="anonymous">
<link href="https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700" rel="stylesheet">
<link rel="stylesheet" href="css/open-iconic-bootstrap.min.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="css/owl.carousel.min.css">
<link rel="stylesheet" href="css/owl.theme.default.min.css">
<link rel="stylesheet" href="css/magnific-popup.css">
<link rel="stylesheet" href="css/aos.css">
<link rel="stylesheet" href="css/ionicons.min.css">
<link rel="stylesheet" href="css/bootstrap-datepicker.css">
<link rel="stylesheet" href="css/jquery.timepicker.css">
<link rel="stylesheet" href="css/flaticon.css">
<link rel="stylesheet" href="css/icomoon.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="top">
<div class="container">
<div class="row d-flex align-items-center">
<div class="col">
<p class="social d-flex">
<a href="#"><span class="icon-facebook"></span></a>
<a href="#"><span class="icon-twitter"></span></a>
<a href="#"><span class="icon-google"></span></a>
<a href="#"><span class="icon-pinterest"></span></a>
</p>
</div>
<div class="col d-flex justify-content-end">
<div th:text="${#authentication.name}">
The value of the "name" property of the authentication object should appear here.
</div>
</div>
</div>
</div>
</div>
<nav class="navbar navbar-expand-lg navbar-dark ftco_navbar bg-dark ftco-navbar-light" id="ftco-navbar">
<div class="container">
<a class="navbar-brand" href="/">AWESOME<span>lands</span></a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#ftco-nav" aria-controls="ftco-nav" aria-expanded="false" aria-label="Toggle navigation">
<span class="oi oi-menu"></span> Menu
</button>
<div class="collapse navbar-collapse" id="ftco-nav">
<ul class="navbar-nav ml-auto">
<li class="nav-item active"><a href="/" class="nav-link">Pocetna strana</a></li>
<li class="nav-item"><a href="oglasi" class="nav-link">Oglasi</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">Agenti</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">O nama</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">Kontakt</a></li>
<li sec:authorize="hasAuthority('ADMIN')" class="nav-item"><a href="adminKorisnik" class="nav-link">Ukloni Korisnike</a></li>
<li sec:authorize="hasAuthority('ADMIN')" class="nav-item"><a href="adminOglas" class="nav-link"> Ukloni Oglase</a></li>
<li sec:authorize="isAnonymous()" class="nav-item cta"><a href="login" class="nav-link ml-lg-2"><span class="icon-user"></span> Prijava</a></li>
<li sec:authorize="isAnonymous()" class="nav-item cta cta-colored"><a href="registration" class="nav-link" ><span class="icon-pencil"></span> Registracija</a></li>
<li sec:authorize="isAuthenticated()" class="nav-item cta"><a href="dodaj" class="nav-link ml-lg-2"><span class="icon-user"></span> Dodaj Oglas</a></li>
<li sec:authorize="isAuthenticated()" class="nav-item cta"><a href="/logout" class="nav-link ml-lg-2"><span class="icon-user"></span> Log Out</a></li>
<!--sec:authorize="isAuthenticated()-->
</ul>
</div>
</div>
</nav>
<!-- END nav -->
<div class="container my-2">
<h1>Svi korisnici</h1>
......@@ -46,5 +121,49 @@
</tbody>
</table>
</div>
<div style="height: 500px"></div>
<footer class="ftco-footer ftco-bg-dark ftco-section">
<div class="container">
<div class="row">
<div class="col-md-12 text-center">
<p><!-- Link back to Colorlib can't be removed. Template is licensed under CC BY 3.0. -->
Copyright &copy;<script>document.write(new Date().getFullYear());</script> Sva prava zadržana | </i> by <a target="_blank">TIM 10</a>
<!-- Link back to Colorlib can't be removed. Template is licensed under CC BY 3.0. --></p>
</div>
</div>
</div>
</footer>
<!-- loader -->
<div id="ftco-loader" class="show fullscreen"><svg class="circular" width="48px" height="48px"><circle class="path-bg" cx="24" cy="24" r="22" fill="none" stroke-width="4" stroke="#eeeeee"/><circle class="path" cx="24" cy="24" r="22" fill="none" stroke-width="4" stroke-miterlimit="10" stroke="#F96D00"/></svg></div>
<script src="js/jquery.min.js"></script>
<script src="js/jquery-migrate-3.0.1.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.easing.1.3.js"></script>
<script src="js/jquery.waypoints.min.js"></script>
<script src="js/jquery.stellar.min.js"></script>
<script src="js/owl.carousel.min.js"></script>
<script src="js/jquery.magnific-popup.min.js"></script>
<script src="js/aos.js"></script>
<script src="js/jquery.animateNumber.min.js"></script>
<script src="js/bootstrap-datepicker.js"></script>
<script src="js/jquery.timepicker.min.js"></script>
<script src="js/scrollax.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBVWaKrjvy3MaE7SQ74_uJiULgl1JY0H2s&sensor=false"></script>
<script src="js/google-map.js"></script>
<script src="js/main.js"></script>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="ISO-8859-1">
<title>Employee Management System</title>
<title>Royal Estate - Free Bootstrap 4 Template by TIM</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet"
href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"
integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO"
crossorigin="anonymous">
<link href="https://fonts.googleapis.com/css?family=Poppins:300,400,500,600,700" rel="stylesheet">
<link rel="stylesheet" href="css/open-iconic-bootstrap.min.css">
<link rel="stylesheet" href="css/animate.css">
<link rel="stylesheet" href="css/owl.carousel.min.css">
<link rel="stylesheet" href="css/owl.theme.default.min.css">
<link rel="stylesheet" href="css/magnific-popup.css">
<link rel="stylesheet" href="css/aos.css">
<link rel="stylesheet" href="css/ionicons.min.css">
<link rel="stylesheet" href="css/bootstrap-datepicker.css">
<link rel="stylesheet" href="css/jquery.timepicker.css">
<link rel="stylesheet" href="css/flaticon.css">
<link rel="stylesheet" href="css/icomoon.css">
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div class="top">
<div class="container">
<div class="row d-flex align-items-center">
<div class="col">
<p class="social d-flex">
<a href="#"><span class="icon-facebook"></span></a>
<a href="#"><span class="icon-twitter"></span></a>
<a href="#"><span class="icon-google"></span></a>
<a href="#"><span class="icon-pinterest"></span></a>
</p>
</div>
<div class="col d-flex justify-content-end">
<div th:text="${#authentication.name}">
The value of the "name" property of the authentication object should appear here.
</div>
</div>
</div>
</div>
</div>
<nav class="navbar navbar-expand-lg navbar-dark ftco_navbar bg-dark ftco-navbar-light" id="ftco-navbar">
<div class="container">
<a class="navbar-brand" href="/">AWESOME<span>lands</span></a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#ftco-nav" aria-controls="ftco-nav" aria-expanded="false" aria-label="Toggle navigation">
<span class="oi oi-menu"></span> Menu
</button>
<div class="collapse navbar-collapse" id="ftco-nav">
<ul class="navbar-nav ml-auto">
<li class="nav-item active"><a href="/" class="nav-link">Pocetna strana</a></li>
<li class="nav-item"><a href="oglasi" class="nav-link">Oglasi</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">Agenti</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">O nama</a></li>
<li sec:authorize="!hasAuthority('ADMIN')" class="nav-item"><a href="maintance" class="nav-link">Kontakt</a></li>
<li sec:authorize="hasAuthority('ADMIN')" class="nav-item"><a href="adminKorisnik" class="nav-link">Ukloni Korisnike</a></li>
<li sec:authorize="hasAuthority('ADMIN')" class="nav-item"><a href="adminOglas" class="nav-link"> Ukloni Oglase</a></li>
<li sec:authorize="isAnonymous()" class="nav-item cta"><a href="login" class="nav-link ml-lg-2"><span class="icon-user"></span> Prijava</a></li>
<li sec:authorize="isAnonymous()" class="nav-item cta cta-colored"><a href="registration" class="nav-link" ><span class="icon-pencil"></span> Registracija</a></li>
<li sec:authorize="isAuthenticated()" class="nav-item cta"><a href="dodaj" class="nav-link ml-lg-2"><span class="icon-user"></span> Dodaj Oglas</a></li>
<li sec:authorize="isAuthenticated()" class="nav-item cta"><a href="/logout" class="nav-link ml-lg-2"><span class="icon-user"></span> Log Out</a></li>
<!--sec:authorize="isAuthenticated()-->
</ul>
</div>
</div>
</nav>
<div class="container my-2">
<h1>Svi oglasi</h1>
......@@ -47,4 +122,47 @@
</table>
</div>
</body>
<div style="height: 500px"></div>
<footer class="ftco-footer ftco-bg-dark ftco-section">
<div class="container">
<div class="row">
<div class="col-md-12 text-center">
<p><!-- Link back to Colorlib can't be removed. Template is licensed under CC BY 3.0. -->
Copyright &copy;<script>document.write(new Date().getFullYear());</script> Sva prava zadržana | </i> by <a target="_blank">TIM 10</a>
<!-- Link back to Colorlib can't be removed. Template is licensed under CC BY 3.0. --></p>
</div>
</div>
</div>
</footer>
<!-- loader -->
<div id="ftco-loader" class="show fullscreen"><svg class="circular" width="48px" height="48px"><circle class="path-bg" cx="24" cy="24" r="22" fill="none" stroke-width="4" stroke="#eeeeee"/><circle class="path" cx="24" cy="24" r="22" fill="none" stroke-width="4" stroke-miterlimit="10" stroke="#F96D00"/></svg></div>
<script src="js/jquery.min.js"></script>
<script src="js/jquery-migrate-3.0.1.min.js"></script>
<script src="js/popper.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/jquery.easing.1.3.js"></script>
<script src="js/jquery.waypoints.min.js"></script>
<script src="js/jquery.stellar.min.js"></script>
<script src="js/owl.carousel.min.js"></script>
<script src="js/jquery.magnific-popup.min.js"></script>
<script src="js/aos.js"></script>
<script src="js/jquery.animateNumber.min.js"></script>
<script src="js/bootstrap-datepicker.js"></script>
<script src="js/jquery.timepicker.min.js"></script>
<script src="js/scrollax.min.js"></script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBVWaKrjvy3MaE7SQ74_uJiULgl1JY0H2s&sensor=false"></script>
<script src="js/google-map.js"></script>
<script src="js/main.js"></script>
</body>
</html>
\ No newline at end of file
......@@ -226,9 +226,10 @@
"</div>" +
"<p>" + oglasi[i].opis + "</p>" +
"<hr>" +
"<p class=\"bottom-area d-flex\">" +
"<span><i class=\"flaticon-selection\"></i>" + oglasi[i].kvadratura + "</span>" +
"<button style='margin-left: 22% ' class=\"btn btn-info\" > zakazi</button>"+
"<span class=\"ml-auto\"><i class=\"flaticon-bathtub\"></i> 3</span>" +
......
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