156
app/routes/Apps/AccountEdit/AccountEdit.js
Executable file
156
app/routes/Apps/AccountEdit/AccountEdit.js
Executable file
@@ -0,0 +1,156 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Input,
|
||||
Card,
|
||||
Button,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
CardTitle,
|
||||
Label,
|
||||
FormGroup,
|
||||
Form
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProfileLeftNav } from "../../components/Profile/ProfileLeftNav";
|
||||
import { ProfileHeader } from "../../components/Profile/ProfileHeader";
|
||||
|
||||
const AccountEdit = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Account Edit"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProfileHeader />
|
||||
</Col>
|
||||
<Col lg={ 3 }>
|
||||
<ProfileLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
<div className="d-flex mb-4">
|
||||
<CardTitle tag="h6">
|
||||
Account Edit
|
||||
</CardTitle>
|
||||
<span className="ml-auto align-self-start small">
|
||||
Fields mark as <span className="text-danger">*</span> is required.
|
||||
</span>
|
||||
</div>
|
||||
<Form>
|
||||
{ /* START Input */}
|
||||
<FormGroup row>
|
||||
<Label for="oldPassword" sm={3} className="text-right">
|
||||
<span className="text-danger">*</span> Old Password
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="password"
|
||||
name="password"
|
||||
id="oldPassword"
|
||||
defaultValue="********"
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup row>
|
||||
<Label for="newPassword" sm={3} className="text-right">
|
||||
<span className="text-danger">*</span> New Password
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="password"
|
||||
name="password"
|
||||
id="newPassword"
|
||||
defaultValue="********"
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup row className="mb-0">
|
||||
<Label for="confirmNewPassword" sm={3} className="text-right">
|
||||
<span className="text-danger">*</span> Confirm New Password
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="password"
|
||||
name="password"
|
||||
id="confirmNewPassword"
|
||||
defaultValue="********"
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup row>
|
||||
<Label sm={3} >
|
||||
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Button color="primary">
|
||||
Update Profile
|
||||
</Button>
|
||||
<Button color="link">
|
||||
Forgot Password
|
||||
</Button>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
</Form>
|
||||
{ /* END Form */}
|
||||
</CardBody>
|
||||
<CardFooter className="small">
|
||||
<i className="fa fa-fw fa-support text-muted mr-2"></i>
|
||||
If you have trouble with the configuration, you can contact us. <a href="#">We Can Help</a>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
<CardTitle tag="h6">
|
||||
Change Username
|
||||
</CardTitle>
|
||||
<p>
|
||||
Changing the username is not recommended. In this connection,
|
||||
I can appear <a href="#">many problems</a>.
|
||||
</p>
|
||||
<Button color="secondary" outline>
|
||||
Change Username
|
||||
</Button>
|
||||
</CardBody>
|
||||
</Card>
|
||||
<Card className="mb-3 b-danger">
|
||||
<CardBody>
|
||||
<CardTitle tag="h6" className="text-danger">
|
||||
Delete Account
|
||||
</CardTitle>
|
||||
<p>
|
||||
Once you delete your account, there is no going back. Please be certain.
|
||||
</p>
|
||||
<Button color="danger" outline>
|
||||
Yes, Delete
|
||||
</Button>
|
||||
</CardBody>
|
||||
<CardFooter className="small">
|
||||
<i className="fa fa-fw fa-support text-muted mr-2"></i>
|
||||
Are you sure you don’t want to just downgrade your account to a <strong>Free Account</strong>? We won’t charge your PayPal account anymore.
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default AccountEdit;
|
3
app/routes/Apps/AccountEdit/index.js
Executable file
3
app/routes/Apps/AccountEdit/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import AccountEdit from './AccountEdit';
|
||||
|
||||
export default AccountEdit;
|
157
app/routes/Apps/BillingEdit/BillingEdit.js
Executable file
157
app/routes/Apps/BillingEdit/BillingEdit.js
Executable file
@@ -0,0 +1,157 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Table,
|
||||
Card,
|
||||
Button,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
CardTitle,
|
||||
Progress
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProfileLeftNav } from "./../../components/Profile/ProfileLeftNav";
|
||||
import { ProfileHeader } from "./../../components/Profile/ProfileHeader";
|
||||
import { TrTableBorderless } from "./../../Tables/Tables/components/TrTableBorderless";
|
||||
|
||||
const BillingEdit = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Billing Edit"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProfileHeader />
|
||||
</Col>
|
||||
<Col lg={ 3 }>
|
||||
<ProfileLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
<div className="d-flex mb-4">
|
||||
<CardTitle tag="h6">
|
||||
Billing Edit
|
||||
</CardTitle>
|
||||
<span className="ml-auto align-self-start small">
|
||||
Fields mark as <span className="text-danger">*</span> is required.
|
||||
</span>
|
||||
</div>
|
||||
<Row className="mb-4">
|
||||
<Col sm={3} className="text-right">
|
||||
Your Plan
|
||||
</Col>
|
||||
<Col sm={9}>
|
||||
<div className="mb-2">
|
||||
<span className="text-inverse">
|
||||
Premium
|
||||
</span> - You use <strong>37%</strong> of the available space.
|
||||
</div>
|
||||
<Progress multi style={{height: "5px"}} className="mb-3">
|
||||
<Progress bar value="15" />
|
||||
<Progress bar color="purple" value="30" />
|
||||
<Progress bar color="yellow" value="25" />
|
||||
</Progress>
|
||||
<dl className="row">
|
||||
<dt className="col-sm-4 text-right">Amount Space</dt>
|
||||
<dd className="col-sm-8 text-inverse">214,8 GB / 1,03 TB</dd>
|
||||
<dt className="col-sm-4 text-right">Regular Files</dt>
|
||||
<dd className="col-sm-8">
|
||||
<i className="fa fa-circle text-primary mr-2"></i>
|
||||
<span className="text-inverse">177,8 GB</span>
|
||||
</dd>
|
||||
<dt className="col-sm-4 text-right">Shared Files</dt>
|
||||
<dd className="col-sm-8">
|
||||
<i className="fa fa-circle text-purple mr-2"></i>
|
||||
<span className="text-inverse">37 GB</span>
|
||||
</dd>
|
||||
<dt className="col-sm-4 text-right">Available Files</dt>
|
||||
<dd className="col-sm-8">
|
||||
<i className="fa fa-circle text-yellow mr-2"></i>
|
||||
<span className="text-inverse">177,8 GB</span>
|
||||
</dd>
|
||||
<dt className="col-sm-4 text-right">Action</dt>
|
||||
<dd className="col-sm-8">
|
||||
<Button color="secondary" outline size="sm">
|
||||
Change Plan
|
||||
</Button>
|
||||
</dd>
|
||||
</dl>
|
||||
</Col>
|
||||
</Row>
|
||||
<div className="mb-4">
|
||||
<span className="small">Payment</span>
|
||||
</div>
|
||||
<Row>
|
||||
<Col sm={3} className="text-right">
|
||||
Payment Method
|
||||
</Col>
|
||||
<Col sm={9}>
|
||||
<div className="mb-2">
|
||||
<i className="fa fa-fw fa-paypal text-primary mr-2"></i>
|
||||
<span className="text-inverse">
|
||||
PayPal
|
||||
</span> - Account: <samp>Tyshawn_Lakin56@gmail.com</samp>
|
||||
</div>
|
||||
<dl className="row">
|
||||
<dt className="col-sm-4 text-right">Next Payment Due</dt>
|
||||
<dd className="col-sm-8 text-inverse">2016-05-21</dd>
|
||||
<dt className="col-sm-4 text-right">Amount</dt>
|
||||
<dd className="col-sm-8 text-inverse">$ 13.00</dd>
|
||||
<dt className="col-sm-4 text-right">Action</dt>
|
||||
<dd className="col-sm-8">
|
||||
<Button color="secondary" outline size="sm">
|
||||
Change Payment
|
||||
</Button>
|
||||
</dd>
|
||||
</dl>
|
||||
</Col>
|
||||
</Row>
|
||||
</CardBody>
|
||||
<CardFooter className="small">
|
||||
<i className="fa fa-fw fa-support text-muted mr-2"></i>
|
||||
If you want to personalize the notification settings, go <a href="#">here</a>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
<CardTitle tag="h6" className="mb-0">
|
||||
Billing History
|
||||
</CardTitle>
|
||||
</CardBody>
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" hover responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="bt-0">#</th>
|
||||
<th className="bt-0">ID</th>
|
||||
<th className="bt-0">Date</th>
|
||||
<th className="bt-0">Amount</th>
|
||||
<th className="bt-0">Description</th>
|
||||
<th className="bt-0">Payment Method</th>
|
||||
<th className="text-right bt-0">
|
||||
Receipt
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableBorderless />
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default BillingEdit;
|
3
app/routes/Apps/BillingEdit/index.js
Executable file
3
app/routes/Apps/BillingEdit/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import BillingEdit from './BillingEdit';
|
||||
|
||||
export default BillingEdit;
|
60
app/routes/Apps/Chat/Chat.js
Executable file
60
app/routes/Apps/Chat/Chat.js
Executable file
@@ -0,0 +1,60 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
CardBody,
|
||||
Col,
|
||||
CardHeader,
|
||||
Card,
|
||||
CardFooter
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ChatLeft } from "../../components/Chat/ChatLeft";
|
||||
import { ChatRight } from "../../components/Chat/ChatRight";
|
||||
import { ChatLeftNav } from "../../components/Chat/ChatLeftNav";
|
||||
import { ChatCardFooter } from "../../components/Chat/ChatCardFooter";
|
||||
import { ChatCardHeader } from "../../components/Chat/ChatCardHeader";
|
||||
|
||||
const Clients = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Chat"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<ChatLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardHeader className="d-flex bb-0 bg-white">
|
||||
<ChatCardHeader />
|
||||
</CardHeader>
|
||||
<CardBody>
|
||||
<ChatLeft cardClassName="bg-gray-300 b-0 text-dark" />
|
||||
<ChatRight cardClassName="text-dark"/>
|
||||
<ChatLeft cardClassName="bg-gray-300 b-0 text-dark" />
|
||||
<ChatRight cardClassName="text-dark"/>
|
||||
<div className="small mb-3 mt-4 text-center">
|
||||
Yesterday
|
||||
</div>
|
||||
<ChatLeft cardClassName="bg-gray-300 b-0 text-dark" />
|
||||
<ChatRight cardClassName="text-dark"/>
|
||||
<ChatLeft cardClassName="bg-gray-300 b-0 text-dark" />
|
||||
</CardBody>
|
||||
<CardFooter>
|
||||
<ChatCardFooter />
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default Clients;
|
3
app/routes/Apps/Chat/index.js
Executable file
3
app/routes/Apps/Chat/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Chat from './Chat';
|
||||
|
||||
export default Chat;
|
295
app/routes/Apps/Clients/Clients.js
Executable file
295
app/routes/Apps/Clients/Clients.js
Executable file
@@ -0,0 +1,295 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Card,
|
||||
ButtonToolbar,
|
||||
Button,
|
||||
ButtonGroup,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
Table,
|
||||
TabPane,
|
||||
Badge,
|
||||
Nav,
|
||||
NavItem,
|
||||
Pagination,
|
||||
PaginationLink,
|
||||
PaginationItem,
|
||||
UncontrolledTooltip,
|
||||
UncontrolledTabs
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { Profile } from "../../components/Profile";
|
||||
import { DlRowContacts } from "../../components/Profile/DlRowContacts";
|
||||
import { DlRowAddress } from "../../components/Profile/DlRowAddress";
|
||||
import { TrTableClients } from "./components/TrTableClients";
|
||||
import { TrTableCompanies } from "./components/TrTableCompanies";
|
||||
|
||||
const Clients = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Clients"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 8 }>
|
||||
<Card className="mb-3">
|
||||
<UncontrolledTabs initialActiveTabId="clients">
|
||||
<CardBody>
|
||||
<div className="d-flex">
|
||||
<Nav pills>
|
||||
<NavItem>
|
||||
<UncontrolledTabs.NavLink tabId="clients">
|
||||
Clients
|
||||
</UncontrolledTabs.NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<UncontrolledTabs.NavLink tabId="companies">
|
||||
Companies
|
||||
</UncontrolledTabs.NavLink>
|
||||
</NavItem>
|
||||
</Nav>
|
||||
<ButtonToolbar className="ml-auto">
|
||||
<ButtonGroup>
|
||||
<Button color="link" className="align-self-center mr-2 text-decoration-none" id="tooltipSettings">
|
||||
<i className="fa fa-fw fa-gear"></i>
|
||||
</Button>
|
||||
</ButtonGroup>
|
||||
<ButtonGroup>
|
||||
<Button color="primary" className="align-self-center" id="tooltipAddNew">
|
||||
<i className="fa fa-fw fa-plus"></i>
|
||||
</Button>
|
||||
</ButtonGroup>
|
||||
</ButtonToolbar>
|
||||
<UncontrolledTooltip placement="right" target="tooltipAddNew">
|
||||
Add New
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="right" target="tooltipSettings">
|
||||
Settings
|
||||
</UncontrolledTooltip>
|
||||
</div>
|
||||
</CardBody>
|
||||
|
||||
<UncontrolledTabs.TabContent>
|
||||
<TabPane tabId="clients">
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" hover responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="bt-0"></th>
|
||||
<th className="bt-0"></th>
|
||||
<th className="bt-0">Name</th>
|
||||
<th className="bt-0">Email</th>
|
||||
<th className="text-right bt-0">Phone</th>
|
||||
<th className="text-right bt-0">Label</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableClients />
|
||||
<TrTableClients
|
||||
id="2"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="3"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="4"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="5"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="6"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="7"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="8"
|
||||
/>
|
||||
<TrTableClients
|
||||
id="9"
|
||||
/>
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
</TabPane>
|
||||
<TabPane tabId="companies">
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" hover responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="bt-0"></th>
|
||||
<th className="bt-0"></th>
|
||||
<th className="bt-0">Name</th>
|
||||
<th className="bt-0">PM</th>
|
||||
<th className="text-right bt-0">Phone</th>
|
||||
<th className="text-right bt-0">Label</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableCompanies />
|
||||
<TrTableCompanies
|
||||
id="2"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="3"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="4"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="5"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="6"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="7"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="8"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="9"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="10"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="11"
|
||||
/>
|
||||
<TrTableCompanies
|
||||
id="12"
|
||||
/>
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
</TabPane>
|
||||
</UncontrolledTabs.TabContent>
|
||||
</UncontrolledTabs>
|
||||
|
||||
<CardFooter className="d-flex">
|
||||
<span className="align-self-center">
|
||||
Showing 1 to 10 of 57 entries
|
||||
</span>
|
||||
<Pagination aria-label="Page navigation example" className="ml-auto">
|
||||
<PaginationItem>
|
||||
<PaginationLink previous href="#">
|
||||
<i className="fa fa-fw fa-angle-left"></i>
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem active>
|
||||
<PaginationLink href="#">
|
||||
1
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink href="#">
|
||||
2
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink href="#">
|
||||
3
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink next href="#">
|
||||
<i className="fa fa-fw fa-angle-right"></i>
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
</Pagination>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
<Col lg={ 4 }>
|
||||
<Card>
|
||||
<CardBody>
|
||||
<Profile />
|
||||
<div className="text-center pb-1">
|
||||
<ul className="list-inline">
|
||||
<li className="list-inline-item text-center">
|
||||
<h2 className="mb-1">23</h2>
|
||||
<span>Contracts</span>
|
||||
</li>
|
||||
<li className="list-inline-item text-center">
|
||||
<h2 className="mb-1">13</h2>
|
||||
<span>Tasks</span>
|
||||
</li>
|
||||
<li className="list-inline-item text-center">
|
||||
<h2 className="mb-1">5</h2>
|
||||
<span>Relases</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<Row className="mt-3">
|
||||
<Col sm={ 6 }>
|
||||
<Button color="primary" block>
|
||||
Message
|
||||
</Button>
|
||||
</Col>
|
||||
<Col sm={ 6 }>
|
||||
<Button color="secondary" outline block>
|
||||
Edit
|
||||
</Button>
|
||||
</Col>
|
||||
</Row>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">
|
||||
Profile
|
||||
</span>
|
||||
</div>
|
||||
<p className="text-left">
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
|
||||
Dicta sapiente earum, necessitatibus commodi eius pariatur
|
||||
repudiandae cum sunt officiis ex!
|
||||
</p>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">
|
||||
Labels
|
||||
</span>
|
||||
</div>
|
||||
<div className="text-left mb-4">
|
||||
<Badge pill color="primary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color="secondary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color="primary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</div>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">Contact</span>
|
||||
</div>
|
||||
<DlRowContacts
|
||||
leftSideClassName="text-left"
|
||||
rightSideClassName="text-right text-inverse"
|
||||
/>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">Address</span>
|
||||
</div>
|
||||
<DlRowAddress
|
||||
leftSideClassName="text-left"
|
||||
rightSideClassName="text-right text-inverse"
|
||||
/>
|
||||
</CardBody>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default Clients;
|
94
app/routes/Apps/Clients/components/TrTableClients.js
Executable file
94
app/routes/Apps/Clients/components/TrTableClients.js
Executable file
@@ -0,0 +1,94 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
Avatar,
|
||||
CustomInput,
|
||||
UncontrolledTooltip,
|
||||
AvatarAddOn,
|
||||
Media
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray } from './../../../../utilities';
|
||||
|
||||
const status = [
|
||||
"secondary",
|
||||
"success",
|
||||
"warning",
|
||||
"danger"
|
||||
];
|
||||
|
||||
const tag = [
|
||||
"secondary",
|
||||
"primary",
|
||||
"info"
|
||||
];
|
||||
|
||||
const TrTableClients = (props) => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<CustomInput type="checkbox" id={`trTableClients-${ props.id }` } label="" inline />
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<a href="#" id={`trTableClientsTooltip-${ props.id }` }>
|
||||
<i className="fa fa-fw fa-star-o"></i>
|
||||
</a>
|
||||
<UncontrolledTooltip placement="top" target={`trTableClientsTooltip-${ props.id }` }>
|
||||
Add To Favorites
|
||||
</UncontrolledTooltip>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Media>
|
||||
<Media left className="align-self-center mr-3">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src="http://bs4.webkom.co/img/avatars/2.jpg"
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(status) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<a className="mt-0 d-flex text-decoration-none" href="#">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</a>
|
||||
<span>
|
||||
{ faker.name.jobTitle() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ faker.internet.email() }
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ faker.phone.phoneNumberFormat() }
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
<Badge pill color={ randomArray(tag) }>
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
TrTableClients.propTypes = {
|
||||
id: PropTypes.node
|
||||
};
|
||||
TrTableClients.defaultProps = {
|
||||
id: "1"
|
||||
};
|
||||
|
||||
export { TrTableClients };
|
287
app/routes/Apps/Clients/components/TrTableCompanies.js
Executable file
287
app/routes/Apps/Clients/components/TrTableCompanies.js
Executable file
@@ -0,0 +1,287 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Avatar,
|
||||
CustomInput,
|
||||
UncontrolledTooltip,
|
||||
AvatarAddOn,
|
||||
Media
|
||||
} from './../../../../components';
|
||||
import { randomArray } from './../../../../utilities';
|
||||
|
||||
const status = [
|
||||
"success",
|
||||
"danger",
|
||||
"warning",
|
||||
"secondary"
|
||||
];
|
||||
|
||||
const brand = [
|
||||
<Media key="facebook">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-facebook"></i>
|
||||
<i className="fa fa-facebook fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Facebook
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="twitter">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-twitter"></i>
|
||||
<i className="fa fa-twitter fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Twitter
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="linkedin">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-linkedin"></i>
|
||||
<i className="fa fa-linkedin fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Linkedin
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="foursquare">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-foursquare"></i>
|
||||
<i className="fa fa-foursquare fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Foursquare
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="lastfm">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-lastfm"></i>
|
||||
<i className="fa fa-lastfm fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
LastFM
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="paypal">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-paypal"></i>
|
||||
<i className="fa fa-paypal fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
PayPal
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="amazon">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-amazon"></i>
|
||||
<i className="fa fa-amazon fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Amazon
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="skype">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-skype"></i>
|
||||
<i className="fa fa-skype fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Skype
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="spotify">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-spotify"></i>
|
||||
<i className="fa fa-spotify fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Spotify
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="pinterest">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-pinterest"></i>
|
||||
<i className="fa fa-pinterest fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Pinterest
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="windows">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-windows"></i>
|
||||
<i className="fa fa-windows fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Windows
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="android">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-android"></i>
|
||||
<i className="fa fa-android fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Android
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
<Media key="medium">
|
||||
<Media left className="align-self-center mr-3">
|
||||
<span className="fa-stack fa-lg">
|
||||
<i className="fa fa-stop fa-stack-2x text-medium"></i>
|
||||
<i className="fa fa-medium fa-stack-1x fa-inverse"></i>
|
||||
</span>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse mt-0 d-flex">
|
||||
Medium
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.country() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>,
|
||||
];
|
||||
|
||||
const TrTableCompanies = (props) => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<CustomInput type="checkbox" id={`trTableCompanies-${ props.id }` } label="" inline />
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<a href="#" id={`trTableCompaniesTooltip-${ props.id }` }>
|
||||
<i className="fa fa-fw fa-star-o"></i>
|
||||
</a>
|
||||
<UncontrolledTooltip placement="top" target={`trTableCompaniesTooltip-${ props.id }` }>
|
||||
Add To Favorites
|
||||
</UncontrolledTooltip>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ randomArray(brand) }
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Avatar.Image
|
||||
size="sm"
|
||||
src="http://bs4.webkom.co/img/avatars/2.jpg"
|
||||
className="mr-2"
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(status) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
{ faker.phone.phoneNumberFormat() }<br />
|
||||
{ faker.internet.email() }
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
{ faker.address.streetAddress() }<br />
|
||||
{ faker.address.city() }
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
TrTableCompanies.propTypes = {
|
||||
id: PropTypes.node
|
||||
};
|
||||
TrTableCompanies.defaultProps = {
|
||||
id: "1"
|
||||
};
|
||||
|
||||
export { TrTableCompanies };
|
3
app/routes/Apps/Clients/index.js
Executable file
3
app/routes/Apps/Clients/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Clients from './Clients';
|
||||
|
||||
export default Clients;
|
239
app/routes/Apps/EmailDetails/EmailDetails.js
Executable file
239
app/routes/Apps/EmailDetails/EmailDetails.js
Executable file
@@ -0,0 +1,239 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Card,
|
||||
Button,
|
||||
ButtonGroup,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
ButtonToolbar,
|
||||
Badge,
|
||||
Media,
|
||||
Avatar,
|
||||
AvatarAddOn,
|
||||
UncontrolledTooltip
|
||||
} from './../../../components';
|
||||
import { randomAvatar } from './../../../utilities';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { MailboxLeftNav } from "../../components/Mailbox/MailboxLeftNav";
|
||||
import { Attachment } from "../../components/Attachment";
|
||||
|
||||
const EmailDetails = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Email Details"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<MailboxLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
{ /* START Header */}
|
||||
<div className="d-lg-flex justify-content-end mb-4">
|
||||
<div className="mr-auto d-flex align-items-center mb-3 mb-xl-0">
|
||||
<Button color="link" tag={ Link } to="/apps/inbox" className="text-decoration-none">
|
||||
<i className="fa fa-angle-left mr-2"></i> Inbox
|
||||
</Button>
|
||||
</div>
|
||||
<ButtonToolbar>
|
||||
<ButtonGroup className="mr-2 mb-3 mb-sm-0">
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipPrev">
|
||||
<i className="fa fa-fw fa-angle-left"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipPrev">
|
||||
Prev Message
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipNext">
|
||||
<i className="fa fa-fw fa-angle-right"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipNext">
|
||||
Next Message
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
<ButtonGroup className="mr-2">
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipForward">
|
||||
<i className="fa fa-fw fa-mail-forward"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipForward">
|
||||
Forward
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipFav">
|
||||
<i className="fa fa-fw fa-star"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipFav">
|
||||
Add to Favorites
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipPrint">
|
||||
<i className="fa fa-fw fa-print"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipPrint">
|
||||
Print
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipDelete">
|
||||
<i className="fa fa-fw fa-trash"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipDelete">
|
||||
Delete
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
<ButtonGroup className="ml-auto ml-lg-0">
|
||||
<Button color="primary" className="align-self-center" tag={ Link } to="/apps/inbox" id="tooltipReply">
|
||||
<i className="fa fa-fw fa-reply"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipReply">
|
||||
Reply
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
</ButtonToolbar>
|
||||
</div>
|
||||
{ /* END Header */}
|
||||
{ /* START Message */}
|
||||
<div className="mb-4">
|
||||
<div className="d-flex flex-column flex-md-row">
|
||||
<Media>
|
||||
<Media left className="align-self-center mr-4">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="danger"
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<a className="mt-0 text-decoration-none d-flex" href="#">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</a>
|
||||
<samp className="small">
|
||||
{ faker.internet.email() }
|
||||
</samp>
|
||||
</Media>
|
||||
</Media>
|
||||
<div className="ml-md-auto align-self-start text-left text-md-right mt-2 mt-md-0">
|
||||
18-Jun-2012<br />
|
||||
08:43 PM
|
||||
</div>
|
||||
</div>
|
||||
<hr />
|
||||
<div className="d-flex mb-3">
|
||||
<h5>
|
||||
Secured Asynchronous Capacity
|
||||
</h5>
|
||||
<Badge pill color="primary" className="ml-auto align-self-start">
|
||||
Work
|
||||
</Badge>
|
||||
</div>
|
||||
<p className="lead">
|
||||
{ faker.lorem.sentences() }
|
||||
</p>
|
||||
<p>
|
||||
{ faker.lorem.paragraphs() }
|
||||
</p>
|
||||
</div>
|
||||
{ /* END Message */}
|
||||
{ /* START Attachments */}
|
||||
<div>
|
||||
<div className="mb-3">
|
||||
<span className="small mr-2">
|
||||
Attachments
|
||||
</span>
|
||||
<Badge pill color="secondary">3</Badge>
|
||||
</div>
|
||||
<Attachment
|
||||
BgIconClassName="text-primary"
|
||||
icon="file-word-o"
|
||||
mediaClassName="mb-3"
|
||||
/>
|
||||
<Attachment
|
||||
BgIconClassName="text-success"
|
||||
icon="file-excel-o"
|
||||
mediaClassName="mb-3"
|
||||
/>
|
||||
<Attachment
|
||||
BgIconClassName="text-warning"
|
||||
icon="file-powerpoint-o"
|
||||
/>
|
||||
</div>
|
||||
</CardBody>
|
||||
<CardFooter>
|
||||
<ButtonToolbar className="flex-column flex-lg-row">
|
||||
<ButtonGroup className="mb-2 mb-lg-0">
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipPrevBtm">
|
||||
<i className="fa fa-fw fa-angle-left"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipPrevBtm">
|
||||
Prev Message
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipNextBtm">
|
||||
<i className="fa fa-fw fa-angle-right"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipNextBtm">
|
||||
Next Message
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
<ButtonToolbar className="flex-column flex-sm-row ml-0 ml-lg-auto">
|
||||
<ButtonGroup className="mr-2 mb-2 mb-sm-0">
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipForwardBtm">
|
||||
<i className="fa fa-fw fa-mail-forward"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipForwardBtm">
|
||||
Forward
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipFavBtm">
|
||||
<i className="fa fa-fw fa-star"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipFavBtm">
|
||||
Add to Favorites
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipPrintBtm">
|
||||
<i className="fa fa-fw fa-print"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipPrintBtm">
|
||||
Print
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipDeleteBtm">
|
||||
<i className="fa fa-fw fa-trash"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipDeleteBtm">
|
||||
Delete
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
<ButtonGroup className="ml-0 ml-md-auto m-lg-0">
|
||||
<Button color="primary" className="align-self-center" tag={ Link } to="/apps/inbox" id="tooltipReplyBtm">
|
||||
<i className="fa fa-fw fa-reply"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="top" target="tooltipReplyBtm">
|
||||
Reply
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
</ButtonToolbar>
|
||||
</ButtonToolbar>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default EmailDetails;
|
3
app/routes/Apps/EmailDetails/index.js
Executable file
3
app/routes/Apps/EmailDetails/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import EmailDetails from './EmailDetails';
|
||||
|
||||
export default EmailDetails;
|
50
app/routes/Apps/Files/Files.js
Executable file
50
app/routes/Apps/Files/Files.js
Executable file
@@ -0,0 +1,50 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
|
||||
import FilesList from './FilesList';
|
||||
import FilesGrid from './FilesGrid';
|
||||
import { FilesLeftNav } from "../../components/Files/FilesLeftNav";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
|
||||
const Files = (props) => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Files"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<FilesLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle={props.match.params.type === "list"?"Files List":"Files Grid"}
|
||||
linkList="/apps/files/list"
|
||||
linkGrid="/apps/files/grid"
|
||||
/>
|
||||
|
||||
{
|
||||
props.match.params.type === "list" ?
|
||||
<FilesList /> :
|
||||
<FilesGrid />
|
||||
}
|
||||
</Col>
|
||||
</Row>
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
Files.propTypes = {
|
||||
match: PropTypes.object.isRequired
|
||||
};
|
||||
|
||||
|
||||
export default Files;
|
26
app/routes/Apps/Files/FilesGrid.js
Executable file
26
app/routes/Apps/Files/FilesGrid.js
Executable file
@@ -0,0 +1,26 @@
|
||||
import React from 'react';
|
||||
|
||||
import { CardColumns } from './../../../components';
|
||||
import { FilesCardGrid } from "../../components/Files/FilesCardGrid";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const FilesGrid = () => (
|
||||
<React.Fragment>
|
||||
<CardColumns>
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
<FilesCardGrid />
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default FilesGrid;
|
50
app/routes/Apps/Files/FilesList.js
Executable file
50
app/routes/Apps/Files/FilesList.js
Executable file
@@ -0,0 +1,50 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Card,
|
||||
CardFooter,
|
||||
Table
|
||||
} from './../../../components';
|
||||
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
import { TrTableFilesList } from "./components/TrTableFilesList";
|
||||
|
||||
const FilesList = () => (
|
||||
<Card className="mb-3">
|
||||
{ /* START Table */}
|
||||
<div className="table-responsive-xl">
|
||||
<Table className="mb-0" hover>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="align-middle bt-0">Directory</th>
|
||||
<th className="align-middle bt-0">Last Change</th>
|
||||
<th className="align-middle bt-0">Share</th>
|
||||
<th className="align-middle bt-0">Tags</th>
|
||||
<th className="align-middle bt-0 text-right">
|
||||
Actions
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
<TrTableFilesList />
|
||||
</tbody>
|
||||
</Table>
|
||||
</div>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex justify-content-center pb-0">
|
||||
<Paginations />
|
||||
</CardFooter>
|
||||
</Card>
|
||||
|
||||
);
|
||||
|
||||
export default FilesList;
|
113
app/routes/Apps/Files/components/TrTableFilesList.js
Executable file
113
app/routes/Apps/Files/components/TrTableFilesList.js
Executable file
@@ -0,0 +1,113 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
Avatar,
|
||||
UncontrolledButtonDropdown,
|
||||
DropdownToggle,
|
||||
DropdownMenu,
|
||||
AvatarAddOn,
|
||||
Media,
|
||||
DropdownItem
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray, randomAvatar } from './../../../../utilities';
|
||||
|
||||
const badges = [
|
||||
"secondary"
|
||||
];
|
||||
|
||||
const status = [
|
||||
"success",
|
||||
"danger",
|
||||
"warning",
|
||||
"secondary"
|
||||
];
|
||||
|
||||
const TrTableFilesList = () => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<Media>
|
||||
<Media left middle>
|
||||
<i className="fa fa-fw fa-folder-o fa-3x mr-2"></i>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="text-inverse">
|
||||
{ faker.commerce.department() }
|
||||
</div>
|
||||
<span>
|
||||
{ faker.finance.amount() } Mb
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ faker.date.weekday() }, 12 { faker.date.month() }, 2018<br />
|
||||
12:23 PM
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(status) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Badge color={ randomArray(badges) } pill className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge color={ randomArray(badges) } pill className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge color={ randomArray(badges) } pill className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
<UncontrolledButtonDropdown>
|
||||
<DropdownToggle color="link">
|
||||
<i className="fa fa-gear" /><i className="fa fa-angle-down ml-2" />
|
||||
</DropdownToggle>
|
||||
<DropdownMenu right>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-reply mr-2"></i>
|
||||
Share
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-download mr-2"></i>
|
||||
Download
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-trash mr-2"></i>
|
||||
Delete
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-pencil mr-2"></i>
|
||||
Edit
|
||||
</DropdownItem>
|
||||
<DropdownItem divider />
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-files-o mr-2"></i>
|
||||
Copy
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
export { TrTableFilesList };
|
3
app/routes/Apps/Files/index.js
Executable file
3
app/routes/Apps/Files/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Files from './Files';
|
||||
|
||||
export default Files;
|
64
app/routes/Apps/GalleryGrid/GalleryGrid.js
Executable file
64
app/routes/Apps/GalleryGrid/GalleryGrid.js
Executable file
@@ -0,0 +1,64 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
CardColumns,
|
||||
Col
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
import { GalleryCard } from "../../components/Gallery/GalleryCard";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const GalleryGrid = () => (
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Gallery Grid"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle="Gallery Grid"
|
||||
linkList="/apps/gallery-table"
|
||||
linkGrid="/apps/gallery-grid"
|
||||
/>
|
||||
<CardColumns>
|
||||
<GalleryCard />
|
||||
<GalleryCard
|
||||
id="2"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="3"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="4"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="5"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="6"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="7"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="8"
|
||||
/>
|
||||
<GalleryCard
|
||||
id="9"
|
||||
/>
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
);
|
||||
|
||||
export default GalleryGrid;
|
3
app/routes/Apps/GalleryGrid/index.js
Executable file
3
app/routes/Apps/GalleryGrid/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import GalleryGrid from './GalleryGrid';
|
||||
|
||||
export default GalleryGrid;
|
85
app/routes/Apps/GalleryTable/GalleryTable.js
Executable file
85
app/routes/Apps/GalleryTable/GalleryTable.js
Executable file
@@ -0,0 +1,85 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Table,
|
||||
CardFooter,
|
||||
Card,
|
||||
Col
|
||||
} from './../../../components';
|
||||
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
import { TrTableGalleryList } from "./components/TrTableGalleryList";
|
||||
|
||||
const GalleryTable = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Gallery Table"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle="Gallery Table"
|
||||
linkList="/apps/gallery-table"
|
||||
linkGrid="/apps/gallery-grid"
|
||||
/>
|
||||
<Card>
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" hover size="sm" responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>Thumb</th>
|
||||
<th>Title</th>
|
||||
<th>Author</th>
|
||||
<th>Date</th>
|
||||
<th>Info</th>
|
||||
<th className="text-right">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableGalleryList />
|
||||
<TrTableGalleryList
|
||||
id="2"
|
||||
/>
|
||||
<TrTableGalleryList
|
||||
id="3"
|
||||
/>
|
||||
<TrTableGalleryList
|
||||
id="4"
|
||||
/>
|
||||
<TrTableGalleryList
|
||||
id="5"
|
||||
/>
|
||||
<TrTableGalleryList
|
||||
id="6"
|
||||
/>
|
||||
<TrTableGalleryList
|
||||
id="7"
|
||||
/>
|
||||
<TrTableGalleryList
|
||||
id="8"
|
||||
/>
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex justify-content-center pb-0">
|
||||
<Paginations />
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default GalleryTable;
|
122
app/routes/Apps/GalleryTable/components/TrTableGalleryList.js
Executable file
122
app/routes/Apps/GalleryTable/components/TrTableGalleryList.js
Executable file
@@ -0,0 +1,122 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
CustomInput,
|
||||
Avatar,
|
||||
HolderProvider,
|
||||
CardImg,
|
||||
Media,
|
||||
AvatarAddOn,
|
||||
Button,
|
||||
UncontrolledTooltip
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray, randomAvatar } from './../../../../utilities';
|
||||
|
||||
const status = [
|
||||
"secondary",
|
||||
"danger",
|
||||
"success",
|
||||
"warning"
|
||||
];
|
||||
const badges = [
|
||||
"secondary"
|
||||
];
|
||||
|
||||
const TrTableGalleryList = (props) => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<CustomInput type="checkbox" id={`trTableGalleryList-${ props.id }` } label="" inline />
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<HolderProvider.Icon
|
||||
iconChar=""
|
||||
size={ 16 }
|
||||
width={ 100 }
|
||||
height={ 100 }
|
||||
>
|
||||
<CardImg className="rounded" />
|
||||
</HolderProvider.Icon>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<span>
|
||||
<a className="text-inverse" href="#">
|
||||
{ faker.commerce.productName() }
|
||||
</a>
|
||||
<br />
|
||||
<span href="#">
|
||||
{ faker.system.fileName() }
|
||||
</span>
|
||||
<br />
|
||||
<Badge pill color={ randomArray(badges) } className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color={ randomArray(badges) } className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color={ randomArray(badges) } className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</span>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Media>
|
||||
<Media left className="align-self-center mr-3">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(status) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<a className="mt-0 text-decoration-none d-flex" href="#">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</a>
|
||||
<span>
|
||||
{ faker.address.state() }, { faker.address.stateAbbr() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
22-Jul-2012
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
Size: { faker.random.number() } Kb<br />
|
||||
Format: .png
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
<Button color="link" id={`trTableGalleryListTooltip-${ props.id }` }>
|
||||
<i className="fa fa-fw fa-download"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="left" target={`trTableGalleryListTooltip-${ props.id }` }>
|
||||
Download
|
||||
</UncontrolledTooltip>
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
TrTableGalleryList.propTypes = {
|
||||
id: PropTypes.node
|
||||
};
|
||||
TrTableGalleryList.defaultProps = {
|
||||
id: "1"
|
||||
};
|
||||
|
||||
export { TrTableGalleryList };
|
3
app/routes/Apps/GalleryTable/index.js
Executable file
3
app/routes/Apps/GalleryTable/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import GalleryTable from './GalleryTable';
|
||||
|
||||
export default GalleryTable;
|
50
app/routes/Apps/ImagesResults/ImagesResults.js
Executable file
50
app/routes/Apps/ImagesResults/ImagesResults.js
Executable file
@@ -0,0 +1,50 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
CardColumns,
|
||||
Col
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { SearchResultsLeftNav } from "../../components/SearchResults/SearchResultsLeftNav";
|
||||
import { SearchResultsHeader } from "../../components/SearchResults/SearchResultsHeader";
|
||||
import { ImagesResultsCard } from "../../components/SearchResults/ImagesResultsCard";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const ImagesResults = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Images Results"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<SearchResultsLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<SearchResultsHeader />
|
||||
<CardColumns>
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
<ImagesResultsCard />
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default ImagesResults;
|
3
app/routes/Apps/ImagesResults/index.js
Executable file
3
app/routes/Apps/ImagesResults/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import ImagesResults from './ImagesResults';
|
||||
|
||||
export default ImagesResults;
|
138
app/routes/Apps/Inbox/Inbox.js
Executable file
138
app/routes/Apps/Inbox/Inbox.js
Executable file
@@ -0,0 +1,138 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import { Link } from 'react-router-dom';
|
||||
import _ from 'lodash';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
ButtonToolbar,
|
||||
Avatar,
|
||||
AvatarAddOn,
|
||||
Card,
|
||||
Button,
|
||||
ButtonGroup,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
CustomInput,
|
||||
Table,
|
||||
Badge,
|
||||
InputGroup,
|
||||
InputGroupAddon,
|
||||
Input,
|
||||
UncontrolledTooltip
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { MailboxLeftNav } from "../../components/Mailbox/MailboxLeftNav";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
import { TrTableInbox } from "./components/TrTableInbox";
|
||||
|
||||
const Inbox = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Inbox"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<MailboxLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
<div className="d-lg-flex justify-content-end">
|
||||
<div className="mr-auto d-flex align-items-center mb-3 mb-lg-0">
|
||||
<InputGroup>
|
||||
<Input placeholder="Search for..." />
|
||||
<InputGroupAddon addonType="append">
|
||||
<Button color="secondary" outline>
|
||||
<i className="fa fa-search"></i>
|
||||
</Button>
|
||||
</InputGroupAddon>
|
||||
</InputGroup>
|
||||
</div>
|
||||
<ButtonToolbar>
|
||||
<ButtonGroup className="mr-2">
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipRefresh">
|
||||
<i className="fa fa-fw fa-refresh"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipRefresh">
|
||||
Refresh
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipFav">
|
||||
<i className="fa fa-fw fa-star"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipFav">
|
||||
Add to Favorites
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipTag">
|
||||
<i className="fa fa-fw fa-tag"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipTag">
|
||||
Tag
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipBan">
|
||||
<i className="fa fa-fw fa-ban"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipBan">
|
||||
Ban this User
|
||||
</UncontrolledTooltip>
|
||||
<Button color="link" className="text-decoration-none align-self-center" id="tooltipDelete">
|
||||
<i className="fa fa-fw fa-trash"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipDelete">
|
||||
Delete
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
<ButtonGroup className="ml-auto ml-lg-0">
|
||||
<Button color="primary" className="align-self-center" tag={ Link } to="/apps/new-email" id="tooltipAddNew">
|
||||
<i className="fa fa-fw fa-pencil"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipAddNew">
|
||||
Add New
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
</ButtonToolbar>
|
||||
</div>
|
||||
</CardBody>
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" hover responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="bt-0"></th>
|
||||
<th className="bt-0"></th>
|
||||
<th className="bt-0">From</th>
|
||||
<th className="bt-0">Subject</th>
|
||||
<th className="text-right bt-0">
|
||||
Date
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{
|
||||
_.times(11, (index) => (
|
||||
<TrTableInbox
|
||||
id={index.toString()}
|
||||
key={index}
|
||||
/>
|
||||
))
|
||||
}
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex justify-content-center pb-0">
|
||||
<Paginations />
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default Inbox;
|
114
app/routes/Apps/Inbox/components/TrTableInbox.js
Executable file
114
app/routes/Apps/Inbox/components/TrTableInbox.js
Executable file
@@ -0,0 +1,114 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
Avatar,
|
||||
UncontrolledTooltip,
|
||||
CustomInput,
|
||||
AvatarAddOn,
|
||||
Media
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray, randomAvatar } from './../../../../utilities';
|
||||
|
||||
const status = [
|
||||
"warning",
|
||||
"danger",
|
||||
"success",
|
||||
"secondary"
|
||||
];
|
||||
|
||||
|
||||
const tag = [
|
||||
"primary",
|
||||
"secondary",
|
||||
"info"
|
||||
];
|
||||
|
||||
|
||||
const TrTableInbox = (props) => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
{
|
||||
(Math.round(Math.random())) ? (
|
||||
<span>
|
||||
<i className="fa fa-circle fa-fw text-primary" id={`newMessage-${ props.id }` }></i>
|
||||
<UncontrolledTooltip placement="bottom" target={`#newMessage-${ props.id }` }>
|
||||
New Message
|
||||
</UncontrolledTooltip>
|
||||
</span>
|
||||
) : (
|
||||
<span></span>
|
||||
)
|
||||
}
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<CustomInput type="checkbox" label="" id={` mailboxCheckbox-${ props.id }` } />
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Media>
|
||||
<Media left className="d-flex align-self-center mr-3">
|
||||
<div className="mr-2">
|
||||
<a href="#" id="tooltipAddToFavorites">
|
||||
<i className="fa fa-fw fa-star-o"></i>
|
||||
</a>
|
||||
<UncontrolledTooltip placement="top" target="tooltipAddToFavorites">
|
||||
Add To Favorites
|
||||
</UncontrolledTooltip>
|
||||
</div>
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(status) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<a className="mt-0 text-decoration-none d-flex" href="#">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</a>
|
||||
<span>
|
||||
{ faker.address.state() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Link to="/apps/email-details" className="text-decoration-none">
|
||||
{ faker.company.catchPhrase() }
|
||||
</Link>
|
||||
<br />
|
||||
{ faker.lorem.sentence() }
|
||||
<br />
|
||||
<Badge pill color={ randomArray(tag) }>
|
||||
{ faker.commerce.department() }
|
||||
</Badge> <i className="fa fa-paperclip ml-2"></i>
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
30-Jun-2014<br />
|
||||
01:54 PM
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
TrTableInbox.propTypes = {
|
||||
id: PropTypes.string
|
||||
};
|
||||
|
||||
export { TrTableInbox };
|
3
app/routes/Apps/Inbox/index.js
Executable file
3
app/routes/Apps/Inbox/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Inbox from './Inbox';
|
||||
|
||||
export default Inbox;
|
143
app/routes/Apps/NewEmail/NewEmail.js
Executable file
143
app/routes/Apps/NewEmail/NewEmail.js
Executable file
@@ -0,0 +1,143 @@
|
||||
import React from 'react';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Card,
|
||||
Button,
|
||||
ButtonGroup,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
Badge,
|
||||
ButtonToolbar,
|
||||
InputGroup,
|
||||
InputGroupAddon,
|
||||
Input,
|
||||
UncontrolledTooltip
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { MailboxLeftNav } from "../../components/Mailbox/MailboxLeftNav";
|
||||
import { Attachment } from "../../components/Attachment";
|
||||
|
||||
const NewEmail = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="New Email"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<MailboxLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
{ /* START Header */}
|
||||
<div className="flex-column flex-md-row d-flex mb-4">
|
||||
<div className="mr-md-auto mr-sm-0">
|
||||
<Button color="link" tag={ Link } to="/apps/inbox" className="text-decoration-none">
|
||||
<i className="fa fa-angle-left mr-2"></i> Inbox
|
||||
</Button>
|
||||
</div>
|
||||
<ButtonToolbar>
|
||||
<ButtonGroup className="mr-2">
|
||||
<Button color="link" tag={ Link } to="/apps/inbox" className="text-decoration-none">
|
||||
Cancel
|
||||
</Button>
|
||||
</ButtonGroup>
|
||||
<ButtonGroup>
|
||||
<Button color="primary" tag={ Link } to="/apps/inbox" id="tooltipSend">
|
||||
<i className="fa fa-send"></i>
|
||||
</Button>
|
||||
<UncontrolledTooltip placement="bottom" target="tooltipSend">
|
||||
Send Now
|
||||
</UncontrolledTooltip>
|
||||
</ButtonGroup>
|
||||
</ButtonToolbar>
|
||||
</div>
|
||||
{ /* END Header */}
|
||||
{ /* START Forms */}
|
||||
<div className="mb-4">
|
||||
<InputGroup className="mb-3">
|
||||
<InputGroupAddon addonType="prepend">
|
||||
To:
|
||||
</InputGroupAddon>
|
||||
<Input placeholder="Enter email(s)..." />
|
||||
<InputGroupAddon addonType="append">
|
||||
<Button color="secondary" outline>
|
||||
<i className="fa fa-fw fa-plus"></i>
|
||||
</Button>
|
||||
</InputGroupAddon>
|
||||
</InputGroup>
|
||||
<Row className="mb-3">
|
||||
<Col sm={12} lg={6} className="mb-3 mb-lg-0">
|
||||
<InputGroup>
|
||||
<InputGroupAddon addonType="prepend">
|
||||
CC:
|
||||
</InputGroupAddon>
|
||||
<Input placeholder="Enter email(s)..." />
|
||||
</InputGroup>
|
||||
</Col>
|
||||
<Col sm={12} lg={6}>
|
||||
<InputGroup>
|
||||
<InputGroupAddon addonType="prepend">
|
||||
BCC:
|
||||
</InputGroupAddon>
|
||||
<Input placeholder="Enter email(s)..." />
|
||||
</InputGroup>
|
||||
</Col>
|
||||
</Row>
|
||||
<InputGroup className="mb-3">
|
||||
<InputGroupAddon addonType="prepend">
|
||||
Subject:
|
||||
</InputGroupAddon>
|
||||
<Input placeholder="Enter topic..." />
|
||||
</InputGroup>
|
||||
<Input type="textarea" name="text" />
|
||||
</div>
|
||||
{ /* END Forms */}
|
||||
{ /* START Attachments */}
|
||||
<div>
|
||||
<div className="mb-3">
|
||||
<span className="small mr-2">
|
||||
Attachments
|
||||
</span>
|
||||
<Badge pill color="secondary">3</Badge>
|
||||
</div>
|
||||
<Attachment
|
||||
BgIconClassName="text-primary"
|
||||
icon="file-word-o"
|
||||
mediaClassName="mb-3"
|
||||
/>
|
||||
<Attachment
|
||||
BgIconClassName="text-success"
|
||||
icon="file-excel-o"
|
||||
mediaClassName="mb-3"
|
||||
/>
|
||||
<Attachment
|
||||
BgIconClassName="text-warning"
|
||||
icon="file-powerpoint-o"
|
||||
/>
|
||||
</div>
|
||||
|
||||
</CardBody>
|
||||
<CardFooter className="text-right">
|
||||
<Button color="link" className="text-decoration-none">
|
||||
<i className="fa fa-paperclip mr-2"></i>
|
||||
Add New Files
|
||||
</Button>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default NewEmail;
|
3
app/routes/Apps/NewEmail/index.js
Executable file
3
app/routes/Apps/NewEmail/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import NewEmail from './NewEmail';
|
||||
|
||||
export default NewEmail;
|
357
app/routes/Apps/ProfileDetails/ProfileDetails.js
Executable file
357
app/routes/Apps/ProfileDetails/ProfileDetails.js
Executable file
@@ -0,0 +1,357 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
CardHeader,
|
||||
DropdownToggle,
|
||||
DropdownItem,
|
||||
DropdownMenu,
|
||||
UncontrolledButtonDropdown,
|
||||
Card,
|
||||
ButtonGroup,
|
||||
Button,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
CardGroup,
|
||||
Table,
|
||||
TabPane,
|
||||
Badge,
|
||||
Nav,
|
||||
NavItem,
|
||||
UncontrolledTabs
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
|
||||
import { Profile } from "../../components/Profile";
|
||||
import { ProfileOverviewCard } from "../../components/Profile/ProfileOverviewCard";
|
||||
import { DlRowContacts } from "../../components/Profile/DlRowContacts";
|
||||
import { DlRowAddress } from "../../components/Profile/DlRowAddress";
|
||||
import { ChatLeft } from "../../components/Chat/ChatLeft";
|
||||
import { ChatRight } from "../../components/Chat/ChatRight";
|
||||
import { ChatCardFooter } from "../../components/Chat/ChatCardFooter";
|
||||
import { TrTableMessages } from "./components/TrTableMessages";
|
||||
import { TimelineDefault } from "../../components/Timeline/TimelineDefault";
|
||||
|
||||
|
||||
const ProfileDetails = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Profile Details"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 4 }>
|
||||
<Card>
|
||||
<CardBody>
|
||||
<Profile />
|
||||
<div className="text-center pb-1">
|
||||
<ul className="list-inline">
|
||||
<li className="list-inline-item text-center">
|
||||
<h2 className="mb-1">23</h2>
|
||||
<span>Contracts</span>
|
||||
</li>
|
||||
<li className="list-inline-item text-center">
|
||||
<h2 className="mb-1">13</h2>
|
||||
<span>Tasks</span>
|
||||
</li>
|
||||
<li className="list-inline-item text-center">
|
||||
<h2 className="mb-1">5</h2>
|
||||
<span>Relases</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<Row className="mt-3">
|
||||
<Col sm={ 6 } md={ 6 }>
|
||||
<Button color="primary" block tag={ Link } to="/apps/new-email" className="mb-3 mb-lg-0">
|
||||
Message
|
||||
</Button>
|
||||
</Col>
|
||||
<Col sm={ 6 } md={ 6 }>
|
||||
<Button color="secondary" outline block tag={ Link } to="/apps/profile-edit">
|
||||
Edit
|
||||
</Button>
|
||||
</Col>
|
||||
</Row>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">
|
||||
Profile
|
||||
</span>
|
||||
</div>
|
||||
<p className="text-left">
|
||||
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
|
||||
Dicta sapiente earum, necessitatibus commodi eius pariatur
|
||||
repudiandae cum sunt officiis ex!
|
||||
</p>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">
|
||||
Labels
|
||||
</span>
|
||||
</div>
|
||||
<div className="text-left mb-4">
|
||||
<Badge pill color="secondary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color="secondary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color="secondary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</div>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">Contact</span>
|
||||
</div>
|
||||
<DlRowContacts
|
||||
leftSideClassName="text-lg-left"
|
||||
rightSideClassName="text-lg-right text-inverse"
|
||||
/>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">Address</span>
|
||||
</div>
|
||||
<DlRowAddress
|
||||
leftSideClassName="text-lg-left"
|
||||
rightSideClassName="text-lg-right text-inverse"
|
||||
/>
|
||||
</CardBody>
|
||||
</Card>
|
||||
</Col>
|
||||
<Col lg={ 8 }>
|
||||
<UncontrolledTabs initialActiveTabId="overview">
|
||||
{ /* START Pills Nav */}
|
||||
<Nav pills className="mb-4 flex-column flex-md-row mt-4 mt-lg-0">
|
||||
<NavItem>
|
||||
<UncontrolledTabs.NavLink tabId="overview">
|
||||
Overview
|
||||
</UncontrolledTabs.NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<UncontrolledTabs.NavLink tabId="detailContact">
|
||||
Detail Contact
|
||||
</UncontrolledTabs.NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<UncontrolledTabs.NavLink tabId="chat">
|
||||
Chat
|
||||
</UncontrolledTabs.NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<UncontrolledTabs.NavLink tabId="messages">
|
||||
Messages <Badge pill color="secondary" className="ml-2">5</Badge>
|
||||
</UncontrolledTabs.NavLink>
|
||||
</NavItem>
|
||||
</Nav>
|
||||
{ /* END Pills Nav */}
|
||||
<UncontrolledTabs.TabContent>
|
||||
<TabPane tabId="overview">
|
||||
<CardGroup className="mb-5">
|
||||
<Card body>
|
||||
<ProfileOverviewCard
|
||||
title="Views"
|
||||
badgeColor="primary"
|
||||
badgeTitle="Monthly"
|
||||
value="6.200"
|
||||
valueTitle="Total Views"
|
||||
footerTitle="Last Month"
|
||||
footerTitleClassName="text-success"
|
||||
footerIcon="caret-up"
|
||||
footerValue="23%"
|
||||
/>
|
||||
</Card>
|
||||
<Card body>
|
||||
<ProfileOverviewCard
|
||||
title="Orders"
|
||||
badgeColor="info"
|
||||
badgeTitle="Annual"
|
||||
value="75.938"
|
||||
valueTitle="New Orders"
|
||||
footerTitle="Last Annual"
|
||||
footerTitleClassName="text-danger"
|
||||
footerIcon="caret-down"
|
||||
footerValue="96%"
|
||||
/>
|
||||
</Card>
|
||||
<Card body>
|
||||
<ProfileOverviewCard
|
||||
title="Visits"
|
||||
badgeColor="secondary"
|
||||
badgeTitle="Today"
|
||||
value="75.938"
|
||||
valueTitle="Total Visits"
|
||||
footerTitle="Yesterday"
|
||||
footerTitleClassName="text-success"
|
||||
footerIcon="caret-up"
|
||||
footerValue="40%"
|
||||
/>
|
||||
</Card>
|
||||
</CardGroup>
|
||||
<TimelineDefault
|
||||
showPillDate
|
||||
pillDate="Today"
|
||||
smallIconColor="danger"
|
||||
iconCircleColor="danger"
|
||||
iconCircle="exclamation"
|
||||
/>
|
||||
<TimelineDefault
|
||||
showPillDate
|
||||
pillDate="Yesterday"
|
||||
smallIconColor="info"
|
||||
iconCircleColor="info"
|
||||
iconCircle="comment"
|
||||
/>
|
||||
<TimelineDefault
|
||||
showPillDate
|
||||
pillDate="2 Days ago"
|
||||
smallIconColor="primary"
|
||||
iconCircleColor="primary"
|
||||
iconCircle="envelope"
|
||||
/>
|
||||
<TimelineDefault
|
||||
showPillDate
|
||||
pillDate="3 Months ago"
|
||||
smallIconColor="warning"
|
||||
iconCircleColor="warning"
|
||||
iconCircle="clock-o"
|
||||
/>
|
||||
<TimelineDefault
|
||||
showPillDate
|
||||
pillDate="Year ago"
|
||||
smallIconColor="success"
|
||||
iconCircleColor="success"
|
||||
iconCircle="check"
|
||||
/>
|
||||
<TimelineDefault
|
||||
iconCircle="close"
|
||||
/>
|
||||
</TabPane>
|
||||
<TabPane tabId="detailContact">
|
||||
<Card body>
|
||||
<div className="mb-2">
|
||||
<span className="small">Contact</span>
|
||||
</div>
|
||||
<DlRowContacts
|
||||
leftSideClassName="text-lg-right"
|
||||
rightSideClassName="text-inverse"
|
||||
/>
|
||||
<div className="mt-4 mb-2">
|
||||
<span className="small">Address</span>
|
||||
</div>
|
||||
<DlRowAddress
|
||||
leftSideClassName="text-lg-right"
|
||||
rightSideClassName="text-inverse"
|
||||
/>
|
||||
</Card>
|
||||
</TabPane>
|
||||
<TabPane tabId="chat">
|
||||
<Card>
|
||||
<CardHeader className="d-flex bg-white bb-0">
|
||||
<h6 className="align-self-center mb-0">
|
||||
Chat with Romaine Weber
|
||||
</h6>
|
||||
<UncontrolledButtonDropdown className="align-self-center ml-auto">
|
||||
<DropdownToggle color="link" size="sm">
|
||||
<i className="fa fa-gear"></i><i className="fa fa-angle-down ml-2" />
|
||||
</DropdownToggle>
|
||||
<DropdownMenu right>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-comment mr-2"></i>
|
||||
Private Message
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-search mr-2"></i>
|
||||
Search this Thread
|
||||
</DropdownItem>
|
||||
<DropdownItem divider />
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-ban mr-2"></i>
|
||||
Block this User
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</CardHeader>
|
||||
<CardBody>
|
||||
<ChatLeft cardClassName="bg-gray-300 b-0 text-dark" />
|
||||
<ChatRight cardClassName="text-dark"/>
|
||||
<ChatLeft cardClassName="bg-gray-300 b-0 text-dark" />
|
||||
<div className="mt-4 mb-3 text-center">
|
||||
<span className="small">
|
||||
Yesterday
|
||||
</span>
|
||||
</div>
|
||||
<ChatRight cardClassName="text-dark" />
|
||||
</CardBody>
|
||||
<CardFooter>
|
||||
<ChatCardFooter />
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</TabPane>
|
||||
<TabPane tabId="messages">
|
||||
<Card>
|
||||
<CardBody className="d-flex">
|
||||
<ButtonGroup size="sm">
|
||||
<Button color="secondary" outline active>
|
||||
Inbox
|
||||
</Button>
|
||||
<Button color="secondary" outline>
|
||||
Archive
|
||||
</Button>
|
||||
</ButtonGroup>
|
||||
<span className="ml-auto">
|
||||
Showing 1 to 10 of 57 entries
|
||||
</span>
|
||||
</CardBody>
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" hover responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="bt-0">From</th>
|
||||
<th className="bt-0">Subject</th>
|
||||
<th className="bt-0 text-right">
|
||||
Date
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
<TrTableMessages />
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex">
|
||||
<ButtonGroup size="sm">
|
||||
<Button color="secondary" outline>
|
||||
<i className="fa fa-fw fa-angle-left"></i>
|
||||
</Button>
|
||||
<Button color="secondary" outline>
|
||||
<i className="fa fa-fw fa-angle-right"></i>
|
||||
</Button>
|
||||
</ButtonGroup>
|
||||
<span className="ml-auto align-self-center">
|
||||
Showing 1 to 10 of 57 entries
|
||||
</span>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</TabPane>
|
||||
</UncontrolledTabs.TabContent>
|
||||
</UncontrolledTabs>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default ProfileDetails;
|
81
app/routes/Apps/ProfileDetails/components/TrTableMessages.js
Executable file
81
app/routes/Apps/ProfileDetails/components/TrTableMessages.js
Executable file
@@ -0,0 +1,81 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
Avatar,
|
||||
AvatarAddOn,
|
||||
Media
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray } from './../../../../utilities';
|
||||
|
||||
const status = [
|
||||
"warning",
|
||||
"danger",
|
||||
"success",
|
||||
"secondary"
|
||||
];
|
||||
|
||||
const tag = [
|
||||
"primary",
|
||||
"secondary",
|
||||
"info"
|
||||
];
|
||||
|
||||
|
||||
const TrTableMessages = () => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<Media>
|
||||
<Media left className="align-self-center mr-3">
|
||||
<Avatar.Image
|
||||
size="sm"
|
||||
src="http://bs4.webkom.co/img/avatars/2.jpg"
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(status) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="mt-0 d-flex text-inverse">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</div>
|
||||
<span>
|
||||
{ faker.address.state() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Link to="/apps/email-details">
|
||||
{ faker.company.catchPhrase() }
|
||||
</Link>
|
||||
<br />
|
||||
<div>
|
||||
{ faker.lorem.sentence() }
|
||||
</div>
|
||||
<Badge color={ randomArray(tag) } pill className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
30-Jun-2014<br />
|
||||
01:54 PM
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
export { TrTableMessages };
|
3
app/routes/Apps/ProfileDetails/index.js
Executable file
3
app/routes/Apps/ProfileDetails/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import ProfileDetails from './ProfileDetails';
|
||||
|
||||
export default ProfileDetails;
|
207
app/routes/Apps/ProfileEdit/ProfileEdit.js
Executable file
207
app/routes/Apps/ProfileEdit/ProfileEdit.js
Executable file
@@ -0,0 +1,207 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Input,
|
||||
Card,
|
||||
Button,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
FormText,
|
||||
CardTitle,
|
||||
CustomInput,
|
||||
Label,
|
||||
FormGroup,
|
||||
Form
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProfileLeftNav } from "../../components/Profile/ProfileLeftNav";
|
||||
import { ProfileHeader } from "../../components/Profile/ProfileHeader";
|
||||
|
||||
const ProfileEdit = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Profile Edit"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProfileHeader />
|
||||
</Col>
|
||||
<Col lg={ 3 }>
|
||||
<ProfileLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card>
|
||||
<CardBody>
|
||||
<div className="d-flex mb-4">
|
||||
<CardTitle tag="h6">
|
||||
Profile Edit
|
||||
</CardTitle>
|
||||
<span className="ml-auto align-self-start small">
|
||||
Fields mark as <span className="text-danger">*</span> is required.
|
||||
</span>
|
||||
</div>
|
||||
<Form>
|
||||
<div className="small mt-4 mb-3">
|
||||
Required
|
||||
</div>
|
||||
{ /* START File Select */}
|
||||
<FormGroup row>
|
||||
<Label for="uploadYourAvatar" sm={3} className="text-right">
|
||||
Upload Your Avatar
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<CustomInput type="file" id="uploadYourAvatar" name="customFile" label="Browse for a file to upload...." />
|
||||
<FormText color="muted">
|
||||
JPG, GIF, PNG, MOV and AVI. Please choose a files under 2GB to upload. File sizes are 400 x 300px.
|
||||
</FormText>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END File Select */}
|
||||
{ /* START Input */}
|
||||
<FormGroup row>
|
||||
<Label for="firstName" sm={3} className="text-right">
|
||||
<span className="text-danger">*</span> First Name
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="text"
|
||||
name=""
|
||||
id="firstName"
|
||||
placeholder="First Name..."
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup row>
|
||||
<Label for="lastName" sm={3} className="text-right">
|
||||
<span className="text-danger">*</span> Last Name
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="text"
|
||||
name="text"
|
||||
id="lastName"
|
||||
placeholder="Last Name..."
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Select */}
|
||||
<FormGroup row>
|
||||
<Label for="jobType" sm={3} className="text-right">
|
||||
Job Type
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<CustomInput
|
||||
type="select"
|
||||
name="customSelect"
|
||||
id="jobType"
|
||||
>
|
||||
<option value="">Select...</option>
|
||||
<option>Human Intranet Developer </option>
|
||||
<option>Dynamic Tactics Specialist</option>
|
||||
<option>Global Configuration Consultant</option>
|
||||
<option>Principal Directives Orchestrator</option>
|
||||
<option>Corporate Usability Consultant</option>
|
||||
</CustomInput>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Select */}
|
||||
<div className="small mt-5 mb-3">
|
||||
Availability
|
||||
</div>
|
||||
{ /* START Radios */}
|
||||
<FormGroup row>
|
||||
<Label for="afterLogging" sm={3} className="text-right pt-0">
|
||||
After Logging
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<CustomInput
|
||||
type="radio"
|
||||
id="operatingSystem12"
|
||||
name="afterLogging"
|
||||
label="Available"
|
||||
defaultChecked
|
||||
/>
|
||||
<CustomInput
|
||||
type="radio"
|
||||
id="operatingSystem22"
|
||||
name="afterLogging"
|
||||
label="Inactive"
|
||||
|
||||
/>
|
||||
<CustomInput
|
||||
type="radio"
|
||||
id="operatingSystem33"
|
||||
name="afterLogging"
|
||||
label="Busy"
|
||||
/>
|
||||
<CustomInput
|
||||
type="radio"
|
||||
id="operatingSystem34"
|
||||
name="afterLogging"
|
||||
label="Offline"
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
<div className="small mt-4 mb-3">
|
||||
Fill Profile
|
||||
</div>
|
||||
{ /* END Radios */}
|
||||
{ /* START Textarea */}
|
||||
<FormGroup row>
|
||||
<Label for="profile" sm={3} className="text-right">
|
||||
Profile
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="textarea"
|
||||
name="text"
|
||||
id="profile"
|
||||
placeholder="Please Describe Your Profile..."
|
||||
className="mb-2"
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Textarea */}
|
||||
{ /* START Input */}
|
||||
<FormGroup row>
|
||||
<Label for="addLabels" sm={3} className="text-right">
|
||||
Add Labels
|
||||
</Label>
|
||||
<Col sm={8}>
|
||||
<Input
|
||||
type="text"
|
||||
name=""
|
||||
id="addLabels"
|
||||
placeholder="Add Here..."
|
||||
/>
|
||||
</Col>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
</Form>
|
||||
{ /* END Form */}
|
||||
</CardBody>
|
||||
<CardFooter className="text-right">
|
||||
<Button color="primary">
|
||||
Update Profile
|
||||
</Button>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default ProfileEdit;
|
3
app/routes/Apps/ProfileEdit/index.js
Executable file
3
app/routes/Apps/ProfileEdit/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import ProfileEdit from './ProfileEdit';
|
||||
|
||||
export default ProfileEdit;
|
49
app/routes/Apps/Projects/Projects.js
Executable file
49
app/routes/Apps/Projects/Projects.js
Executable file
@@ -0,0 +1,49 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
|
||||
import ProjectsList from './ProjectsList';
|
||||
import ProjectsGrid from './ProjectsGrid';
|
||||
import { ProjectsLeftNav } from "../../components/Projects/ProjectsLeftNav";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
|
||||
const Projects = (props) => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Projects"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<ProjectsLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle={props.match.params.type === "list"?"Projects List":"Projects Grid"}
|
||||
linkList="/apps/projects/list"
|
||||
linkGrid="/apps/projects/grid"
|
||||
/>
|
||||
|
||||
{
|
||||
props.match.params.type === "list" ?
|
||||
<ProjectsList /> :
|
||||
<ProjectsGrid />
|
||||
}
|
||||
</Col>
|
||||
</Row>
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
Projects.propTypes = {
|
||||
match: PropTypes.object.isRequired
|
||||
};
|
||||
|
||||
export default Projects;
|
23
app/routes/Apps/Projects/ProjectsGrid.js
Executable file
23
app/routes/Apps/Projects/ProjectsGrid.js
Executable file
@@ -0,0 +1,23 @@
|
||||
import React from 'react';
|
||||
import _ from 'lodash';
|
||||
|
||||
import { CardColumns } from './../../../components';
|
||||
import { ProjectsCardGrid } from "../../components/Projects/ProjectsCardGrid";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const ProjectsGrid = () => (
|
||||
<React.Fragment>
|
||||
<CardColumns>
|
||||
{
|
||||
_.times(12, (index) => (
|
||||
<ProjectsCardGrid key={ index } />
|
||||
))
|
||||
}
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default ProjectsGrid;
|
71
app/routes/Apps/Projects/ProjectsList.js
Executable file
71
app/routes/Apps/Projects/ProjectsList.js
Executable file
@@ -0,0 +1,71 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Pagination,
|
||||
PaginationItem,
|
||||
PaginationLink,
|
||||
Card,
|
||||
CardFooter,
|
||||
Table
|
||||
} from './../../../components';
|
||||
|
||||
import {
|
||||
TrTableProjectsList
|
||||
} from "./components/TrTableProjectsList";
|
||||
|
||||
const ProjectsList = () => (
|
||||
<Card className="mb-3">
|
||||
{ /* START Table */}
|
||||
<div className="table-responsive-xl">
|
||||
<Table className="mb-0" hover>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="align-middle bt-0">Star</th>
|
||||
<th className="align-middle bt-0">Project</th>
|
||||
<th className="align-middle bt-0">Status</th>
|
||||
<th className="align-middle bt-0">Tasks Completed</th>
|
||||
<th className="align-middle bt-0">People</th>
|
||||
<th className="align-middle bt-0 text-right">
|
||||
Actions
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableProjectsList />
|
||||
</tbody>
|
||||
</Table>
|
||||
</div>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex justify-content-center pb-0">
|
||||
<Pagination aria-label="Page navigation example">
|
||||
<PaginationItem>
|
||||
<PaginationLink previous href="#">
|
||||
<i className="fa fa-fw fa-angle-left"></i>
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem active>
|
||||
<PaginationLink href="#">
|
||||
1
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink href="#">
|
||||
2
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink href="#">
|
||||
3
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink next href="#">
|
||||
<i className="fa fa-fw fa-angle-right"></i>
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
</Pagination>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
);
|
||||
|
||||
export default ProjectsList;
|
115
app/routes/Apps/Projects/components/TrTableProjectsList.js
Executable file
115
app/routes/Apps/Projects/components/TrTableProjectsList.js
Executable file
@@ -0,0 +1,115 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import _ from 'lodash';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
Progress,
|
||||
Avatar,
|
||||
UncontrolledButtonDropdown,
|
||||
DropdownToggle,
|
||||
DropdownMenu,
|
||||
DropdownItem
|
||||
} from './../../../../components';
|
||||
import { randomAvatar } from './../../../../utilities';
|
||||
|
||||
/*eslint-disable */
|
||||
const status = [
|
||||
<Badge pill color="success">
|
||||
Active
|
||||
</Badge>,
|
||||
<Badge pill color="danger">
|
||||
Suspended
|
||||
</Badge>,
|
||||
<Badge pill color="warning">
|
||||
Waiting
|
||||
</Badge>,
|
||||
<Badge pill color="secondary">
|
||||
Paused
|
||||
</Badge>
|
||||
];
|
||||
/*eslint-enable */
|
||||
/*eslint-disable */
|
||||
const tasksCompleted = [
|
||||
"25",
|
||||
"50",
|
||||
"70",
|
||||
"90"
|
||||
];
|
||||
/*eslint-enable */
|
||||
|
||||
const TrTableProjectsList = () => (
|
||||
<React.Fragment>
|
||||
{
|
||||
_.times(12, (index) => (
|
||||
<tr key={ index }>
|
||||
<td className="align-middle">
|
||||
<div className="text-inverse">
|
||||
<a href="#">
|
||||
<i className="fa fa-fw fa-lg fa-star-o"></i>
|
||||
</a>
|
||||
</div>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<div>
|
||||
<Link to="/apps/tasks/list" className="text-decoration-none">
|
||||
{ faker.company.catchPhrase() }
|
||||
</Link>
|
||||
</div>
|
||||
<span>
|
||||
Last Edited by: { faker.name.firstName() } { faker.name.lastName() } <br />
|
||||
{ faker.date.weekday() }, 12 { faker.date.month() }, 2018
|
||||
</span>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ status[index%4] }
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Progress value={ tasksCompleted[index%4] } style={{height: "5px"}} className="mb-2" />
|
||||
<div>
|
||||
Tasks Completed:
|
||||
<span className="text-inverse">
|
||||
36/94
|
||||
</span>
|
||||
</div>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
/>
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
<UncontrolledButtonDropdown>
|
||||
<DropdownToggle color="link" outline>
|
||||
<i className="fa fa-gear" /><i className="fa fa-angle-down ml-2" />
|
||||
</DropdownToggle>
|
||||
<DropdownMenu right>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-folder-open mr-2"></i>
|
||||
View
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-ticket mr-2"></i>
|
||||
Add Task
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-paperclip mr-2"></i>
|
||||
Add Files
|
||||
</DropdownItem>
|
||||
<DropdownItem divider />
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-trash mr-2"></i>
|
||||
Delete
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</td>
|
||||
</tr>
|
||||
))
|
||||
}
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
export { TrTableProjectsList };
|
3
app/routes/Apps/Projects/index.js
Executable file
3
app/routes/Apps/Projects/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Projects from './Projects';
|
||||
|
||||
export default Projects;
|
48
app/routes/Apps/SearchResults/SearchResults.js
Executable file
48
app/routes/Apps/SearchResults/SearchResults.js
Executable file
@@ -0,0 +1,48 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { SearchResultsLeftNav } from
|
||||
"../../components/SearchResults/SearchResultsLeftNav";
|
||||
import { SearchResultsHeader } from
|
||||
"../../components/SearchResults/SearchResultsHeader";
|
||||
import { SearchResultsCard } from
|
||||
"../../components/SearchResults/SearchResultsCard";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const SearchResults = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Search Results"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<SearchResultsLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<SearchResultsHeader />
|
||||
<SearchResultsCard />
|
||||
<SearchResultsCard />
|
||||
<SearchResultsCard />
|
||||
<SearchResultsCard />
|
||||
<SearchResultsCard />
|
||||
<SearchResultsCard />
|
||||
<SearchResultsCard />
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default SearchResults;
|
3
app/routes/Apps/SearchResults/index.js
Executable file
3
app/routes/Apps/SearchResults/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import SearchResults from './SearchResults';
|
||||
|
||||
export default SearchResults;
|
66
app/routes/Apps/SessionsEdit/SessionsEdit.js
Executable file
66
app/routes/Apps/SessionsEdit/SessionsEdit.js
Executable file
@@ -0,0 +1,66 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Table,
|
||||
Card,
|
||||
CardBody,
|
||||
CardTitle
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProfileLeftNav } from "../../components/Profile/ProfileLeftNav";
|
||||
import { ProfileHeader } from "../../components/Profile/ProfileHeader";
|
||||
import { TrTableResponsive } from "./../../Tables/Tables/components/TrTableResponsive";
|
||||
|
||||
const BillingEdit = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Sessions Edit"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProfileHeader />
|
||||
</Col>
|
||||
<Col lg={ 3 }>
|
||||
<ProfileLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card className="mb-3">
|
||||
<CardBody>
|
||||
<CardTitle tag="h6" className="mb-0">
|
||||
Billing History
|
||||
</CardTitle>
|
||||
</CardBody>
|
||||
{ /* START Table */}
|
||||
<Table className="mb-0" responsive>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="bt-0">#</th>
|
||||
<th className="bt-0">Browser & OS</th>
|
||||
<th className="bt-0">IP</th>
|
||||
<th className="bt-0">Location</th>
|
||||
<th className="bt-0">Signed In</th>
|
||||
<th className="text-right">
|
||||
Action
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableResponsive />
|
||||
</tbody>
|
||||
</Table>
|
||||
{ /* END Table */}
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default BillingEdit;
|
3
app/routes/Apps/SessionsEdit/index.js
Executable file
3
app/routes/Apps/SessionsEdit/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import SessionsEdit from './SessionsEdit';
|
||||
|
||||
export default SessionsEdit;
|
114
app/routes/Apps/SettingsEdit/SettingsEdit.js
Executable file
114
app/routes/Apps/SettingsEdit/SettingsEdit.js
Executable file
@@ -0,0 +1,114 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Input,
|
||||
Card,
|
||||
Button,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
FormText,
|
||||
CardTitle,
|
||||
CustomInput,
|
||||
Label,
|
||||
FormGroup,
|
||||
Form
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProfileLeftNav } from "../../components/Profile/ProfileLeftNav";
|
||||
import { ProfileHeader } from "../../components/Profile/ProfileHeader";
|
||||
|
||||
const SettingsEdit = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Settings Edit"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProfileHeader />
|
||||
</Col>
|
||||
<Col lg={ 3 }>
|
||||
<ProfileLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<Card>
|
||||
<CardBody>
|
||||
<CardTitle tag="h6" className="mb-4">
|
||||
Settings Edit
|
||||
</CardTitle>
|
||||
<Form>
|
||||
{ /* START Input */}
|
||||
<FormGroup className="mb-5">
|
||||
<Label for="notifyMe" className="mb-1 text-inverse">
|
||||
Monthly Newsletter
|
||||
</Label>
|
||||
<p className="mb-2">
|
||||
Do you want receive our monthly newsletter about
|
||||
new products and offers?
|
||||
</p>
|
||||
<CustomInput type="checkbox" id="notifyMe" label="Notify Me" inline />
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup className="mb-5">
|
||||
<Label for="privateMessage" className="mb-1 text-inverse">
|
||||
Private Message
|
||||
</Label>
|
||||
<p className="mb-2">
|
||||
Do you want notify you by email whenever contacts send you a message?
|
||||
</p>
|
||||
<CustomInput type="radio" id="privateMessageYes" name="privateMessage" label="Yes" defaultChecked />
|
||||
<CustomInput type="radio" id="privateMessageNo" name="privateMessage" label="No" />
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup className="mb-5">
|
||||
<Label for="privateMessage" className="mb-1 text-inverse">
|
||||
Publication Email Subscriptions
|
||||
</Label>
|
||||
<p className="mb-2">
|
||||
Control the emails that publications send to you.
|
||||
</p>
|
||||
<Button color="primary" outline>
|
||||
Manage Publication
|
||||
</Button>
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
{ /* START Input */}
|
||||
<FormGroup className="mb-5">
|
||||
<Label for="ActivityNotifications" className="mb-1 text-inverse">
|
||||
Activity Notifications
|
||||
</Label>
|
||||
<p className="mb-2">
|
||||
Notify me via email when...
|
||||
</p>
|
||||
<CustomInput type="radio" id="someoneComments" name="ActivityNotifications" label="Someone Comments" defaultChecked />
|
||||
<CustomInput type="radio" id="someoneMentions" name="ActivityNotifications" label="Someone Mentions" />
|
||||
<CustomInput type="radio" id="anyoneFollowsMe" name="ActivityNotifications" label="Anyone Follows Me" />
|
||||
</FormGroup>
|
||||
{ /* END Input */}
|
||||
|
||||
|
||||
</Form>
|
||||
{ /* END Form */}
|
||||
</CardBody>
|
||||
<CardFooter className="small">
|
||||
<i className="fa fa-fw fa-support text-muted mr-2"></i>
|
||||
If you have trouble with the configuration, you can contact us. <a href="#">We Can Help</a>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default SettingsEdit;
|
3
app/routes/Apps/SettingsEdit/index.js
Executable file
3
app/routes/Apps/SettingsEdit/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import SettingsEdit from './SettingsEdit';
|
||||
|
||||
export default SettingsEdit;
|
52
app/routes/Apps/Tasks/Tasks.js
Executable file
52
app/routes/Apps/Tasks/Tasks.js
Executable file
@@ -0,0 +1,52 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
|
||||
import TasksList from './TasksList';
|
||||
import TasksGrid from './TasksGrid';
|
||||
import { ProjectsLeftNav } from "../../components/Projects/ProjectsLeftNav";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
|
||||
const Tasks = (props) => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Tasks"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<ProjectsLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle="Projects"
|
||||
subTitleLink="/apps/projects/list"
|
||||
title={props.match.params.type === "list"?"Tasks List":"Tasks Grid"}
|
||||
linkList="/apps/tasks/list"
|
||||
linkGrid="/apps/tasks/grid"
|
||||
btnShowKanban
|
||||
/>
|
||||
|
||||
{
|
||||
props.match.params.type === "list" ?
|
||||
<TasksList /> :
|
||||
<TasksGrid />
|
||||
}
|
||||
</Col>
|
||||
</Row>
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
Tasks.propTypes = {
|
||||
match: PropTypes.object.isRequired
|
||||
};
|
||||
|
||||
export default Tasks;
|
42
app/routes/Apps/Tasks/TasksGrid.js
Executable file
42
app/routes/Apps/Tasks/TasksGrid.js
Executable file
@@ -0,0 +1,42 @@
|
||||
import React from 'react';
|
||||
|
||||
import { CardColumns } from './../../../components';
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
import { TasksCardGrid } from "../../components/Tasks/TasksCardGrid";
|
||||
|
||||
const TasksGrid = () => (
|
||||
<React.Fragment>
|
||||
<CardColumns>
|
||||
<TasksCardGrid />
|
||||
<TasksCardGrid
|
||||
id="2"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="3"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="4"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="5"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="6"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="7"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="8"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="9"
|
||||
/>
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default TasksGrid;
|
97
app/routes/Apps/Tasks/TasksList.js
Executable file
97
app/routes/Apps/Tasks/TasksList.js
Executable file
@@ -0,0 +1,97 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Pagination,
|
||||
PaginationItem,
|
||||
PaginationLink,
|
||||
Card,
|
||||
CardFooter,
|
||||
Table
|
||||
} from './../../../components';
|
||||
|
||||
import { TrTableTasksList } from "./components/TrTableTasksList";
|
||||
|
||||
const TasksList = () => (
|
||||
<Card className="mb-3">
|
||||
{ /* START Table */}
|
||||
<div className="table-responsive-xl">
|
||||
<Table className="mb-0" hover>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="align-middle bt-0">#</th>
|
||||
<th className="align-middle bt-0">Priority</th>
|
||||
<th className="align-middle bt-0">Title & Description</th>
|
||||
<th className="align-middle bt-0">People</th>
|
||||
<th className="align-middle bt-0">Update</th>
|
||||
<th className="align-middle bt-0 text-right">
|
||||
Actions
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableTasksList />
|
||||
<TrTableTasksList
|
||||
id="2"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="3"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="4"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="5"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="6"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="7"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="8"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="9"
|
||||
/>
|
||||
<TrTableTasksList
|
||||
id="10"
|
||||
/>
|
||||
</tbody>
|
||||
</Table>
|
||||
</div>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex justify-content-center pb-0">
|
||||
<Pagination aria-label="Page navigation example">
|
||||
<PaginationItem>
|
||||
<PaginationLink previous href="#">
|
||||
<i className="fa fa-fw fa-angle-left"></i>
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem active>
|
||||
<PaginationLink href="#">
|
||||
1
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink href="#">
|
||||
2
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink href="#">
|
||||
3
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
<PaginationItem>
|
||||
<PaginationLink next href="#">
|
||||
<i className="fa fa-fw fa-angle-right"></i>
|
||||
</PaginationLink>
|
||||
</PaginationItem>
|
||||
</Pagination>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
|
||||
);
|
||||
|
||||
export default TasksList;
|
159
app/routes/Apps/Tasks/components/TrTableTasksList.js
Executable file
159
app/routes/Apps/Tasks/components/TrTableTasksList.js
Executable file
@@ -0,0 +1,159 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Link } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
Badge,
|
||||
Avatar,
|
||||
CustomInput,
|
||||
UncontrolledButtonDropdown,
|
||||
DropdownToggle,
|
||||
DropdownMenu,
|
||||
DropdownItem,
|
||||
AvatarAddOn
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray, randomAvatar } from './../../../../utilities';
|
||||
|
||||
const badges = [
|
||||
"secondary"
|
||||
];
|
||||
|
||||
const avatarStatus = [
|
||||
"secondary",
|
||||
"warning",
|
||||
"danger",
|
||||
"success"
|
||||
];
|
||||
|
||||
const prioStatus = [
|
||||
<React.Fragment key="1">
|
||||
<i className="fa fa-circle text-success mr-2"></i>
|
||||
Small<i className="fa fa-angle-down ml-2" />
|
||||
</React.Fragment>,
|
||||
<React.Fragment key="2">
|
||||
<i className="fa fa-circle text-primary mr-2"></i>
|
||||
Normal<i className="fa fa-angle-down ml-2" />
|
||||
</React.Fragment>,
|
||||
<React.Fragment key="3">
|
||||
<i className="fa fa-circle text-warning mr-2"></i>
|
||||
High<i className="fa fa-angle-down ml-2" />
|
||||
</React.Fragment>,
|
||||
<React.Fragment key="3">
|
||||
<i className="fa fa-circle text-danger mr-2"></i>
|
||||
Big<i className="fa fa-angle-down ml-2" />
|
||||
</React.Fragment>
|
||||
];
|
||||
|
||||
const TrTableTasksList = (props) => (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<CustomInput type="checkbox" id={`TrTableTasksList-${ props.id }` } label="" inline />
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<UncontrolledButtonDropdown>
|
||||
<DropdownToggle color="link" link size="sm" className="pl-0 mb-3 text-decoration-none">
|
||||
{ randomArray(prioStatus) }
|
||||
</DropdownToggle>
|
||||
<DropdownMenu>
|
||||
<DropdownItem header>Select Priority</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-danger mr-2"></i>
|
||||
Big
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-warning mr-2"></i>
|
||||
High
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-primary mr-2"></i>
|
||||
Normal
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-success mr-2"></i>
|
||||
Small
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<div>
|
||||
<span className="mr-2">#{ faker.random.number() }</span>
|
||||
<Link to="/apps/task-details" className="text-decoration-none">
|
||||
{ faker.hacker.phrase() }
|
||||
</Link>
|
||||
</div>
|
||||
<p className="mb-0">
|
||||
<span className="mr-2">
|
||||
{ faker.lorem.sentence() }
|
||||
</span>
|
||||
<Badge pill color={ randomArray(badges) } className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color={ randomArray(badges) } className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</p>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
className="mr-3"
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color={ randomArray(avatarStatus) }
|
||||
key="avatar-icon-fg"
|
||||
/>
|
||||
]}
|
||||
/>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
16-Jul-2016
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
<UncontrolledButtonDropdown className="align-self-center ml-auto">
|
||||
<DropdownToggle color="link" size="sm">
|
||||
<i className="fa fa-gear" /><i className="fa fa-angle-down ml-2" />
|
||||
</DropdownToggle>
|
||||
<DropdownMenu right>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-folder-open mr-2"></i>
|
||||
View
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-ticket mr-2"></i>
|
||||
Add Task
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-paperclip mr-2"></i>
|
||||
Add Files
|
||||
</DropdownItem>
|
||||
<DropdownItem divider />
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-trash mr-2"></i>
|
||||
Delete
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
|
||||
TrTableTasksList.propTypes = {
|
||||
id: PropTypes.node
|
||||
};
|
||||
TrTableTasksList.defaultProps = {
|
||||
id: "1"
|
||||
};
|
||||
|
||||
export { TrTableTasksList };
|
3
app/routes/Apps/Tasks/index.js
Executable file
3
app/routes/Apps/Tasks/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Tasks from './Tasks';
|
||||
|
||||
export default Tasks;
|
323
app/routes/Apps/TasksDetails/TasksDetails.js
Executable file
323
app/routes/Apps/TasksDetails/TasksDetails.js
Executable file
@@ -0,0 +1,323 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Nav,
|
||||
NavItem,
|
||||
NavLink,
|
||||
Table,
|
||||
Button,
|
||||
Card,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
UncontrolledButtonDropdown,
|
||||
DropdownToggle,
|
||||
DropdownMenu,
|
||||
DropdownItem,
|
||||
Media,
|
||||
Input,
|
||||
InputGroup,
|
||||
CustomInput,
|
||||
InputGroupAddon,
|
||||
Badge,
|
||||
Avatar
|
||||
} from './../../../components';
|
||||
import { randomAvatar } from './../../../utilities';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
import { Attachment } from "../../components/Attachment";
|
||||
import { Comment } from "../../components/Comment";
|
||||
|
||||
const TasksDetails = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Tasks Details"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Header 1 */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
{ /* START Left Nav */}
|
||||
<div className="mb-5">
|
||||
<div className="small mb-3">
|
||||
Task Details
|
||||
</div>
|
||||
<Table size="sm">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td className="align-middle">Project</td>
|
||||
<td className="text-right">
|
||||
<a href="#" className="text-decoration-none">Analytics Redo</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">Assigned by</td>
|
||||
<td className="text-right">
|
||||
<a href="#" className="text-decoration-none">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">Start Date</td>
|
||||
<td className="text-right">
|
||||
Thu 12 May 2016
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">End Date</td>
|
||||
<td className="text-right">
|
||||
Wed 18 May 2016
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">Priority</td>
|
||||
<td className="text-right">
|
||||
<UncontrolledButtonDropdown>
|
||||
<DropdownToggle color="link" className="p-0 text-decoration-none">
|
||||
<i className="fa fa-circle text-success mr-2"></i>
|
||||
Small<i className="fa fa-angle-down ml-2" />
|
||||
</DropdownToggle>
|
||||
<DropdownMenu right>
|
||||
<DropdownItem header>Select Priority</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-danger mr-2"></i>
|
||||
Big
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-warning mr-2"></i>
|
||||
High
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-circle text-primary mr-2"></i>
|
||||
Normal
|
||||
</DropdownItem>
|
||||
<DropdownItem active>
|
||||
<i className="fa fa-circle text-success mr-2"></i>
|
||||
Small
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">Progress</td>
|
||||
<td className="align-middle text-right">
|
||||
30%
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">Task ID</td>
|
||||
<td className="align-middle text-right">
|
||||
# 6726746
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td className="align-middle">Date Assigned</td>
|
||||
<td className="align-middle text-right">
|
||||
Wed, 16 Dec 2015, 12:17 PM
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</Table>
|
||||
</div>
|
||||
{ /* END Left Nav */}
|
||||
{ /* START Left Nav */}
|
||||
<div className="mb-4">
|
||||
<div className="small mb-3">
|
||||
Assigned to
|
||||
</div>
|
||||
<Nav pills vertical>
|
||||
<NavItem>
|
||||
<NavLink href="#" className="d-flex">
|
||||
<Media>
|
||||
<Media left middle className="mr-3 align-self-center">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="mt-0">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</div>
|
||||
<span className="small">
|
||||
{ faker.address.state() }, { faker.address.stateAbbr() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
<i className="fa fa-fw fa-circle text-success ml-auto align-self-center ml-2"></i>
|
||||
</NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<NavLink href="#" className="d-flex">
|
||||
<Media>
|
||||
<Media left middle className="mr-3 align-self-center">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="mt-0">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</div>
|
||||
<span className="small">
|
||||
{ faker.address.state() }, { faker.address.stateAbbr() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
<i className="fa fa-fw fa-circle text-warning ml-auto align-self-center ml-2"></i>
|
||||
</NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<NavLink href="#" className="d-flex">
|
||||
<Media>
|
||||
<Media left middle className="mr-3 align-self-center">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="mt-0">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</div>
|
||||
<span className="small">
|
||||
{ faker.address.state() }, { faker.address.stateAbbr() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
<i className="fa fa-fw fa-circle text-danger ml-auto align-self-center ml-2"></i>
|
||||
</NavLink>
|
||||
</NavItem>
|
||||
<NavItem>
|
||||
<NavLink href="#">
|
||||
<i className="fa fa-fw fa-plus mr-2"></i>
|
||||
Add New People
|
||||
</NavLink>
|
||||
</NavItem>
|
||||
</Nav>
|
||||
</div>
|
||||
{ /* END Left Nav */}
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle="Tasks"
|
||||
subTitleLink="/apps/tasks/grid"
|
||||
title="Task Details"
|
||||
/>
|
||||
{ /* START Right Content */}
|
||||
<Card>
|
||||
<CardBody>
|
||||
<Media>
|
||||
<Media left href="#">
|
||||
<CustomInput type="checkbox" id="checkboxTaskDetails" label="" inline />
|
||||
</Media>
|
||||
<Media body>
|
||||
<div className="mb-3">
|
||||
<h5>
|
||||
<span className="mr-2">
|
||||
#{ faker.random.number() }
|
||||
</span>
|
||||
{ faker.hacker.phrase() }
|
||||
</h5>
|
||||
<Badge pill color="primary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color="secondary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
<Badge pill color="secondary" className="mr-1">
|
||||
{ faker.commerce.department() }
|
||||
</Badge>
|
||||
</div>
|
||||
</Media>
|
||||
</Media>
|
||||
<p className="lead">
|
||||
Animi ea magni voluptates accusamus laboriosam. Unde repellat hic id et aliquam ut qui dignissimos.
|
||||
</p>
|
||||
<p className="mb-4">
|
||||
{ faker.lorem.paragraphs() }
|
||||
</p>
|
||||
{ /* START Atachemnts */}
|
||||
<div className="mb-4">
|
||||
<div className="mb-3">
|
||||
<span className="small mr-3">
|
||||
Attachments
|
||||
</span>
|
||||
<Badge pill color="secondary">
|
||||
3
|
||||
</Badge>
|
||||
</div>
|
||||
<div className="mb-3">
|
||||
<Attachment
|
||||
icon="file-word-o"
|
||||
iconClassName="text-white"
|
||||
BgIconClassName="text-primary"
|
||||
/>
|
||||
</div>
|
||||
<div className="mb-3">
|
||||
<Attachment
|
||||
icon="file-excel-o"
|
||||
iconClassName="text-white"
|
||||
BgIconClassName="text-success"
|
||||
/>
|
||||
</div>
|
||||
<div className="mb-3">
|
||||
<Attachment
|
||||
icon="file-powerpoint-o"
|
||||
iconClassName="text-white"
|
||||
BgIconClassName="text-warning"
|
||||
/>
|
||||
</div>
|
||||
<div className="mb-5">
|
||||
<a href="#">
|
||||
<i className="fa fa-plus mr-2"></i>
|
||||
Add More Files to this Task
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
{ /* END Atachemnts */}
|
||||
<div className="mb-3">
|
||||
<span className="small mr-3">
|
||||
Comments
|
||||
</span>
|
||||
<Badge pill color="secondary">
|
||||
3
|
||||
</Badge>
|
||||
</div>
|
||||
<Comment />
|
||||
<Comment />
|
||||
{ /* END Comment Media */}
|
||||
</CardBody>
|
||||
<CardFooter>
|
||||
<InputGroup>
|
||||
<InputGroupAddon addonType="prepend">
|
||||
<Button color="secondary" outline>
|
||||
<i className="fa fa fa-paperclip"></i>
|
||||
</Button>
|
||||
</InputGroupAddon>
|
||||
<Input placeholder="Your message..." />
|
||||
<InputGroupAddon addonType="append">
|
||||
<Button color="primary">
|
||||
<i className="fa fa fa-send"></i>
|
||||
</Button>
|
||||
</InputGroupAddon>
|
||||
</InputGroup>
|
||||
</CardFooter>
|
||||
</Card>
|
||||
{ /* END Right Content */}
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Header 1 */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default TasksDetails;
|
3
app/routes/Apps/TasksDetails/index.js
Executable file
3
app/routes/Apps/TasksDetails/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import TasksDetails from './TasksDetails';
|
||||
|
||||
export default TasksDetails;
|
216
app/routes/Apps/TasksKanban/TasksKanban.js
Executable file
216
app/routes/Apps/TasksKanban/TasksKanban.js
Executable file
@@ -0,0 +1,216 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col,
|
||||
Card,
|
||||
CardTitle,
|
||||
CardBody,
|
||||
CardFooter,
|
||||
CardColumns,
|
||||
Badge,
|
||||
UncontrolledTooltip
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
import { TasksCardGrid } from "../../components/Tasks/TasksCardGrid";
|
||||
|
||||
const TasksKanban = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Tasks Kanban"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Header 1 */}
|
||||
<Row>
|
||||
<Col lg={ 12 }>
|
||||
<ProjectsSmHeader
|
||||
btnShowKanban
|
||||
linkList="/apps/tasks/list"
|
||||
linkGrid="/apps/tasks/grid"
|
||||
title="Tasks Kanban"
|
||||
subTitle="Projects"
|
||||
subTitleLink="/apps/projects/list"
|
||||
/>
|
||||
<CardColumns>
|
||||
{ /* START Card */}
|
||||
<Card>
|
||||
<CardBody>
|
||||
{ /* START Card Header */}
|
||||
<div className="mb-4">
|
||||
<CardTitle tag="h6">
|
||||
To-Do
|
||||
<Badge pill color="secondary" className="ml-2">
|
||||
3
|
||||
</Badge>
|
||||
</CardTitle>
|
||||
<span className="small d-flex">
|
||||
16 Jun 2016 - 23 Aug 2016
|
||||
<span className="ml-auto">
|
||||
<a href="#" className="mr-2" id="TooltipSettings">
|
||||
<i className="fa fa-gear"></i>
|
||||
</a>
|
||||
<a href="#" className="mr-2" id="TooltipCollapse">
|
||||
<i className="fa fa-angle-down"></i>
|
||||
</a>
|
||||
<a href="#" id="TooltipAddNew">
|
||||
<i className="fa fa-plus"></i>
|
||||
</a>
|
||||
<UncontrolledTooltip placement="top" target="TooltipSettings">
|
||||
Settings
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="top" target="TooltipSettings">
|
||||
Collapse
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="top" target="TooltipAddNew">
|
||||
Add New
|
||||
</UncontrolledTooltip>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
{ /* END CardHeader */}
|
||||
<TasksCardGrid />
|
||||
<TasksCardGrid
|
||||
id="2"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="3"
|
||||
/>
|
||||
</CardBody>
|
||||
{ /* START Card Footer */}
|
||||
<CardFooter className="text-center">
|
||||
<a href="#">
|
||||
<i className="fa fa-plus text-success mr-2"></i>
|
||||
Add Task
|
||||
</a>
|
||||
</CardFooter>
|
||||
{ /* END Card Footer */}
|
||||
</Card>
|
||||
{ /* END Card */}
|
||||
{ /* START Card */}
|
||||
<Card>
|
||||
<CardBody>
|
||||
{ /* START Card Header */}
|
||||
<div className="mb-4">
|
||||
<CardTitle tag="h6">
|
||||
Doing
|
||||
<Badge pill color="secondary" className="ml-2">
|
||||
2
|
||||
</Badge>
|
||||
</CardTitle>
|
||||
<span className="small d-flex">
|
||||
16 Jun 2016 - 23 Aug 2016
|
||||
<span className="ml-auto">
|
||||
<a href="#" className="mr-2" id="TooltipSettings">
|
||||
<i className="fa fa-gear"></i>
|
||||
</a>
|
||||
<a href="#" className="mr-2" id="TooltipCollapse">
|
||||
<i className="fa fa-angle-down"></i>
|
||||
</a>
|
||||
<a href="#" id="TooltipAddNew">
|
||||
<i className="fa fa-plus"></i>
|
||||
</a>
|
||||
<UncontrolledTooltip placement="top" target="TooltipSettings">
|
||||
Settings
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="top" target="TooltipSettings">
|
||||
Collapse
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="top" target="TooltipAddNew">
|
||||
Add New
|
||||
</UncontrolledTooltip>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
{ /* END CardHeader */}
|
||||
<TasksCardGrid
|
||||
id="4"
|
||||
/>
|
||||
<TasksCardGrid
|
||||
id="5"
|
||||
/>
|
||||
</CardBody>
|
||||
{ /* START Card Footer */}
|
||||
<CardFooter className="text-center">
|
||||
<a href="#">
|
||||
<i className="fa fa-plus text-success mr-2"></i>
|
||||
Add Task
|
||||
</a>
|
||||
</CardFooter>
|
||||
{ /* END Card Footer */}
|
||||
</Card>
|
||||
{ /* END Card */}
|
||||
{ /* START Card */}
|
||||
<Card>
|
||||
<CardBody>
|
||||
{ /* START Card Header */}
|
||||
<div className="mb-4">
|
||||
<CardTitle tag="h6">
|
||||
Done
|
||||
<Badge pill color="secondary" className="ml-2">
|
||||
1
|
||||
</Badge>
|
||||
</CardTitle>
|
||||
<span className="small d-flex">
|
||||
16 Jun 2016 - 23 Aug 2016
|
||||
<span className="ml-auto">
|
||||
<a href="#" className="mr-2" id="TooltipSettings">
|
||||
<i className="fa fa-gear"></i>
|
||||
</a>
|
||||
<a href="#" className="mr-2" id="TooltipCollapse">
|
||||
<i className="fa fa-angle-down"></i>
|
||||
</a>
|
||||
<a href="#" id="TooltipAddNew">
|
||||
<i className="fa fa-plus"></i>
|
||||
</a>
|
||||
<UncontrolledTooltip placement="top" target="TooltipSettings">
|
||||
Settings
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="top" target="TooltipSettings">
|
||||
Collapse
|
||||
</UncontrolledTooltip>
|
||||
<UncontrolledTooltip placement="top" target="TooltipAddNew">
|
||||
Add New
|
||||
</UncontrolledTooltip>
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
{ /* END CardHeader */}
|
||||
<TasksCardGrid
|
||||
id="6"
|
||||
/>
|
||||
</CardBody>
|
||||
{ /* START Card Footer */}
|
||||
<CardFooter className="text-center">
|
||||
<a href="#">
|
||||
<i className="fa fa-plus text-success mr-2"></i>
|
||||
Add Task
|
||||
</a>
|
||||
</CardFooter>
|
||||
{ /* END Card Footer */}
|
||||
</Card>
|
||||
{ /* END Card */}
|
||||
{ /* START Card */}
|
||||
<Card type="border-dash">
|
||||
<CardBody className="d-flex align-items-center justify-content-center">
|
||||
<a href="#" className="py-5">
|
||||
<i className="fa fa-plus text-success mr-2"></i>
|
||||
Add New Column
|
||||
</a>
|
||||
</CardBody>
|
||||
</Card>
|
||||
{ /* END Card */}
|
||||
</CardColumns>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Header 1 */}
|
||||
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default TasksKanban;
|
3
app/routes/Apps/TasksKanban/index.js
Executable file
3
app/routes/Apps/TasksKanban/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import TasksKanban from './TasksKanban';
|
||||
|
||||
export default TasksKanban;
|
48
app/routes/Apps/Users/Users.js
Executable file
48
app/routes/Apps/Users/Users.js
Executable file
@@ -0,0 +1,48 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import UsersList from './UsersList';
|
||||
import UsersGrid from './UsersGrid';
|
||||
import { UsersLeftNav } from "../../components/Users/UsersLeftNav";
|
||||
import { ProjectsSmHeader } from "../../components/Projects/ProjectsSmHeader";
|
||||
|
||||
const Users = (props) => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Users"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<UsersLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<ProjectsSmHeader
|
||||
subTitle={props.match.params.type === "list"?"Users List":"Users Grid"}
|
||||
linkList="/apps/users/list"
|
||||
linkGrid="/apps/users/grid"
|
||||
/>
|
||||
|
||||
{
|
||||
props.match.params.type === "list" ?
|
||||
<UsersList /> :
|
||||
<UsersGrid />
|
||||
}
|
||||
</Col>
|
||||
</Row>
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
Users.propTypes = {
|
||||
match: PropTypes.object.isRequired
|
||||
};
|
||||
|
||||
|
||||
export default Users;
|
51
app/routes/Apps/Users/UsersGrid.js
Executable file
51
app/routes/Apps/Users/UsersGrid.js
Executable file
@@ -0,0 +1,51 @@
|
||||
import React from 'react';
|
||||
|
||||
import { CardColumns } from './../../../components';
|
||||
import { UsersCardGrid } from "../../components/Users/UsersCardGrid";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const UsersGrid = () => (
|
||||
<React.Fragment>
|
||||
<CardColumns>
|
||||
<UsersCardGrid />
|
||||
<UsersCardGrid
|
||||
id="2"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="3"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="4"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="5"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="6"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="7"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="8"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="9"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="10"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="11"
|
||||
/>
|
||||
<UsersCardGrid
|
||||
id="12"
|
||||
/>
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default UsersGrid;
|
71
app/routes/Apps/Users/UsersList.js
Executable file
71
app/routes/Apps/Users/UsersList.js
Executable file
@@ -0,0 +1,71 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Card,
|
||||
CardFooter,
|
||||
Table,
|
||||
} from './../../../components';
|
||||
|
||||
import {
|
||||
TrTableUsersList
|
||||
} from "./components/TrTableUsersList";
|
||||
|
||||
import {
|
||||
Paginations
|
||||
} from "../../components/Paginations";
|
||||
|
||||
const UsersList = () => (
|
||||
<Card className="mb-3">
|
||||
{ /* START Table */}
|
||||
<div className="table-responsive-xl">
|
||||
<Table className="mb-0" hover>
|
||||
<thead>
|
||||
<tr>
|
||||
<th className="align-middle bt-0"></th>
|
||||
<th className="align-middle bt-0"></th>
|
||||
<th className="align-middle bt-0">Name</th>
|
||||
<th className="align-middle bt-0">Email</th>
|
||||
<th className="align-middle bt-0">Phone</th>
|
||||
<th className="align-middle bt-0 text-right">
|
||||
Actions
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<TrTableUsersList />
|
||||
<TrTableUsersList
|
||||
id="2"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="3"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="4"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="5"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="6"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="7"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="8"
|
||||
/>
|
||||
<TrTableUsersList
|
||||
id="9"
|
||||
/>
|
||||
</tbody>
|
||||
</Table>
|
||||
</div>
|
||||
{ /* END Table */}
|
||||
<CardFooter className="d-flex justify-content-center pb-0">
|
||||
<Paginations />
|
||||
</CardFooter>
|
||||
</Card>
|
||||
|
||||
);
|
||||
|
||||
export default UsersList;
|
176
app/routes/Apps/Users/components/TrTableUsersList.js
Executable file
176
app/routes/Apps/Users/components/TrTableUsersList.js
Executable file
@@ -0,0 +1,176 @@
|
||||
import React from 'react';
|
||||
import faker from 'faker/locale/en_US';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import {
|
||||
Media,
|
||||
Avatar,
|
||||
AvatarAddOn,
|
||||
CustomInput,
|
||||
UncontrolledButtonDropdown,
|
||||
DropdownToggle,
|
||||
DropdownMenu,
|
||||
DropdownItem
|
||||
} from './../../../../components';
|
||||
|
||||
import { randomArray, randomAvatar } from './../../../../utilities';
|
||||
|
||||
const TrTableUsersList = (props) => {
|
||||
|
||||
const avatar = [
|
||||
[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="facebook"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-facebook"
|
||||
color="white"
|
||||
key="avatar-icon-fg"
|
||||
small
|
||||
/>
|
||||
],
|
||||
[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="twitter"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-twitter"
|
||||
color="white"
|
||||
key="avatar-icon-fg"
|
||||
small
|
||||
/>
|
||||
],
|
||||
[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="linkedin"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-linkedin"
|
||||
color="white"
|
||||
key="avatar-icon-fg"
|
||||
small
|
||||
/>
|
||||
],
|
||||
[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="foursquare"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-foursquare"
|
||||
color="white"
|
||||
key="avatar-icon-fg"
|
||||
small
|
||||
/>
|
||||
],
|
||||
[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="paypal"
|
||||
key="avatar-icon-bg"
|
||||
/>,
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-paypal"
|
||||
color="white"
|
||||
key="avatar-icon-fg"
|
||||
small
|
||||
/>
|
||||
],
|
||||
];
|
||||
return (
|
||||
<React.Fragment>
|
||||
<tr>
|
||||
<td className="align-middle">
|
||||
<CustomInput type="checkbox" id={`TrTableUsersList-${ props.id }` } label="" inline />
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
<a href="#">
|
||||
<i className="fa fa-fw fa-star-o"></i>
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<Media>
|
||||
<Media left className="d-flex align-self-center mr-3">
|
||||
<Avatar.Image
|
||||
size="md"
|
||||
src={ randomAvatar() }
|
||||
className="align-self-center"
|
||||
addOns={[
|
||||
<AvatarAddOn.Icon
|
||||
className="fa fa-circle"
|
||||
color="white"
|
||||
key="avatar-icon-white-bg"
|
||||
/>,
|
||||
...randomArray(avatar)
|
||||
]}
|
||||
/>
|
||||
</Media>
|
||||
<Media body>
|
||||
<a className="mt-0 d-flex text-decoration-none" href="#">
|
||||
{ faker.name.firstName() } { faker.name.lastName() }
|
||||
</a>
|
||||
<span>
|
||||
{ faker.name.jobTitle() }
|
||||
</span>
|
||||
</Media>
|
||||
</Media>
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ faker.internet.email() }
|
||||
</td>
|
||||
<td className="align-middle">
|
||||
{ faker.phone.phoneNumberFormat() }
|
||||
</td>
|
||||
<td className="align-middle text-right">
|
||||
<UncontrolledButtonDropdown>
|
||||
<DropdownToggle color="link" className="pr-0">
|
||||
<i className="fa fa-bars"></i><i className="fa fa-angle-down ml-2" />
|
||||
</DropdownToggle>
|
||||
<DropdownMenu right>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-phone mr-2"></i>
|
||||
Call
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-comment mr-2"></i>
|
||||
Chat
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-video-camera mr-2"></i>
|
||||
Video
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-user mr-2"></i>
|
||||
Profile
|
||||
</DropdownItem>
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-pencil mr-2"></i>
|
||||
Edit
|
||||
</DropdownItem>
|
||||
<DropdownItem divider />
|
||||
<DropdownItem>
|
||||
<i className="fa fa-fw fa-trash mr-2"></i>
|
||||
Delete
|
||||
</DropdownItem>
|
||||
</DropdownMenu>
|
||||
</UncontrolledButtonDropdown>
|
||||
</td>
|
||||
</tr>
|
||||
</React.Fragment>
|
||||
)
|
||||
}
|
||||
TrTableUsersList.propTypes = {
|
||||
id: PropTypes.node
|
||||
};
|
||||
TrTableUsersList.defaultProps = {
|
||||
id: "1"
|
||||
};
|
||||
|
||||
export { TrTableUsersList };
|
3
app/routes/Apps/Users/index.js
Executable file
3
app/routes/Apps/Users/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import Users from './Users';
|
||||
|
||||
export default Users;
|
50
app/routes/Apps/UsersResults/UsersResults.js
Executable file
50
app/routes/Apps/UsersResults/UsersResults.js
Executable file
@@ -0,0 +1,50 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
CardColumns,
|
||||
Col
|
||||
} from './../../../components';
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { SearchResultsLeftNav } from "../../components/SearchResults/SearchResultsLeftNav";
|
||||
import { SearchResultsHeader } from "../../components/SearchResults/SearchResultsHeader";
|
||||
import { UsersResultsCard } from "../../components/SearchResults/UsersResultsCard";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const UsersResults = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Users Results"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<SearchResultsLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<SearchResultsHeader />
|
||||
<CardColumns>
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
<UsersResultsCard />
|
||||
</CardColumns>
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default UsersResults;
|
3
app/routes/Apps/UsersResults/index.js
Executable file
3
app/routes/Apps/UsersResults/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import UsersResults from './UsersResults';
|
||||
|
||||
export default UsersResults;
|
45
app/routes/Apps/VideosResults/VideosResults.js
Executable file
45
app/routes/Apps/VideosResults/VideosResults.js
Executable file
@@ -0,0 +1,45 @@
|
||||
import React from 'react';
|
||||
|
||||
import {
|
||||
Container,
|
||||
Row,
|
||||
Col
|
||||
} from './../../../components';
|
||||
|
||||
import { HeaderMain } from "../../components/HeaderMain";
|
||||
import { SearchResultsLeftNav } from "../../components/SearchResults/SearchResultsLeftNav";
|
||||
import { SearchResultsHeader } from "../../components/SearchResults/SearchResultsHeader";
|
||||
import { VideosResultsCard } from "../../components/SearchResults/VideosResultsCard";
|
||||
import { Paginations } from "../../components/Paginations";
|
||||
|
||||
const VideosResults = () => (
|
||||
<React.Fragment>
|
||||
<Container>
|
||||
<HeaderMain
|
||||
title="Videos Results"
|
||||
className="mb-5 mt-4"
|
||||
/>
|
||||
{ /* START Content */}
|
||||
<Row>
|
||||
<Col lg={ 3 }>
|
||||
<SearchResultsLeftNav />
|
||||
</Col>
|
||||
<Col lg={ 9 }>
|
||||
<SearchResultsHeader />
|
||||
<VideosResultsCard />
|
||||
<VideosResultsCard />
|
||||
<VideosResultsCard />
|
||||
<VideosResultsCard />
|
||||
<VideosResultsCard />
|
||||
<VideosResultsCard />
|
||||
<div className="d-flex justify-content-center">
|
||||
<Paginations />
|
||||
</div>
|
||||
</Col>
|
||||
</Row>
|
||||
{ /* END Content */}
|
||||
</Container>
|
||||
</React.Fragment>
|
||||
);
|
||||
|
||||
export default VideosResults;
|
3
app/routes/Apps/VideosResults/index.js
Executable file
3
app/routes/Apps/VideosResults/index.js
Executable file
@@ -0,0 +1,3 @@
|
||||
import VideosResults from './VideosResults';
|
||||
|
||||
export default VideosResults;
|
Reference in New Issue
Block a user