import React, { Component } from 'react';
import { Link } from 'react-router-dom'
import { Formik ,ErrorMessage, Field } from 'formik';
import * as yup from 'yup'
import FormInput from '../Common/FormInput'
import dataService from '../dataService';
export default class Login extends Component {
constructor(props){
super(props);
[Link]={
user:{
}
}
}
render(){
return ( <div className="container col-md-12">
<div className="col-md-6 offset-md-3">
{[Link] && <div className="alert alert-success">Uspješno
logiran</div>}
{[Link] && <div className="alert alert-danger">Došlo je do
greške</div>}
<br/>
<h2>Logiraj se</h2>
<hr/>
<br/>
<Formik
enableReinitialize={true}
initialValues={[Link]}
onSubmit={(values, actions) => {
[Link]({
isSaving:true,
saved:false,
error:false
})
[Link](values).then(response=>{
debugger
if(response && ([Link]==201 || [Link]==200)){
[Link]({
saved:true,
isSaving:false,
})
[Link]="[Link]
}
else{
[Link]({
error:true,
isSaving:false
})
}
})
}}
validationSchema={
[Link]().shape({
email: [Link]().email("Nije valjana email
adresa").required("Email je obavezno polje"),
password: [Link]().required("Lozinka je obavezno polje")
})
}
render={props => (
<form onSubmit={[Link]} className="needs-validation">
<Field name="email" render={({field,form}) => (
<FormInput label="Email:" name={"email"} field={field}
form={form} />
)}
/>
<Field type="password" name="password" render={({field,form}) =>
(
<FormInput type="password" label="Lozinka:"
name={"password"} field={field} form={form} />
)}
/>
<button type="submit" disabled={[Link]} className="btn
btn-primary btn-large" >Logiraj se</button>
</form>
)}
/>
<hr/>
<Link to="/register">Registriraj se</Link>
</div>
</div>)
}
}
import React, { Component } from 'react';
import ProductItem from './ProductItem'
import { Link } from 'react-router-dom'
import dataService from '../dataService';
export default class ProductList extends Component {
constructor(props) {
super(props);
[Link] = {
products: [],
isLoading: true
};
componentDidMount() {
[Link]({isLoading: true});
[Link]()
.then(data =>{
[Link]({products: data, isLoading: false})
}
);
}
render(){
return (<div class="col-md-12">
<br/>
<h2>Proizvodi</h2>
<hr/>
<Link to="/products/-1/addEdit" className="btn btn-primary">Dodaj
novi proizvod</Link>
<hr/>
<div className="row">
{[Link]((product)=>{
return (
<div className="col-md-3">
<ProductItem product={product} />
</div>
)
})
}
</div>
</div>
)
}
}
import React, { Component } from 'react';
import { Link } from 'react-router-dom'
import dataService from '../dataService';
export default class ProductDetails extends Component {
constructor(props){
super(props);
[Link]={
product:{}
}
[Link]=[Link](this);
}
deleteProduct(){
[Link]([Link]).then((response)=>{
if([Link]==200){
[Link]="/products/";
}else{
alert("Došlo je do greške")
}
})
}
componentDidMount() {
[Link]({isLoading: true});
[Link]([Link])
.then(data =>{
[Link]({product: data, isLoading: false})
}
);
}
render(){
const {product}=[Link];
return (
<div className="col-md-12">
<br/>
<div className="row">
<div className="col-md-4">
<img className="card-img-top"
src="[Link] alt="Card image cap" />
</div>
<div className="col-md-6">
<h2>{[Link]}</h2>
<h4>{[Link]} kn</h4>
<h6><span className="badge badge-
success">{[Link] && [Link]}</span></h6>
<p>{[Link]}</p>
<hr/>
<div class="btn-group">
<Link role="button" className="btn btn-warning"
to={"/products/"+[Link]+"/addEdit"}>Uredi</Link>
<button className="btn btn-danger"
onClick={[Link]}>Izbriši</button>
</div>
</div>
</div>
</div>
)
}
}
import React, { Component } from 'react';
import CategoryItem from './CategoryItem'
import { Link } from 'react-router-dom'
import dataService from '../dataService';
export default class CategoriesList extends Component {
constructor(props) {
super(props);
[Link] = {
categories: [],
isLoading: true
};
[Link]=[Link](this);
}
onCategoryDelete(deletedId){
[Link]({
categories:[Link](x=>[Link]!=deletedId)
})
}
componentDidMount() {
[Link]({isLoading: true});
[Link]()
.then(data =>{
[Link]({categories: data, isLoading: false})
}
);
}
render(){
return (<div class="col-md-12">
<br/>
<h2>Kategorije</h2>
<hr/>
<Link to="/categories/-1/addEdit" className="btn btn-primary">Dodaj
novu kategoriju</Link>
<hr/>
{[Link]((category)=>{
return (
<div class="list-group">
<CategoryItem category={category}
onCategoryDelete={[Link]} />
</div>
)
})
}
</div>
)
}
}