diff --git a/package-lock.json b/package-lock.json
index 895b0bb9210a61f22b4f30d0cd4ac7a5514222c3..5759af94eb14ea75d249fd305293b620435f6102 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3934,6 +3934,12 @@
         "node-int64": "^0.4.0"
       }
     },
+    "btoa": {
+      "version": "1.2.1",
+      "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz",
+      "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==",
+      "dev": true
+    },
     "buffer": {
       "version": "4.9.2",
       "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
@@ -5815,6 +5821,15 @@
       "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
       "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
     },
+    "ejs": {
+      "version": "3.1.6",
+      "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.6.tgz",
+      "integrity": "sha512-9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==",
+      "dev": true,
+      "requires": {
+        "jake": "^10.6.1"
+      }
+    },
     "electron-to-chromium": {
       "version": "1.3.473",
       "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.473.tgz",
@@ -5981,6 +5996,12 @@
         "is-symbol": "^1.0.2"
       }
     },
+    "escalade": {
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
+      "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
+      "dev": true
+    },
     "escape-html": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
@@ -7014,6 +7035,15 @@
         "utils-extend": "^1.0.4"
       }
     },
+    "filelist": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.2.tgz",
+      "integrity": "sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==",
+      "dev": true,
+      "requires": {
+        "minimatch": "^3.0.4"
+      }
+    },
     "filename-regex": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
@@ -9307,6 +9337,12 @@
       "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz",
       "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE="
     },
+    "is-docker": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
+      "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
+      "dev": true
+    },
     "is-dotfile": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
@@ -9620,6 +9656,26 @@
         "handlebars": "^4.0.3"
       }
     },
+    "jake": {
+      "version": "10.8.2",
+      "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.2.tgz",
+      "integrity": "sha512-eLpKyrfG3mzvGE2Du8VoPbeSkRry093+tyNjdYaBbJS9v17knImYGNXQCUV0gLxQtF82m3E8iRb/wdSQZLoq7A==",
+      "dev": true,
+      "requires": {
+        "async": "0.9.x",
+        "chalk": "^2.4.2",
+        "filelist": "^1.0.1",
+        "minimatch": "^3.0.4"
+      },
+      "dependencies": {
+        "async": {
+          "version": "0.9.2",
+          "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz",
+          "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=",
+          "dev": true
+        }
+      }
+    },
     "jest": {
       "version": "23.6.0",
       "resolved": "https://registry.npmjs.org/jest/-/jest-23.6.0.tgz",
@@ -13362,6 +13418,27 @@
         "mimic-fn": "^1.0.0"
       }
     },
+    "open": {
+      "version": "7.4.2",
+      "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz",
+      "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==",
+      "dev": true,
+      "requires": {
+        "is-docker": "^2.0.0",
+        "is-wsl": "^2.1.1"
+      },
+      "dependencies": {
+        "is-wsl": {
+          "version": "2.2.0",
+          "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+          "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
+          "dev": true,
+          "requires": {
+            "is-docker": "^2.0.0"
+          }
+        }
+      }
+    },
     "opn": {
       "version": "5.4.0",
       "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz",
@@ -19018,6 +19095,191 @@
       "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
       "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w="
     },
