index.js 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. import React, { Component } from "react";
  2. import BasePage from "@/components/Layout/BasePage";
  3. import {
  4. Row,
  5. Col,
  6. Navbar,
  7. NavItem,
  8. NavLink,
  9. NavbarBrand,
  10. NavbarToggler,
  11. Nav,
  12. Collapse,
  13. Jumbotron,
  14. Button,
  15. } from "reactstrap";
  16. import ContentWrapper from "@/components/Layout/ContentWrapper";
  17. import Link from "next/link";
  18. import Login from "@/components/Main/Login";
  19. const menu = [
  20. {
  21. title: "Home",
  22. path: "/app",
  23. },
  24. {
  25. title: "Buat Laporan",
  26. path: "/laporan/new",
  27. },
  28. {
  29. title: "Pemantauan",
  30. path: "/pemantauan",
  31. },
  32. ];
  33. class App extends Component {
  34. constructor(props) {
  35. super(props);
  36. this.state = {
  37. isOpen: false,
  38. };
  39. }
  40. static getInitialProps = ({ pathname }) => ({ pathname });
  41. toggleCollapse = () => {
  42. this.setState({
  43. isOpen: !this.state.isOpen,
  44. });
  45. };
  46. render() {
  47. return (
  48. <div>
  49. <Navbar className="navbar-color" expand="md" dark>
  50. <NavbarBrand href="/">
  51. <img
  52. className="width-133"
  53. src="/static/img/Logo-Sidali.png"
  54. alt="App Logo"
  55. />
  56. </NavbarBrand>
  57. <NavbarToggler onClick={this.toggleCollapse} />
  58. <Collapse isOpen={this.state.isOpen} navbar>
  59. <Nav className="ml-auto" navbar>
  60. {menu.map((e) => (
  61. <NavItem active={e.path === this.props.pathname ? true : false}>
  62. <Link href={e.path}>
  63. <NavLink style={{ cursor: "pointer" }}>{e.title}</NavLink>
  64. </Link>
  65. </NavItem>
  66. ))}
  67. </Nav>
  68. </Collapse>
  69. </Navbar>
  70. <ContentWrapper>
  71. <Jumbotron>
  72. <Row className="home-1">
  73. <Col
  74. lg={8}
  75. className="d-flex flex-column justify-content-center align-items-start"
  76. >
  77. <h1 className="display-5 home-2 txt-size">
  78. Sistem Informasi Pengendalian Kelembagaan Perguruan Tinggi
  79. pada Pendidikan Tinggi Akademik
  80. </h1>
  81. <p className="lead txt-size">
  82. Layanan Pelaporan Pelanggaran Perguruan Tinggi Penyelenggara
  83. Pendidikan Tinggi Akademik
  84. </p>
  85. <hr className="my-4" />
  86. <p className="txt-size">
  87. Disediakan kepada masyarakat untuk melaporkan pelanggaran
  88. perguruan tinggi yang menyelenggarakan pendidikan tinggi
  89. akademik
  90. </p>
  91. <p className="lead">
  92. {/* <Link href="/laporan/new">
  93. <button className="btn btn-info btn-lg"><img className="icon-buatlaporan" src="/static/img/icon-buat-laporan.png" alt="icon"/>Buat Laporan</button>
  94. </Link> */}
  95. <Link href="/laporan/new">
  96. <span className="btn-radius">
  97. <Button color="" className="btn-labeled">
  98. <span className="btn-label">
  99. <img
  100. className="icon-buatlaporan"
  101. src="/static/img/icon-buat-laporan.png"
  102. alt="icon"
  103. />
  104. </span>
  105. <text className="text-button-home-1 font-color-white">
  106. Buat Laporan
  107. </text>
  108. </Button>
  109. </span>
  110. </Link>
  111. <Link href="/pemantauan">
  112. <span className="btn-radius">
  113. <Button color className="btn-labeled-2">
  114. <span className="btn-label">
  115. <img
  116. className="icon-pemantauan"
  117. src="/static/img/icon-pemantauan.png"
  118. alt="icon"
  119. />
  120. </span>
  121. <text className="text-button-home-1 font-color-white">
  122. Pemantauan
  123. </text>
  124. </Button>
  125. </span>
  126. </Link>
  127. </p>
  128. <div>
  129. <img
  130. className="ditbaga-logo"
  131. src="/static/img/ditbaga-logo.png"
  132. alt="applogo"
  133. />
  134. </div>
  135. </Col>
  136. <Col>
  137. <Login />
  138. </Col>
  139. </Row>
  140. </Jumbotron>
  141. </ContentWrapper>
  142. </div>
  143. );
  144. }
  145. }
  146. App.Layout = BasePage;
  147. export default App;