source: frontend/src/Components/Resources/ResourcesTab.js@ 07f4e8b

Last change on this file since 07f4e8b was 07f4e8b, checked in by darsov2 <62809499+darsov2@…>, 5 months ago

prefinal fixes

  • Property mode set to 100644
File size: 5.2 KB
Line 
1import React, {useTransition} from "react";
2import {Container, Col, Row, Image, Nav, Tab} from "react-bootstrap";
3import {useState} from "react";
4import {FaTaxi, FaHotel} from "react-icons/fa";
5import {MdRestaurant} from "react-icons/md";
6import AddNew from "./AddNew";
7import ResourceListing from "./ResourceListing";
8import {Link} from "react-router-dom";
9import useGet from "../Hooks/useGet";
10
11function ResourcesTab(props) {
12 const [activeTab, setActiveTab] = useState(props.tab);
13 const userId = JSON.parse(localStorage.getItem("user")).userId;
14 const {data, setData, isLoading, getData, setChanged} = useGet(`${props.tab}/user/${userId}`);
15
16 const handleSelect = (eventKey) => {
17 setActiveTab(eventKey);
18 props.refresh(eventKey);
19 };
20
21 return (
22 <Container className="rounded-5">
23 <Tab.Container
24 activeKey={activeTab}
25 onSelect={handleSelect}
26 className="bg-dark rounded-5"
27 >
28 <Nav
29 fill
30 variant="tabs"
31 className="bg-body rounded-top-5"
32 activeKey="/hotel"
33 id="tab_item"
34 >
35 <Nav.Item className="tab_item rounded-5">
36 <Nav.Link href="/resources/hotel" className="text-left rounded-5">
37 <span className="ikona">
38 <FaHotel
39 color="#159895"
40 style={{lineHeight: "100em"}}
41 size={"1.5em"}
42 className="mx-3"
43 />
44 </span>
45 <span className="ikona">Сместувања</span>
46 </Nav.Link>
47 </Nav.Item>
48 <Nav.Item className="tab_item">
49 <Nav.Link href="/resources/restaurant">
50 <span className="ikona">
51 <MdRestaurant color="#159895" size={"1.5em"} className="mx-3"/>
52 </span>
53 <span className="ikona">Ресторани</span>
54 </Nav.Link>
55 </Nav.Item>
56 <Nav.Item className="tab_item rounded-5">
57 <Nav.Link
58 href="/resources/transport"
59 className="text-left rounded-5"
60 >
61 <span className="ikona">
62 <FaTaxi color="#159895" size={"1.5em"} className="mx-3"/>
63 </span>
64 <span className="ikona">Превоз</span>
65 </Nav.Link>
66 </Nav.Item>
67 </Nav>
68
69 <Tab.Content className="py-5 px-3 border rounded-bottom-5 bg-light">
70 <Tab.Pane eventKey="/hotel" key="hotelPane">
71 {props.tab == "/hotel" && !isLoading && data != null &&
72 data.map((hotel) => {
73 return (
74 //<Link style={{textDecoration: "none"}} key={hotel.hotelId} to={"/resources/hotel/" + hotel.hotelId}>
75 <ResourceListing
76 on
77 key={hotel.hotelId}
78 id={hotel.hotelId}
79 type="hotel"
80 data={hotel}
81 />
82 //</Link>
83 );
84 })}
85 <AddNew type="hotel" refresh={setChanged}/>
86 </Tab.Pane>
87 <Tab.Pane eventKey="/restaurant" key="restaurantPane">
88 {props.tab == "/restaurant" && !isLoading && data != null &&
89 data.map((restaurant) => {
90 return (
91 <ResourceListing
92 key={restaurant.restaurantID}
93 type="restaurant"
94 data={restaurant}
95 />);
96 })}
97 <AddNew type="restaurant" refresh={setChanged}/>
98 </Tab.Pane>
99 <Tab.Pane eventKey="/transport" key="transportPane">
100 {props.tab == "/transport" && !isLoading && data.length > 0 &&
101 data.map((transport) => {
102 return (
103 <ResourceListing
104 key={transport.transportId}
105 id={transport.transportId}
106 type="transport"
107 data={transport}
108 />
109 );
110 })}
111 <AddNew type="transport" refresh={setChanged}/>
112 </Tab.Pane>
113 </Tab.Content>
114 </Tab.Container>
115 </Container>
116 );
117}
118
119export default ResourcesTab;
Note: See TracBrowser for help on using the repository browser.