+    "source-map-explorer": {
+      "version": "2.5.2",
+      "resolved": "https://registry.npmjs.org/source-map-explorer/-/source-map-explorer-2.5.2.tgz",
+      "integrity": "sha512-gBwOyCcHPHcdLbgw6Y6kgoH1uLKL6hN3zz0xJcNI2lpnElZliIlmSYAjUVwAWnc7+HscoTyh1ScR7ITtFuEnxg==",
+      "dev": true,
+      "requires": {
+        "btoa": "^1.2.1",
+        "chalk": "^4.1.0",
+        "convert-source-map": "^1.7.0",
+        "ejs": "^3.1.5",
+        "escape-html": "^1.0.3",
+        "glob": "^7.1.6",
+        "gzip-size": "^6.0.0",
+        "lodash": "^4.17.20",
+        "open": "^7.3.1",
+        "source-map": "^0.7.3",
+        "temp": "^0.9.4",
+        "yargs": "^16.2.0"
+      },
+      "dependencies": {
+        "ansi-regex": {
+          "version": "5.0.0",
+          "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
+          "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
+          "dev": true
+        },
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.1",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
+          "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "cliui": {
+          "version": "7.0.4",
+          "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+          "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+          "dev": true,
+          "requires": {
+            "string-width": "^4.2.0",
+            "strip-ansi": "^6.0.0",
+            "wrap-ansi": "^7.0.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        },
+        "duplexer": {
+          "version": "0.1.2",
+          "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
+          "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
+          "dev": true
+        },
+        "emoji-regex": {
+          "version": "8.0.0",
+          "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+          "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+          "dev": true
+        },
+        "get-caller-file": {
+          "version": "2.0.5",
+          "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+          "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+          "dev": true
+        },
+        "gzip-size": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz",
+          "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==",
+          "dev": true,
+          "requires": {
+            "duplexer": "^0.1.2"
+          }
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "3.0.0",
+          "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+          "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+          "dev": true
+        },
+        "source-map": {
+          "version": "0.7.3",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
+          "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
+          "dev": true
+        },
+        "string-width": {
+          "version": "4.2.2",
+          "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz",
+          "integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==",
+          "dev": true,
+          "requires": {
+            "emoji-regex": "^8.0.0",
+            "is-fullwidth-code-point": "^3.0.0",
+            "strip-ansi": "^6.0.0"
+          }
+        },
+        "strip-ansi": {
+          "version": "6.0.0",
+          "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
+          "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
+          "dev": true,
+          "requires": {
+            "ansi-regex": "^5.0.0"
+          }
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        },
+        "wrap-ansi": {
+          "version": "7.0.0",
+          "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+          "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^4.0.0",
+            "string-width": "^4.1.0",
+            "strip-ansi": "^6.0.0"
+          }
+        },
+        "y18n": {
+          "version": "5.0.8",
+          "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+          "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+          "dev": true
+        },
+        "yargs": {
+          "version": "16.2.0",
+          "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+          "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+          "dev": true,
+          "requires": {
+            "cliui": "^7.0.2",
+            "escalade": "^3.1.1",
+            "get-caller-file": "^2.0.5",
+            "require-directory": "^2.1.1",
+            "string-width": "^4.2.0",
+            "y18n": "^5.0.5",
+            "yargs-parser": "^20.2.2"
+          }
+        },
+        "yargs-parser": {
+          "version": "20.2.9",
+          "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
+          "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
+          "dev": true
+        }
+      }
+    },
     "source-map-resolve": {
       "version": "0.5.3",
       "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
@@ -19680,6 +19942,16 @@
       "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz",
       "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA=="
     },
+    "temp": {
+      "version": "0.9.4",
+      "resolved": "https://registry.npmjs.org/temp/-/temp-0.9.4.tgz",
+      "integrity": "sha512-yYrrsWnrXMcdsnu/7YMYAofM1ktpL5By7vZhf15CrXijWWrEYZks5AXBudalfSWJLlnen/QUJUB5aoB0kqZUGA==",
+      "dev": true,
+      "requires": {
+        "mkdirp": "^0.5.1",
+        "rimraf": "~2.6.2"
+      }
+    },
     "terser": {
       "version": "3.17.0",
       "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz",
diff --git a/package.json b/package.json
index cadd5e71c3925e3a64a0d386e886b374bbe37e5f..6a21760714ff3d963b0a965899970ae86e670018 100644
--- a/package.json
+++ b/package.json
@@ -59,7 +59,8 @@
     "eslint-plugin-prettier": "^3.1.2",
     "eslint-plugin-react": "^7.21.5",
     "eslint-plugin-react-hooks": "^1.6.1",
-    "prettier": "1.18.2"
+    "prettier": "1.18.2",
+    "source-map-explorer": "^2.5.2"
   },
   "watch": {
     "build": {
@@ -70,6 +71,7 @@
     }
   },
   "scripts": {
+    "analyze": "NODE_PATH=src/ source-map-explorer 'build/static/js/*.js'",
     "start": "NODE_PATH=src/ PORT=4000 react-scripts start watch",
     "build": "NODE_PATH=src/ react-scripts build",
     "test": "NODE_PATH=src/ react-scripts test",
diff --git a/src/Admin/Components/Components/AdminTemplate.js b/src/Admin/Components/Components/AdminTemplate.js
new file mode 100644
index 0000000000000000000000000000000000000000..3677dea35865b67356093efd63ad77b8ed6332ab
--- /dev/null
+++ b/src/Admin/Components/Components/AdminTemplate.js
@@ -0,0 +1,64 @@
+/*Copyright (C) 2019 Centro de Computacao Cientifica e Software Livre
+Departamento de Informatica - Universidade Federal do Parana
+
+This file is part of Plataforma Integrada MEC.
+
+Plataforma Integrada MEC is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+Plataforma Integrada MEC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU Affero General Public License for more details.
+
+You should have received a copy of the GNU Affero General Public License
+along with Plataforma Integrada MEC.  If not, see <http://www.gnu.org/licenses/>.*/
+
+import React, { useContext } from "react";
+import { Store } from 'Store'
+
+const Unauthorized = React.lazy(() => import('./Unauthorized'));
+const AppBarAdmin = React.lazy(() => import('./AppBar'));
+
+const AdminTemplate = (props) => {
+
+    const { state } = useContext(Store);
+
+    const CheckUserPermission = () => {
+        let canUserEdit = false;
+    
+        if (state.userIsLoggedIn) {
+            const roles = [...state.currentUser.roles];
+            for (let i = 0; i < roles.length; i++)
+                if (roles[i].name === 'admin' || roles[i].name === 'editor')
+                canUserEdit = true;
+        }
+        else {
+        canUserEdit = false;
+        }
+    
+        return canUserEdit;
+    }
+
+    if (CheckUserPermission())
+        return (
+            <div style={{ backgroundColor: "	#D3D3D3" }}>
+                <AppBarAdmin />
+                <div style={{ padding: "2em" }}>
+                    {props.inner}
+                </div>
+            </div>
+        )
+    else
+        return (
+            <div style={{ backgroundColor: "	#D3D3D3" }}>
+                <div style={{ padding: "2em" }}>
+                    <Unauthorized />
+                </div>
+            </div>
+        )
+}
+
+export default AdminTemplate;
\ No newline at end of file
diff --git a/src/App.js b/src/App.js
index 5bd3940a0de9b84e293a8ac8c591f401fa1a82c1..62667f3e08edbe6c56da270c593152e29f788bc6 100644
--- a/src/App.js
+++ b/src/App.js
@@ -25,7 +25,7 @@ import { BrowserRouter, Switch, Route, Redirect } from "react-router-dom";
 import Header from "./Components/Header";
 import createBrowserHistory from 'history/createBrowserHistory'
 
-const Unauthorized = React.lazy(() => import('./Admin/Components/Components/Unauthorized'));
+const AdminTemplate = React.lazy(() => import('./Admin/Components/Components/AdminTemplate'));
 const Home = React.lazy(() => import('./Pages/HomeFunction'));
 const Search = React.lazy(() => import("./Pages/Search"));
 const EcFooter = React.lazy(() => import("./Components/EcFooter"));
@@ -58,6 +58,7 @@ const FormationMaterialPage = React.lazy(() => import("./Pages/FormationMaterial
 const FormationMaterialIframe = React.lazy(() => import("./Pages/FormationMaterialIframe.js"));
 const MaterialPage = React.lazy(() => import("./Pages/MaterialPage"));
 const PageNotFound = React.lazy(() => import("./Pages/PageNotFound.js"));
+
 const NoteVariables = React.lazy(() => import("./Admin/Pages/Pages/SubPages/NoteVariables"));
 const Institution = React.lazy(() => import("./Admin/Pages/Pages/SubPages/Institutions"));
 const SendEmail = React.lazy(() => import("./Admin/Pages/Pages/SubPages/SendEmail"));
@@ -96,87 +97,6 @@ const UserPermissions = React.lazy(() => import("./Admin/Pages/Pages/SubPages/Pe
 const EditRole = React.lazy(() => import("./Admin/Components/Components/Inputs/EditRoles"));
 const CreateRole = React.lazy(() => import("./Admin/Components/Components/Inputs/CreateRole"));
 const BlockedUser = React.lazy(() => import("./Admin/Pages/Pages/SubPages/BlockedUsers"));
-const AppBarAdmin = React.lazy(() => import('./Admin/Components/Components/AppBar'));
-
-
-/*
-import Unauthorized from './Admin/Components/Components/Unauthorized'
-import Home from "./Pages/HomeFunction";
-import Search from "./Pages/Search";
-import Header from "./Components/Header";
-import EcFooter from "./Components/EcFooter";
-import GNUAGPLfooter from "./Components/AGPLFooter";
-import UserPage from "./Pages/UserPage";
-import UserTerms from "./Pages/UserTerms";
-import Contact from "./Pages/Contact";
-import Teste from "./Pages/Teste";
-import AboutPage from "./Pages/AboutPage";
-import HelpCenter from "./Pages/HelpCenter";
-import TabResoursePub from "./Pages/TabsHelp/TabResoursePub";
-import TabResourseFind from "./Pages/TabsHelp/TabResourseFind";
-import TabNetPart from "./Pages/TabsHelp/TabNetPart";
-import TabManageAc from "./Pages/TabsHelp/TabManageAc";
-import PasswordRecoveryPage from "./Pages/PasswordRecoveryPage.js";
-import PageProfessor from "./Pages/PageProfessor.js";
-import ResourcePage from "./Pages/ResourcePage";
-import { BrowserRouter, Switch, Route, Redirect } from "react-router-dom";
-import TermsPage from "./Pages/TermsPage.js";
-import PublicationPermissionsPage from "./Pages/PublicationPermissionsPage.js";
-import TabPlataformaMEC from "./Pages/TabsHelp/TabPlataformaMEC";
-import ItemStore from "./Pages/ItemStore.js";
-import EditProfilePage from "./Pages/EditProfilePage.js";
-import PublicUserPage from "./Pages/PublicUserPage.js";
-import UploadPage from "./Pages/UploadPage.js";
-import EditLearningObjectPage from "./Pages/EditLearningObjectPage.js";
-import SiteMap from "./Pages/SiteMap";
-import Accessibility from "./Pages/Accessibility";
-import CollectionPage from "./Pages/CollectionPage.js";
-import FormationMaterialPage from "./Pages/FormationMaterialPage.js";
-import FormationMaterialIframe from "./Pages/FormationMaterialIframe.js";
-import MaterialPage from "./Pages/MaterialPage";
-import PageNotFound from "./Pages/PageNotFound.js";
-
-import NoteVariables from "./Admin/Pages/Pages/SubPages/NoteVariables";
-import Institution from "./Admin/Pages/Pages/SubPages/Institutions";
-import SendEmail from "./Admin/Pages/Pages/SubPages/SendEmail";
-import Inframe from "./Admin/Pages/Pages/SubPages/Inframe";
-import Languages from "./Admin/Pages/Pages/SubPages/Languages";
-import Activity from "./Admin/Pages/Pages/SubPages/Activity";
-import InstitutionCard from "./Admin/Components/Components/DataCards/InstitutionsCard";
-import InstitutionsInput from "./Admin/Components/Components/Inputs/IntitutionsInputs";
-import CreateInstitution from "./Admin/Components/Components/Inputs/CreateInstitution";
-import NoteVarCard from "./Admin/Components/Components/DataCards/NoteVarCard";
-import NoteVarInputs from "./Admin/Components/Components/Inputs/NoteVarInputs";
-import EditLanguage from "./Admin/Components/Components/Inputs/EditLanguage";
-import CreateLanguage from "./Admin/Components/Components/Inputs/CreateLanguage";
-import ActivityCard from "./Admin/Components/Components/DataCards/ActivityCard";
-import CommunityQuestions from "./Admin/Pages/Pages/SubPages/CommunityQuestions";
-import CommunityCard from "./Admin/Components/Components/DataCards/CommunityQuestionCard";
-import Collections from "./Admin/Pages/Pages/SubPages/Collections";
-import CollectionCard from "./Admin/Components/Components/DataCards/CollectionCard";
-import EditCollection from "./Admin/Components/Components/Inputs/EditCollection";
-import Ratings from "./Admin/Pages/Pages/SubPages/Rating";
-import RatingCard from "./Admin/Components/Components/DataCards/RatingCard";
-import EditRating from "./Admin/Components/Components/Inputs/EditRating";
-import CreateRating from "./Admin/Components/Components/Inputs/CreateRating";
-import Questions from "./Admin/Pages/Pages/SubPages/Questions";
-import CreateQuestions from "./Admin/Components/Components/Inputs/CreateQuestion";
-import EducationalObject from "./Admin/Pages/Pages/SubPages/EducationalObjects";
-import EducationalObjectCard from "./Admin/Components/Components/DataCards/EducationalObjectsCard";
-import EducationalObjectEdit from "./Admin/Components/Components/Inputs/EditEducationalObect";
-import Complaints from "./Admin/Pages/Pages/SubPages/Complaints";
-import ComplaintCard from "./Admin/Components/Components/DataCards/ComplaintsCard";
-import AproveTeacher from "./Admin/Pages/Pages/SubPages/AproveTeacher";
-import UserCard from "./Admin/Components/Components/DataCards/UserCard";
-import EditUser from "./Admin/Components/Components/Inputs/EditUser";
-import UserList from "./Admin/Pages/Pages/SubPages/Users";
-import UserPermissions from "./Admin/Pages/Pages/SubPages/Permissions";
-import EditRole from "./Admin/Components/Components/Inputs/EditRoles";
-import CreateRole from "./Admin/Components/Components/Inputs/CreateRole";
-import BlockedUser from "./Admin/Pages/Pages/SubPages/BlockedUsers";
-import AppBarAdmin from './Admin/Components/Components/AppBar'
-import createBrowserHistory from 'history/createBrowserHistory'
-*/
 
 export default function App() {
     // eslint-disable-next-line
@@ -189,22 +109,6 @@ export default function App() {
         siteId: 5
     });
     const customHistory = createBrowserHistory()
-
-    const CheckUserPermission = () => {
-        let canUserEdit = false;
-
-        if (state.userIsLoggedIn) {
-            const roles = [...state.currentUser.roles];
-            for (let i = 0; i < roles.length; i++)
-                if (roles[i].name === 'admin' || roles[i].name === 'editor')
-                canUserEdit = true;
-        }
-        else {
-        canUserEdit = false;
-        }
-
-        return canUserEdit;
-    }
     
     async function supportsWebp() {
         if (!createImageBitmap) return false;
@@ -253,26 +157,6 @@ export default function App() {
         return () => window.removeEventListener("resize", setWindowSize);
     }, [window.innerWidth, window.innerHeight]);
 
-    const AdminTemplate = (props) => {
-        if (CheckUserPermission())
-            return (
-            <div style={{ backgroundColor: "	#D3D3D3" }}>
-                <AppBarAdmin />
-                <div style={{ padding: "2em" }}>
-                    {props.inner}
-                </div>
-            </div>
-            )
-        else
-            return (
-            <div style={{ backgroundColor: "	#D3D3D3" }}>
-                <div style={{ padding: "2em" }}>
-                    <Unauthorized />
-                </div>
-            </div>
-        )
-    }
-
     const LoadingScreen = () => (  
         <div style={{
             position: "absolute",