├── .gitattributes ├── .gitignore ├── README.md └── jrbac ├── .externalToolBuilders └── org.eclipse.wst.jsdt.core.javascriptValidator (1).launch ├── .settings ├── .jsdtscope ├── org.eclipse.core.resources.prefs ├── org.eclipse.jdt.core.prefs ├── org.eclipse.jst.j2ee.ejb.annotations.xdoclet.prefs ├── org.eclipse.ltk.core.refactoring.prefs ├── org.eclipse.m2e.core.prefs ├── org.eclipse.wst.common.component ├── org.eclipse.wst.common.project.facet.core.xml ├── org.eclipse.wst.html.core.prefs ├── org.eclipse.wst.jsdt.ui.superType.container ├── org.eclipse.wst.jsdt.ui.superType.name ├── org.eclipse.wst.validation.prefs └── org.eclipse.wst.ws.service.policy.prefs ├── pom.xml └── src ├── main ├── java │ └── com │ │ └── jrbac │ │ ├── context │ │ ├── BaseReturn.java │ │ ├── ErrorCode.java │ │ ├── GeetConfig.java │ │ ├── GeetestLib.java │ │ ├── Param.java │ │ ├── Progress.java │ │ └── SessionParam.java │ │ ├── controller │ │ ├── LoginController.java │ │ ├── TestController.java │ │ ├── admin │ │ │ ├── HomeController.java │ │ │ ├── MenuController.java │ │ │ ├── RoleController.java │ │ │ └── UserController.java │ │ └── gesture │ │ │ ├── CaptchaController.java │ │ │ └── VerifyLoginServlet.java │ │ ├── dao │ │ ├── LoginUserDao.java │ │ ├── MenuDao.java │ │ └── RoleDao.java │ │ ├── entity │ │ ├── LoginUser.java │ │ ├── Menu.java │ │ ├── Role.java │ │ └── Teacher.java │ │ ├── enums │ │ └── StateEnum.java │ │ ├── listener │ │ └── FileUploadProgressListener.java │ │ ├── model │ │ ├── LoginUserVO.java │ │ └── Ztree.java │ │ ├── service │ │ ├── ImageService.java │ │ ├── LoginUserService.java │ │ ├── MenuService.java │ │ ├── RoleService.java │ │ ├── SessionService.java │ │ ├── ZtreeService.java │ │ └── impl │ │ │ ├── LoginUserServiceImpl.java │ │ │ ├── MenuServiceImpl.java │ │ │ └── RoleServiceImpl.java │ │ ├── shiro │ │ ├── MyShiroRealm.java │ │ ├── UserAuthService.java │ │ └── UserAuthServiceImpl.java │ │ ├── spring │ │ └── CustomMultipartResolver.java │ │ └── util │ │ ├── DESUtil.java │ │ ├── HttpUtil.java │ │ ├── MenuUtil.java │ │ ├── PasswordUtil.java │ │ └── UUIDGenerator.java ├── resources │ ├── config.properties │ ├── jdbc.properties │ ├── log4j.properties │ ├── mybatis-config.xml │ ├── spring │ │ ├── spring-core.xml │ │ ├── spring-mvc.xml │ │ ├── spring-mybatis.xml │ │ └── spring-shiro.xml │ └── sql │ │ ├── jrbac.sql │ │ ├── mapper │ │ ├── LoginUserDao.xml │ │ ├── MenuDao.xml │ │ └── RoleDao.xml │ │ └── schema.sql └── webapp │ ├── WEB-INF │ ├── views │ │ ├── admin │ │ │ ├── head │ │ │ │ ├── head.jsp │ │ │ │ └── nav.jsp │ │ │ ├── home │ │ │ │ └── index.jsp │ │ │ ├── login.jsp │ │ │ ├── menu │ │ │ │ └── index.jsp │ │ │ ├── role │ │ │ │ └── index.jsp │ │ │ ├── test │ │ │ │ ├── buttons.jsp │ │ │ │ ├── fileupload.jsp │ │ │ │ ├── form.jsp │ │ │ │ ├── icons.jsp │ │ │ │ ├── second.jsp │ │ │ │ └── third.jsp │ │ │ └── user │ │ │ │ ├── index.jsp │ │ │ │ └── setting.jsp │ │ ├── common │ │ │ └── tag.jsp │ │ └── mobile │ │ │ └── index.jsp │ └── web.xml │ ├── assets │ ├── admin │ │ └── login │ │ │ ├── css │ │ │ ├── bootstrap-social.css │ │ │ ├── bootstrap-theme.min.css │ │ │ ├── bootstrap.min.css │ │ │ ├── font-awesome.min.css │ │ │ └── templatemo_style.css │ │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ └── fontawesome-webfont.woff │ │ │ └── images │ │ │ └── bg.jpeg │ ├── common │ │ ├── jquery.min.js │ │ └── showTip.js │ ├── mobile │ │ └── weui │ │ │ └── css │ │ │ ├── weui.css │ │ │ └── weui.min.css │ ├── plugins │ │ ├── bootstrap-plugin │ │ │ ├── bootstrap-datetimepicker │ │ │ │ ├── css │ │ │ │ │ ├── bootstrap-datetimepicker.css │ │ │ │ │ └── bootstrap-datetimepicker.min.css │ │ │ │ └── js │ │ │ │ │ ├── bootstrap-datetimepicker.js │ │ │ │ │ ├── bootstrap-datetimepicker.min.js │ │ │ │ │ └── locales │ │ │ │ │ └── bootstrap-datetimepicker.zh-CN.js │ │ │ ├── bootstrap-fileinput │ │ │ │ ├── .github │ │ │ │ │ ├── CONTRIBUTING.md │ │ │ │ │ ├── ISSUE_TEMPLATE.md │ │ │ │ │ └── PULL_REQUEST_TEMPLATE.md │ │ │ │ ├── .gitignore │ │ │ │ ├── CHANGE.md │ │ │ │ ├── LICENSE.md │ │ │ │ ├── README.md │ │ │ │ ├── bower.json │ │ │ │ ├── composer.json │ │ │ │ ├── css │ │ │ │ │ ├── fileinput.css │ │ │ │ │ └── fileinput.min.css │ │ │ │ ├── img │ │ │ │ │ ├── loading-sm.gif │ │ │ │ │ └── loading.gif │ │ │ │ ├── js │ │ │ │ │ ├── fileinput.js │ │ │ │ │ ├── fileinput.min.js │ │ │ │ │ ├── locales │ │ │ │ │ │ ├── LANG.js │ │ │ │ │ │ ├── ar.js │ │ │ │ │ │ ├── bg.js │ │ │ │ │ │ ├── ca.js │ │ │ │ │ │ ├── cr.js │ │ │ │ │ │ ├── cz.js │ │ │ │ │ │ ├── da.js │ │ │ │ │ │ ├── de.js │ │ │ │ │ │ ├── el.js │ │ │ │ │ │ ├── es.js │ │ │ │ │ │ ├── fa.js │ │ │ │ │ │ ├── fi.js │ │ │ │ │ │ ├── fr.js │ │ │ │ │ │ ├── hu.js │ │ │ │ │ │ ├── id.js │ │ │ │ │ │ ├── it.js │ │ │ │ │ │ ├── ja.js │ │ │ │ │ │ ├── nl.js │ │ │ │ │ │ ├── pl.js │ │ │ │ │ │ ├── pt-BR.js │ │ │ │ │ │ ├── pt.js │ │ │ │ │ │ ├── ro.js │ │ │ │ │ │ ├── ru.js │ │ │ │ │ │ ├── sk.js │ │ │ │ │ │ ├── th.js │ │ │ │ │ │ ├── tr.js │ │ │ │ │ │ ├── uk.js │ │ │ │ │ │ ├── vi.js │ │ │ │ │ │ ├── zh-TW.js │ │ │ │ │ │ └── zh.js │ │ │ │ │ └── plugins │ │ │ │ │ │ ├── canvas-to-blob.js │ │ │ │ │ │ ├── canvas-to-blob.min.js │ │ │ │ │ │ ├── purify.js │ │ │ │ │ │ ├── purify.min.js │ │ │ │ │ │ ├── sortable.js │ │ │ │ │ │ └── sortable.min.js │ │ │ │ ├── nuget │ │ │ │ │ ├── Package.nuspec │ │ │ │ │ └── build.bat │ │ │ │ ├── package.json │ │ │ │ ├── sass │ │ │ │ │ └── fileinput.scss │ │ │ │ └── themes │ │ │ │ │ ├── fa │ │ │ │ │ └── theme.js │ │ │ │ │ └── gly │ │ │ │ │ └── theme.js │ │ │ └── bootstrap-iconpicker │ │ │ │ ├── .gitignore │ │ │ │ ├── .travis.yml │ │ │ │ ├── css │ │ │ │ ├── bootstrap-iconpicker.css │ │ │ │ └── bootstrap-iconpicker.min.css │ │ │ │ ├── icon-fonts │ │ │ │ ├── elusive-icons-2.0.0 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── elusive-icons.css │ │ │ │ │ │ └── elusive-icons.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── Elusive-Icons.eot │ │ │ │ │ │ ├── Elusive-Icons.svg │ │ │ │ │ │ ├── Elusive-Icons.ttf │ │ │ │ │ │ └── Elusive-Icons.woff │ │ │ │ ├── font-awesome-4.0.0 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── font-awesome.css │ │ │ │ │ │ └── font-awesome.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ │ └── fontawesome-webfont.woff │ │ │ │ ├── font-awesome-4.1.0 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── font-awesome.css │ │ │ │ │ │ └── font-awesome.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ │ └── fontawesome-webfont.woff │ │ │ │ ├── font-awesome-4.2.0 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── font-awesome.css │ │ │ │ │ │ └── font-awesome.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── FontAwesome.otf │ │ │ │ │ │ ├── fontawesome-webfont.eot │ │ │ │ │ │ ├── fontawesome-webfont.svg │ │ │ │ │ │ ├── fontawesome-webfont.ttf │ │ │ │ │ │ └── fontawesome-webfont.woff │ │ │ │ ├── ionicons-1.5.2 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── ionicons.css │ │ │ │ │ │ └── ionicons.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── ionicons.eot │ │ │ │ │ │ ├── ionicons.svg │ │ │ │ │ │ ├── ionicons.ttf │ │ │ │ │ │ └── ionicons.woff │ │ │ │ ├── map-icons-2.1.0 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── map-icons.css │ │ │ │ │ │ └── map-icons.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── map-icons.dev.svg │ │ │ │ │ │ ├── map-icons.eot │ │ │ │ │ │ ├── map-icons.svg │ │ │ │ │ │ ├── map-icons.ttf │ │ │ │ │ │ └── map-icons.woff │ │ │ │ ├── material-design-1.1.1 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── material-design-iconic-font.css │ │ │ │ │ │ └── material-design-iconic-font.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── Material-Design-Iconic-Font.eot │ │ │ │ │ │ ├── Material-Design-Iconic-Font.svg │ │ │ │ │ │ ├── Material-Design-Iconic-Font.ttf │ │ │ │ │ │ └── Material-Design-Iconic-Font.woff │ │ │ │ ├── octicons-2.1.2 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── octicons.css │ │ │ │ │ │ └── octicons.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── octicons-local.ttf │ │ │ │ │ │ ├── octicons.eot │ │ │ │ │ │ ├── octicons.svg │ │ │ │ │ │ ├── octicons.ttf │ │ │ │ │ │ └── octicons.woff │ │ │ │ ├── typicons-2.0.6 │ │ │ │ │ ├── css │ │ │ │ │ │ ├── typicons.css │ │ │ │ │ │ └── typicons.min.css │ │ │ │ │ └── fonts │ │ │ │ │ │ ├── typicons.eot │ │ │ │ │ │ ├── typicons.svg │ │ │ │ │ │ ├── typicons.ttf │ │ │ │ │ │ └── typicons.woff │ │ │ │ └── weather-icons-1.2.0 │ │ │ │ │ ├── css │ │ │ │ │ ├── weather-icons.css │ │ │ │ │ └── weather-icons.min.css │ │ │ │ │ └── fonts │ │ │ │ │ ├── WeatherIcons-Regular.otf │ │ │ │ │ ├── weathericons-regular-webfont.eot │ │ │ │ │ ├── weathericons-regular-webfont.svg │ │ │ │ │ ├── weathericons-regular-webfont.ttf │ │ │ │ │ └── weathericons-regular-webfont.woff │ │ │ │ └── js │ │ │ │ ├── bootstrap-iconpicker.js │ │ │ │ ├── bootstrap-iconpicker.min.js │ │ │ │ └── iconset │ │ │ │ ├── iconset-all.min.js │ │ │ │ ├── iconset-elusiveicon-2.0.0.js │ │ │ │ ├── iconset-elusiveicon-2.0.0.min.js │ │ │ │ ├── iconset-fontawesome-4.0.0.js │ │ │ │ ├── iconset-fontawesome-4.0.0.min.js │ │ │ │ ├── iconset-fontawesome-4.1.0.js │ │ │ │ ├── iconset-fontawesome-4.1.0.min.js │ │ │ │ ├── iconset-fontawesome-4.2.0.js │ │ │ │ ├── iconset-fontawesome-4.2.0.min.js │ │ │ │ ├── iconset-glyphicon.js │ │ │ │ ├── iconset-glyphicon.min.js │ │ │ │ ├── iconset-ionicon-1.5.2.js │ │ │ │ ├── iconset-ionicon-1.5.2.min.js │ │ │ │ ├── iconset-mapicon-2.1.0.js │ │ │ │ ├── iconset-mapicon-2.1.0.min.js │ │ │ │ ├── iconset-materialdesign-1.1.1.js │ │ │ │ ├── iconset-materialdesign-1.1.1.min.js │ │ │ │ ├── iconset-octicon-2.1.2.js │ │ │ │ ├── iconset-octicon-2.1.2.min.js │ │ │ │ ├── iconset-typicon-2.0.6.js │ │ │ │ ├── iconset-typicon-2.0.6.min.js │ │ │ │ ├── iconset-weathericon-1.2.0.js │ │ │ │ └── iconset-weathericon-1.2.0.min.js │ │ ├── cryptojs │ │ │ ├── core.js │ │ │ ├── md5.js │ │ │ ├── mode-ecb.js │ │ │ └── tripledes.js │ │ ├── easyform │ │ │ ├── easyform.css │ │ │ └── easyform.js │ │ ├── jquery-cookie │ │ │ └── jquery.cookie.js │ │ └── ztree │ │ │ ├── css │ │ │ ├── awesomeStyle │ │ │ │ ├── awesome.css │ │ │ │ ├── awesome.less │ │ │ │ ├── fa.less │ │ │ │ └── img │ │ │ │ │ └── loading.gif │ │ │ ├── demo.css │ │ │ ├── metroStyle │ │ │ │ ├── img │ │ │ │ │ ├── line_conn.png │ │ │ │ │ ├── loading.gif │ │ │ │ │ ├── metro.gif │ │ │ │ │ └── metro.png │ │ │ │ └── metroStyle.css │ │ │ └── zTreeStyle │ │ │ │ ├── img │ │ │ │ ├── diy │ │ │ │ │ ├── 1_close.png │ │ │ │ │ ├── 1_open.png │ │ │ │ │ ├── 2.png │ │ │ │ │ ├── 3.png │ │ │ │ │ ├── 4.png │ │ │ │ │ ├── 5.png │ │ │ │ │ ├── 6.png │ │ │ │ │ ├── 7.png │ │ │ │ │ ├── 8.png │ │ │ │ │ └── 9.png │ │ │ │ ├── line_conn.gif │ │ │ │ ├── loading.gif │ │ │ │ ├── zTreeStandard.gif │ │ │ │ └── zTreeStandard.png │ │ │ │ └── zTreeStyle.css │ │ │ └── js │ │ │ ├── jquery-1.4.4.min.js │ │ │ ├── jquery.ztree.all.js │ │ │ ├── jquery.ztree.all.min.js │ │ │ ├── jquery.ztree.core.js │ │ │ ├── jquery.ztree.core.min.js │ │ │ ├── jquery.ztree.excheck.js │ │ │ ├── jquery.ztree.excheck.min.js │ │ │ ├── jquery.ztree.exedit.js │ │ │ ├── jquery.ztree.exedit.min.js │ │ │ ├── jquery.ztree.exhide.js │ │ │ └── jquery.ztree.exhide.min.js │ └── sbadmin │ │ ├── bootstrap │ │ ├── .bower.json │ │ └── dist │ │ │ ├── css │ │ │ ├── bootstrap-theme.css │ │ │ ├── bootstrap-theme.css.map │ │ │ ├── bootstrap-theme.min.css │ │ │ ├── bootstrap-theme.min.css.map │ │ │ ├── bootstrap.css │ │ │ ├── bootstrap.css.map │ │ │ ├── bootstrap.min.css │ │ │ └── bootstrap.min.css.map │ │ │ ├── fonts │ │ │ ├── glyphicons-halflings-regular.eot │ │ │ ├── glyphicons-halflings-regular.svg │ │ │ ├── glyphicons-halflings-regular.ttf │ │ │ ├── glyphicons-halflings-regular.woff │ │ │ └── glyphicons-halflings-regular.woff2 │ │ │ └── js │ │ │ ├── bootstrap.js │ │ │ ├── bootstrap.min.js │ │ │ └── npm.js │ │ ├── datatables-plugins │ │ ├── .bower.json │ │ ├── api │ │ │ ├── average().js │ │ │ ├── column().title().js │ │ │ ├── columns().order().js │ │ │ ├── fnAddDataAndDisplay.js │ │ │ ├── fnAddTr.js │ │ │ ├── fnColumnIndexToVisible.js │ │ │ ├── fnDataUpdate.js │ │ │ ├── fnDisplayRow.js │ │ │ ├── fnDisplayStart.js │ │ │ ├── fnFakeRowspan.js │ │ │ ├── fnFilterAll.js │ │ │ ├── fnFilterClear.js │ │ │ ├── fnFilterOnReturn.js │ │ │ ├── fnFindCellRowIndexes.js │ │ │ ├── fnFindCellRowNodes.js │ │ │ ├── fnGetAdjacentTr.js │ │ │ ├── fnGetColumnData.js │ │ │ ├── fnGetColumnIndex.js │ │ │ ├── fnGetHiddenNodes.js │ │ │ ├── fnGetTd.js │ │ │ ├── fnGetTds.js │ │ │ ├── fnLengthChange.js │ │ │ ├── fnMultiFilter.js │ │ │ ├── fnPagingInfo.js │ │ │ ├── fnProcessingIndicator.js │ │ │ ├── fnReloadAjax.js │ │ │ ├── fnSetFilteringDelay.js │ │ │ ├── fnSortNeutral.js │ │ │ ├── fnStandingRedraw.js │ │ │ ├── fnVisibleToColumnIndex.js │ │ │ ├── page.jumpToData().js │ │ │ └── sum().js │ │ ├── features │ │ │ ├── alphabetSearch │ │ │ │ ├── dataTables.alphabetSearch.css │ │ │ │ ├── dataTables.alphabetSearch.js │ │ │ │ └── dataTables.alphabetSearch.min.js │ │ │ ├── lengthLinks │ │ │ │ ├── dataTables.lengthLinks.css │ │ │ │ ├── dataTables.lengthLinks.js │ │ │ │ └── dataTables.lengthLinks.min.js │ │ │ └── searchHighlight │ │ │ │ ├── dataTables.searchHighlight.css │ │ │ │ ├── dataTables.searchHighlight.js │ │ │ │ └── dataTables.searchHighlight.min.js │ │ ├── filtering │ │ │ ├── row-based │ │ │ │ ├── TableTools.ShowSelectedOnly.js │ │ │ │ ├── range_dates.js │ │ │ │ └── range_numbers.js │ │ │ └── type-based │ │ │ │ ├── accent-neutralise.js │ │ │ │ ├── html.js │ │ │ │ └── phoneNumber.js │ │ ├── i18n │ │ │ ├── Afrikaans.lang │ │ │ ├── Albanian.lang │ │ │ ├── Arabic.lang │ │ │ ├── Azerbaijan.lang │ │ │ ├── Bangla.lang │ │ │ ├── Belarusian.lang │ │ │ ├── Bulgarian.lang │ │ │ ├── Catalan.lang │ │ │ ├── Chinese-traditional.lang │ │ │ ├── Chinese.lang │ │ │ ├── Croatian.lang │ │ │ ├── Czech.lang │ │ │ ├── Danish.lang │ │ │ ├── Dutch.lang │ │ │ ├── English.lang │ │ │ ├── Estonian.lang │ │ │ ├── Filipino.lang │ │ │ ├── Finnish.lang │ │ │ ├── French.lang │ │ │ ├── Galician.lang │ │ │ ├── Georgian.lang │ │ │ ├── German.lang │ │ │ ├── Greek.lang │ │ │ ├── Gujarati.lang │ │ │ ├── Hebrew.lang │ │ │ ├── Hindi.lang │ │ │ ├── Hungarian.lang │ │ │ ├── Icelandic.lang │ │ │ ├── Indonesian-Alternative.lang │ │ │ ├── Indonesian.lang │ │ │ ├── Irish.lang │ │ │ ├── Italian.lang │ │ │ ├── Japanese.lang │ │ │ ├── Korean.lang │ │ │ ├── Latvian.lang │ │ │ ├── Lithuanian.lang │ │ │ ├── Macedonian.lang │ │ │ ├── Malay.lang │ │ │ ├── Norwegian.lang │ │ │ ├── Persian.lang │ │ │ ├── Polish.lang │ │ │ ├── Portuguese-Brasil.lang │ │ │ ├── Portuguese.lang │ │ │ ├── Romanian.lang │ │ │ ├── Russian.lang │ │ │ ├── Serbian.lang │ │ │ ├── Slovak.lang │ │ │ ├── Slovenian.lang │ │ │ ├── Spanish.lang │ │ │ ├── Swahili.lang │ │ │ ├── Swedish.lang │ │ │ ├── Tamil.lang │ │ │ ├── Thai.lang │ │ │ ├── Turkish.lang │ │ │ ├── Ukranian.lang │ │ │ ├── Urdu.lang │ │ │ ├── Uzbek.lang │ │ │ └── Vietnamese.lang │ │ ├── integration │ │ │ ├── bootstrap │ │ │ │ ├── 1 │ │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ │ └── dataTables.bootstrap.js │ │ │ │ ├── 2 │ │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ │ ├── dataTables.bootstrap.js │ │ │ │ │ ├── dataTables.bootstrap.min.js │ │ │ │ │ └── index.html │ │ │ │ ├── 3 │ │ │ │ │ ├── dataTables.bootstrap.css │ │ │ │ │ ├── dataTables.bootstrap.js │ │ │ │ │ ├── dataTables.bootstrap.min.js │ │ │ │ │ └── index.html │ │ │ │ └── images │ │ │ │ │ ├── sort_asc.png │ │ │ │ │ ├── sort_asc_disabled.png │ │ │ │ │ ├── sort_both.png │ │ │ │ │ ├── sort_desc.png │ │ │ │ │ └── sort_desc_disabled.png │ │ │ ├── font-awesome │ │ │ │ └── dataTables.fontAwesome.css │ │ │ ├── foundation │ │ │ │ ├── dataTables.foundation.css │ │ │ │ ├── dataTables.foundation.js │ │ │ │ ├── dataTables.foundation.min.js │ │ │ │ └── images │ │ │ │ │ ├── sort_asc.png │ │ │ │ │ ├── sort_asc_disabled.png │ │ │ │ │ ├── sort_both.png │ │ │ │ │ ├── sort_desc.png │ │ │ │ │ └── sort_desc_disabled.png │ │ │ └── jqueryui │ │ │ │ ├── dataTables.jqueryui.css │ │ │ │ ├── dataTables.jqueryui.js │ │ │ │ ├── dataTables.jqueryui.min.js │ │ │ │ ├── dataTables.jqueryui.scss │ │ │ │ └── index.html │ │ ├── pagination │ │ │ ├── ellipses.js │ │ │ ├── extjs.js │ │ │ ├── four_button.js │ │ │ ├── input.js │ │ │ ├── jPaginator │ │ │ │ └── dataTables.jPaginator.js │ │ │ ├── scrolling.js │ │ │ └── select.js │ │ ├── sorting │ │ │ ├── alt-string.js │ │ │ ├── anti-the.js │ │ │ ├── chinese-string.js │ │ │ ├── currency.js │ │ │ ├── custom-data-source │ │ │ │ ├── dom-checkbox.js │ │ │ │ ├── dom-select.js │ │ │ │ └── dom-text.js │ │ │ ├── date-dd-MMM-yyyy.js │ │ │ ├── date-de.js │ │ │ ├── date-eu.js │ │ │ ├── date-euro.js │ │ │ ├── date-uk.js │ │ │ ├── datetime-moment.js │ │ │ ├── datetime-us.js │ │ │ ├── enum.js │ │ │ ├── file-size.js │ │ │ ├── formatted-numbers.js │ │ │ ├── ip-address.js │ │ │ ├── monthYear.js │ │ │ ├── natural.js │ │ │ ├── num-html.js │ │ │ ├── numeric-comma.js │ │ │ ├── percent.js │ │ │ ├── persian.js │ │ │ ├── scientific.js │ │ │ ├── signed-num.js │ │ │ ├── stringMonthYear.js │ │ │ ├── time.js │ │ │ ├── title-numeric.js │ │ │ ├── title-string.js │ │ │ └── turkish-string.js │ │ └── type-detection │ │ │ ├── currency.js │ │ │ ├── date-uk.js │ │ │ ├── file-size.js │ │ │ ├── formatted-num.js │ │ │ ├── ip-address.js │ │ │ ├── num-html.js │ │ │ └── numeric-comma.js │ │ ├── datatables-responsive │ │ ├── .bower.json │ │ ├── .gitignore │ │ ├── css │ │ │ ├── dataTables.responsive.css │ │ │ ├── responsive.bootstrap.scss │ │ │ ├── responsive.foundation.scss │ │ │ └── responsive.jqueryui.scss │ │ └── js │ │ │ └── dataTables.responsive.js │ │ ├── datatables │ │ ├── .bower.json │ │ └── media │ │ │ ├── css │ │ │ ├── dataTables.bootstrap.css │ │ │ ├── dataTables.bootstrap.min.css │ │ │ ├── dataTables.foundation.css │ │ │ ├── dataTables.foundation.min.css │ │ │ ├── dataTables.jqueryui.css │ │ │ ├── dataTables.jqueryui.min.css │ │ │ ├── jquery.dataTables.css │ │ │ ├── jquery.dataTables.min.css │ │ │ └── jquery.dataTables_themeroller.css │ │ │ ├── images │ │ │ ├── Sorting icons.psd │ │ │ ├── favicon.ico │ │ │ ├── sort_asc.png │ │ │ ├── sort_asc_disabled.png │ │ │ ├── sort_both.png │ │ │ ├── sort_desc.png │ │ │ └── sort_desc_disabled.png │ │ │ └── js │ │ │ ├── dataTables.bootstrap.js │ │ │ ├── dataTables.bootstrap.min.js │ │ │ ├── dataTables.foundation.js │ │ │ ├── dataTables.foundation.min.js │ │ │ ├── dataTables.jqueryui.js │ │ │ ├── dataTables.jqueryui.min.js │ │ │ ├── jquery.dataTables.js │ │ │ ├── jquery.dataTables.min.js │ │ │ └── jquery.js │ │ ├── dist │ │ ├── css │ │ │ ├── sb-admin-2.css │ │ │ └── timeline.css │ │ └── js │ │ │ └── sb-admin-2.js │ │ ├── font-awesome │ │ ├── .bower.json │ │ ├── .gitignore │ │ ├── .npmignore │ │ ├── css │ │ │ ├── font-awesome.css │ │ │ └── font-awesome.min.css │ │ ├── fonts │ │ │ ├── FontAwesome.otf │ │ │ ├── fontawesome-webfont.eot │ │ │ ├── fontawesome-webfont.svg │ │ │ ├── fontawesome-webfont.ttf │ │ │ ├── fontawesome-webfont.woff │ │ │ └── fontawesome-webfont.woff2 │ │ ├── less │ │ │ ├── animated.less │ │ │ ├── bordered-pulled.less │ │ │ ├── core.less │ │ │ ├── extras.less │ │ │ ├── fixed-width.less │ │ │ ├── font-awesome.less │ │ │ ├── icons.less │ │ │ ├── larger.less │ │ │ ├── list.less │ │ │ ├── mixins.less │ │ │ ├── path.less │ │ │ ├── rotated-flipped.less │ │ │ ├── screen-reader.less │ │ │ ├── spinning.less │ │ │ ├── stacked.less │ │ │ └── variables.less │ │ └── scss │ │ │ ├── _animated.scss │ │ │ ├── _bordered-pulled.scss │ │ │ ├── _core.scss │ │ │ ├── _extras.scss │ │ │ ├── _fixed-width.scss │ │ │ ├── _icons.scss │ │ │ ├── _larger.scss │ │ │ ├── _list.scss │ │ │ ├── _mixins.scss │ │ │ ├── _path.scss │ │ │ ├── _rotated-flipped.scss │ │ │ ├── _screen-reader.scss │ │ │ ├── _spinning.scss │ │ │ ├── _stacked.scss │ │ │ ├── _variables.scss │ │ │ └── font-awesome.scss │ │ ├── jquery │ │ ├── .bower.json │ │ └── dist │ │ │ ├── jquery.js │ │ │ ├── jquery.min.js │ │ │ └── jquery.min.map │ │ └── metisMenu │ │ ├── .bower.json │ │ └── dist │ │ ├── metisMenu.css │ │ ├── metisMenu.js │ │ ├── metisMenu.min.css │ │ └── metisMenu.min.js │ └── index.jsp └── test └── java └── com └── jrbac ├── context └── BaseReturnTest.java ├── dao └── LoginUserDaoTest.java ├── service ├── LoginUserServiceTest.java ├── MenuServiceTest.java └── ZtreeServiceTest.java ├── test ├── BeanCopy.java ├── Hello.java ├── TestAddress.java └── TestUser.java └── util ├── DESUtilTest.java ├── HttpUtilTest.java └── PasswordUtilTest.java /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.class 2 | .classpath 3 | .project 4 | target 5 | # Mobile Tools for Java (J2ME) 6 | .mtj.tmp/ 7 | 8 | # Package Files # 9 | *.jar 10 | *.war 11 | *.ear 12 | 13 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml 14 | hs_err_pid* 15 | 16 | # ========================= 17 | # Operating System Files 18 | # ========================= 19 | 20 | # OSX 21 | # ========================= 22 | 23 | .DS_Store 24 | .AppleDouble 25 | .LSOverride 26 | 27 | # Thumbnails 28 | ._* 29 | 30 | # Files that might appear on external disk 31 | .Spotlight-V100 32 | .Trashes 33 | 34 | # Directories potentially created on remote AFP share 35 | .AppleDB 36 | .AppleDesktop 37 | Network Trash Folder 38 | Temporary Items 39 | .apdisk 40 | 41 | # Windows 42 | # ========================= 43 | 44 | # Windows image file caches 45 | Thumbs.db 46 | ehthumbs.db 47 | 48 | # Folder config file 49 | Desktop.ini 50 | 51 | # Recycle Bin used on file shares 52 | $RECYCLE.BIN/ 53 | 54 | # Windows Installer files 55 | *.cab 56 | *.msi 57 | *.msm 58 | *.msp 59 | 60 | # Windows shortcuts 61 | *.lnk 62 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | java-rbac 3 | ====================== 4 | 一个java版本的基于角色的权限管理系统 5 | 6 | 可以用来做公共的cms后台 7 | 8 | [系统介绍与美图](http://blog.csdn.net/frankcheng5143/article/details/51725226) 9 | 该版本支持多级菜单 10 | 11 | 部署方法 12 | 13 | 将 14 | ``` 15 | /src/main/resources/sql/jrbac.sql 16 | ``` 17 | 数据库脚本运行在本地数据库 18 | 19 | 将 20 | ``` 21 | src/main/resources/jdbc.properties 22 | ``` 23 | 中 24 | ``` 25 | jdbc.username=root 26 | jdbc.password=cheng 27 | ``` 28 | 设置成自己的数据库用户名和密码 29 | 30 | 然后运行项目(注意这是一个maven项目) 31 | 32 | 确保你的eclispe配置好了maven 33 | 34 | Eclipse 导入 35 | 36 | File --> Import -->选择Maven --> Existing Maven Projects 37 | 38 | 访问地址:http://127.0.0.1:8080/jrbac 39 | 40 | 初始化登录用户名chenggaowei 41 | 42 | 登录密码12345678 43 | -------------------------------------------------------------------------------- /jrbac/.externalToolBuilders/org.eclipse.wst.jsdt.core.javascriptValidator (1).launch: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /jrbac/.settings/.jsdtscope: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.core.resources.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | encoding/=UTF-8 3 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled 3 | org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate 4 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 5 | org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve 6 | org.eclipse.jdt.core.compiler.compliance=1.7 7 | org.eclipse.jdt.core.compiler.debug.lineNumber=generate 8 | org.eclipse.jdt.core.compiler.debug.localVariable=generate 9 | org.eclipse.jdt.core.compiler.debug.sourceFile=generate 10 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error 11 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error 12 | org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning 13 | org.eclipse.jdt.core.compiler.source=1.7 14 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.jst.j2ee.ejb.annotations.xdoclet.prefs: -------------------------------------------------------------------------------- 1 | XDOCLETBUILDERACTIVE=true 2 | XDOCLETHOME= 3 | XDOCLETUSEGLOBAL=true 4 | XDOCLETVERSION=1.2.1 5 | eclipse.preferences.version=1 6 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.ltk.core.refactoring.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.ltk.core.refactoring.enable.project.refactoring.history=false 3 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.m2e.core.prefs: -------------------------------------------------------------------------------- 1 | activeProfiles= 2 | eclipse.preferences.version=1 3 | resolveWorkspaceProjects=true 4 | version=1 5 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.common.component: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.common.project.facet.core.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.html.core.prefs: -------------------------------------------------------------------------------- 1 | document-type/= 2 | eclipse.preferences.version=1 3 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.jsdt.ui.superType.container: -------------------------------------------------------------------------------- 1 | org.eclipse.wst.jsdt.launching.baseBrowserLibrary -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.jsdt.ui.superType.name: -------------------------------------------------------------------------------- 1 | Window -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.validation.prefs: -------------------------------------------------------------------------------- 1 | disabled=06target 2 | eclipse.preferences.version=1 3 | -------------------------------------------------------------------------------- /jrbac/.settings/org.eclipse.wst.ws.service.policy.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.wst.ws.service.policy.projectEnabled=false 3 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/context/ErrorCode.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.context; 2 | 3 | /** 4 | * 错误返回码 5 | * @author 程高伟 6 | * @date 2016年11月11日 下午10:36:21 7 | */ 8 | public enum ErrorCode { 9 | SUCCESS("0","success"), 10 | FAILURE("1","failure"), 11 | RECORD_NULL("10000","record is null"), 12 | SERVER_BUSY("-1","server is busy, please try later"), 13 | INTERNAL_ERROR("-2","server internal error"), 14 | PARAM_ERROR("-3","param error"), 15 | UNSUPPORTED_TYPE("-4","unsupported type"), 16 | NOT_LOGGIN("41000","not login"), 17 | USER_FROZEN("41001","user was frozen"), 18 | NOT_AUTHORIZED("42000","not authorized"), 19 | JSON_ERROR("47001","JSON/XML parse error"), 20 | PERMISSION_DENIED("004","permission denied"); 21 | private String code; //error code 22 | private String message; //error message 23 | private ErrorCode(String code,String message){ 24 | this.code = code; 25 | this.message = message; 26 | } 27 | public String getCode() { 28 | return code; 29 | } 30 | public void setCode(String code) { 31 | this.code = code; 32 | } 33 | public String getMessage() { 34 | return message; 35 | } 36 | public void setMessage(String message) { 37 | this.message = message; 38 | } 39 | 40 | } 41 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/context/GeetConfig.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.context; 2 | 3 | /** 4 | * 验证码配置文件 5 | * 6 | * 7 | */ 8 | public class GeetConfig { 9 | 10 | // 填入自己的captcha_id和private_key 11 | private static final String captcha_id = "84fd748e0aae022ef5d727e5e5120425"; 12 | private static final String private_key = "abc36eef9a53fa4f557436da3eb991e3"; 13 | 14 | public static final String getCaptcha_id() { 15 | return captcha_id; 16 | } 17 | 18 | public static final String getPrivate_key() { 19 | return private_key; 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/context/Param.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.context; 2 | 3 | /** 4 | * 系统参数和session参数 5 | * 6 | * @author 程高伟 7 | * @date 2016年11月14日 上午10:43:44 8 | */ 9 | public interface Param { 10 | 11 | /** 12 | * 滑动验证码session中userid的key 13 | */ 14 | String SESSION_GEET_USERID = "geetUserid"; 15 | 16 | /** 17 | * 登录页面session中对数据进行des加密的key 18 | */ 19 | String SESSION_LOGIN_DES_KEY = "loginDesKey"; 20 | 21 | /** 22 | * 登录用户在session中的key 23 | */ 24 | String SESSION_LOGIN_USER = "loginUser"; 25 | 26 | /** 27 | * 登录用户所具有的菜单在session中的key 28 | */ 29 | String SESSION_USER_MENU = "userMenuList"; 30 | 31 | /** 32 | * ckfinder用户在session中的key 33 | */ 34 | String SESSION_CKFINDER_USERROLE = "CKFinder_UserRole"; 35 | 36 | /** 37 | * 管理员在修改菜单的时候session中的key 38 | */ 39 | String MENU_LIST = "menuList"; 40 | /** 41 | * 管理员在修改角色的时候session中的key 42 | */ 43 | String Role_LIST = "roleList"; 44 | /** 45 | * 管理员在修改用户的时候session中的key 46 | */ 47 | String USER_LIST = "userList"; 48 | 49 | } 50 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/context/Progress.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.context; 2 | 3 | /** 4 | * 进度条 5 | * 6 | * @author 程高伟 7 | * @date 2016年11月16日 下午2:47:17 8 | */ 9 | public class Progress { 10 | private long bytesRead; 11 | private long contentLength; 12 | private long items; 13 | 14 | public long getBytesRead() { 15 | return bytesRead; 16 | } 17 | 18 | public void setBytesRead(long bytesRead) { 19 | this.bytesRead = bytesRead; 20 | } 21 | 22 | public long getContentLength() { 23 | return contentLength; 24 | } 25 | 26 | public void setContentLength(long contentLength) { 27 | this.contentLength = contentLength; 28 | } 29 | 30 | public long getItems() { 31 | return items; 32 | } 33 | 34 | public void setItems(long items) { 35 | this.items = items; 36 | } 37 | 38 | @Override 39 | public String toString() { 40 | return "Progress [bytesRead=" + bytesRead + ", contentLength=" + contentLength + ", items=" + items + "]"; 41 | } 42 | 43 | } -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/context/SessionParam.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.context; 2 | 3 | /** 4 | * session中存在的参数 5 | * 6 | * @author 程高伟 7 | * 8 | * @date 2016年10月24日 下午4:47:21 9 | */ 10 | public interface SessionParam { 11 | 12 | /** 13 | * 滑动验证码 sessionid 14 | */ 15 | String GEET_USERID = "geetUserid"; 16 | 17 | /** 18 | * 登录页面的key 19 | */ 20 | String LOGIN_KEY = "loginKey"; 21 | 22 | /** 23 | * 登录用户在session中的key 24 | */ 25 | String LOGIN_USER = "loginUser"; 26 | 27 | /** 28 | * 登录用户所具有的菜单在session中的key 29 | */ 30 | String USER_MENU = "userMenuList"; 31 | 32 | /** 33 | * 管理员在修改菜单的时候session中的key 34 | */ 35 | String MENU_LIST = "menuList"; 36 | 37 | /** 38 | * ckfinder用户在session中的key 39 | */ 40 | String CKFINDER_USERROLE = "CKFinder_UserRole"; 41 | 42 | } 43 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/controller/admin/HomeController.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.controller.admin; 2 | 3 | import org.slf4j.Logger; 4 | import org.slf4j.LoggerFactory; 5 | import org.springframework.stereotype.Controller; 6 | import org.springframework.ui.Model; 7 | import org.springframework.web.bind.annotation.RequestMapping; 8 | import org.springframework.web.bind.annotation.RequestMethod; 9 | 10 | /** 11 | * 后台首页 12 | * 13 | * @author 程高伟 14 | * 15 | * @date 2016年10月26日 下午5:40:54 16 | */ 17 | 18 | @Controller 19 | @RequestMapping(value = "/admin/home") 20 | public class HomeController { 21 | private final Logger logger = LoggerFactory.getLogger(this.getClass()); 22 | 23 | @RequestMapping(value = "/index.html", method = RequestMethod.GET) 24 | public String index(Model model) { 25 | logger.debug("-----后台首页-----"); 26 | model.addAttribute("title", "后台首页"); 27 | return "admin/home/index"; 28 | } 29 | 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/dao/MenuDao.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.dao; 2 | 3 | import java.util.List; 4 | 5 | import org.apache.ibatis.annotations.Param; 6 | 7 | import com.jrbac.entity.LoginUser; 8 | import com.jrbac.entity.Menu; 9 | 10 | public interface MenuDao { 11 | 12 | /** 13 | * 查找用户所拥有的所有菜单 14 | * 15 | * @param user 16 | * @return 17 | */ 18 | public List queryAll(@Param("user") LoginUser loginUser); 19 | 20 | /** 21 | * 根据id查询一个菜单 22 | * 23 | * @param id 24 | * @return 25 | */ 26 | public Menu queryById(@Param("id") String id); 27 | 28 | /** 29 | * 根据角色id查询角色所拥有的菜单 30 | * 31 | * @param roleId 32 | * @return 33 | */ 34 | public List queryByRoleId(@Param("roleId") String roleId); 35 | 36 | /** 37 | * 新增一个菜单 38 | * 39 | * @param menu 40 | * @return 41 | */ 42 | public int add(@Param("menu") Menu menu); 43 | 44 | /** 45 | * 新增一个菜单 46 | * 47 | * @param menu 48 | * @return 49 | */ 50 | public int update(@Param("menu") Menu menu); 51 | 52 | /** 53 | * 删除菜单 54 | * @param id 55 | * @return 56 | */ 57 | public int delete(String id); 58 | } 59 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/entity/Role.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.entity; 2 | 3 | import java.util.Date; 4 | import java.util.List; 5 | 6 | public class Role { 7 | // id 8 | private String id; 9 | // 名称 10 | private String name; 11 | // 创建时间,主要用来排序 12 | private Date createTime; 13 | // 一对多一个角色有多个权限 14 | private List menus; 15 | 16 | public String getId() { 17 | return id; 18 | } 19 | 20 | public void setId(String id) { 21 | this.id = id; 22 | } 23 | 24 | public String getName() { 25 | return name; 26 | } 27 | 28 | public void setName(String name) { 29 | this.name = name; 30 | } 31 | 32 | public Date getCreateTime() { 33 | return createTime; 34 | } 35 | 36 | public void setCreateTime(Date createTime) { 37 | this.createTime = createTime; 38 | } 39 | 40 | public List getMenus() { 41 | return menus; 42 | } 43 | 44 | public void setMenus(List menus) { 45 | this.menus = menus; 46 | } 47 | 48 | @Override 49 | public String toString() { 50 | return "Role [id=" + id + ", name=" + name + ", createTime=" + createTime + ", menus=" + menus + "]"; 51 | } 52 | 53 | @Override 54 | public boolean equals(Object obj) { 55 | if (obj instanceof Role) { 56 | Role role = (Role) obj; 57 | return (id.equals(role.id)); 58 | } 59 | return super.equals(obj); 60 | } 61 | 62 | } 63 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/entity/Teacher.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.entity; 2 | 3 | public class Teacher { 4 | private String id; 5 | private String name; 6 | // 科目 7 | private String subject; 8 | private String info; 9 | private String img; 10 | private int order; 11 | public String getId() { 12 | return id; 13 | } 14 | public void setId(String id) { 15 | this.id = id; 16 | } 17 | public String getName() { 18 | return name; 19 | } 20 | public void setName(String name) { 21 | this.name = name; 22 | } 23 | public String getSubject() { 24 | return subject; 25 | } 26 | public void setSubject(String subject) { 27 | this.subject = subject; 28 | } 29 | public String getInfo() { 30 | return info; 31 | } 32 | public void setInfo(String info) { 33 | this.info = info; 34 | } 35 | public String getImg() { 36 | return img; 37 | } 38 | public void setImg(String img) { 39 | this.img = img; 40 | } 41 | public int getOrder() { 42 | return order; 43 | } 44 | public void setOrder(int order) { 45 | this.order = order; 46 | } 47 | @Override 48 | public String toString() { 49 | return "Teacher [id=" + id + ", name=" + name + ", subject=" + subject + ", info=" + info + ", img=" + img 50 | + ", order=" + order + "]"; 51 | } 52 | 53 | } 54 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/enums/StateEnum.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.enums; 2 | 3 | public enum StateEnum { 4 | NOT_BIND(4, "未绑定身份,无法操作"), 5 | NOT_IN_WECHAT(3, "未在微信客户端打开"), 6 | REPEAT_OPERATE(2, "重复绑定"), 7 | NULL_RESULT(1, "结果为空"), 8 | INVALIDATE_USERNAME_PASSWORD(400,"用户名密码错误"), 9 | SUCCESS(0, "操作成功"), 10 | FAILURE(-1, "操作失败"), 11 | INCORRECT_PARAM(-2, "参数不正确"); 12 | private int code; 13 | private String message; 14 | 15 | private StateEnum(int code, String message) { 16 | this.code = code; 17 | this.message = message; 18 | } 19 | 20 | public int getCode() { 21 | return code; 22 | } 23 | 24 | public String getMessage() { 25 | return message; 26 | } 27 | 28 | public static StateEnum stateOf(int index) { 29 | for (StateEnum code : values()) { 30 | if (code.getCode() == index) { 31 | return code; 32 | } 33 | 34 | } 35 | return null; 36 | } 37 | 38 | } 39 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/listener/FileUploadProgressListener.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.listener; 2 | 3 | import javax.servlet.http.HttpSession; 4 | 5 | import org.apache.commons.fileupload.ProgressListener; 6 | import org.springframework.stereotype.Component; 7 | 8 | import com.jrbac.context.Progress; 9 | 10 | @Component 11 | public class FileUploadProgressListener implements ProgressListener { 12 | private HttpSession session; 13 | 14 | public void setSession(HttpSession session) { 15 | this.session = session; 16 | Progress status = new Progress();// 保存上传状态 17 | session.setAttribute("status", status); 18 | } 19 | 20 | @Override 21 | public void update(long bytesRead, long contentLength, int items) { 22 | Progress status = (Progress) session.getAttribute("status"); 23 | status.setBytesRead(bytesRead); 24 | status.setContentLength(contentLength); 25 | status.setItems(items); 26 | 27 | } 28 | 29 | } -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/service/MenuService.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.service; 2 | 3 | import java.util.List; 4 | 5 | import com.jrbac.entity.LoginUser; 6 | import com.jrbac.entity.Menu; 7 | 8 | /** 9 | * @author 程高伟 10 | * 11 | * @date 2016年6月16日 下午9:27:47 12 | */ 13 | public interface MenuService { 14 | /** 15 | * 添加菜单或修改菜单 16 | * 17 | * @param menu 18 | * @return 19 | */ 20 | public int addOrUpdateMenu(Menu menu); 21 | 22 | /** 23 | * 根据id批量删除菜单 24 | * 25 | * @param menuIds 26 | * @return 27 | */ 28 | public int delete(String id); 29 | 30 | /** 31 | * 查询为用户所分配的菜单 32 | * 33 | * @param user 34 | * @return 35 | */ 36 | public List queryAll(LoginUser loginUser); 37 | 38 | /** 39 | * 根据id查询一个菜单 40 | * 41 | * @param id 42 | * @return 43 | */ 44 | public Menu queryById(String id); 45 | } 46 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/service/RoleService.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.service; 2 | 3 | import java.util.List; 4 | 5 | import com.jrbac.entity.LoginUser; 6 | import com.jrbac.entity.Role; 7 | 8 | /** 9 | * @author 程高伟 10 | * 11 | * @date 2016年6月16日 下午9:27:47 12 | */ 13 | public interface RoleService { 14 | 15 | /** 16 | * 查询用户所能看到的角色列表 17 | * 18 | * @param loginUser 19 | * @return 20 | */ 21 | public List queryAll(LoginUser loginUser); 22 | 23 | /** 24 | * 添加菜单或修改菜单 25 | * 26 | * @param menu 27 | * @return 28 | */ 29 | public int addOrUpdateRole(Role role, String[] menuIds); 30 | 31 | /** 32 | * 删除角色 33 | * 34 | * @param id 35 | * @return 36 | */ 37 | public int delete(String id); 38 | 39 | } 40 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/service/impl/MenuServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.service.impl; 2 | 3 | import java.util.List; 4 | 5 | import org.apache.commons.lang3.StringUtils; 6 | import org.springframework.beans.factory.annotation.Autowired; 7 | import org.springframework.stereotype.Service; 8 | 9 | import com.jrbac.dao.MenuDao; 10 | import com.jrbac.entity.LoginUser; 11 | import com.jrbac.entity.Menu; 12 | import com.jrbac.service.MenuService; 13 | import com.jrbac.util.UUIDGenerator; 14 | 15 | @Service 16 | public class MenuServiceImpl implements MenuService { 17 | 18 | @Autowired 19 | private MenuDao menuDao; 20 | 21 | @Override 22 | public int addOrUpdateMenu(Menu menu) { 23 | if(StringUtils.isBlank(menu.getId())){ 24 | menu.setId(UUIDGenerator.getUUID()); 25 | return menuDao.add(menu); 26 | }else{ 27 | return menuDao.update(menu); 28 | } 29 | } 30 | 31 | @Override 32 | public int delete(String id) { 33 | return menuDao.delete(id); 34 | } 35 | 36 | @Override 37 | public List queryAll(LoginUser loginUser) { 38 | // 用户所能看到的菜单数据 39 | List rootMenu = menuDao.queryAll(loginUser); 40 | return rootMenu; 41 | } 42 | 43 | @Override 44 | public Menu queryById(String id) { 45 | return menuDao.queryById(id); 46 | } 47 | 48 | } 49 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/shiro/UserAuthService.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.shiro; 2 | 3 | import java.util.Set; 4 | 5 | import com.jrbac.entity.LoginUser; 6 | 7 | 8 | public interface UserAuthService { 9 | 10 | /** 11 | * 登录 12 | * 13 | * @param username 14 | * @param password 15 | * @return 16 | */ 17 | public LoginUser login(String username, String password); 18 | 19 | /** 20 | * 根据用户id查找其角色 21 | * 22 | * @param user 23 | * @return 24 | */ 25 | public Set findRoles(LoginUser user); 26 | 27 | /** 28 | * 根据用户id查找其权限 29 | * 30 | * @param user 31 | * @return 32 | */ 33 | public Set findPermissions(LoginUser user); 34 | 35 | } 36 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/shiro/UserAuthServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.shiro; 2 | 3 | import java.util.Set; 4 | 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.stereotype.Service; 7 | 8 | import com.jrbac.dao.LoginUserDao; 9 | import com.jrbac.entity.LoginUser; 10 | 11 | @Service 12 | public class UserAuthServiceImpl implements UserAuthService { 13 | 14 | @Autowired 15 | LoginUserDao loginUserDao; 16 | 17 | /** 18 | * 验证登录 19 | * 20 | * @param username 21 | * @param password 22 | * @return 23 | */ 24 | public LoginUser login(String username, String password) { 25 | 26 | return loginUserDao.login(username, password); 27 | } 28 | 29 | public Set findRoles(LoginUser user) { 30 | /* 31 | * Set roles = new HashSet<>(); roles.add("user"); 32 | */ 33 | return null; 34 | // return loginUserDao.findRoles(userid); 35 | } 36 | 37 | public Set findPermissions(LoginUser user) { 38 | return loginUserDao.findPermissions(user); 39 | } 40 | 41 | } 42 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/util/MenuUtil.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.util; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | import org.apache.commons.lang3.StringUtils; 7 | 8 | import com.jrbac.entity.Menu; 9 | 10 | public class MenuUtil { 11 | /** 12 | * 递归查找子菜单 13 | * 14 | * @param id 15 | * 当前菜单id 16 | * @param rootMenu 17 | * 要查找的列表 18 | * @return 19 | */ 20 | public static List getChild(String id, List rootMenu) { 21 | // 子菜单 22 | List childList = new ArrayList<>(); 23 | for (Menu menu : rootMenu) { 24 | // 遍历所有节点,将父菜单id与传过来的id比较 25 | if (StringUtils.isNotBlank(menu.getParentId())) { 26 | if (menu.getParentId().equals(id)) { 27 | childList.add(menu); 28 | } 29 | } 30 | } 31 | // 把子菜单的子菜单再循环一遍 32 | for (Menu menu : childList) {// 没有url子菜单还有子菜单 33 | if (StringUtils.isBlank(menu.getUrl())) { 34 | // 递归 35 | menu.setChildren(getChild(menu.getId(), rootMenu)); 36 | } 37 | } // 递归退出条件 38 | if (childList.size() == 0) { 39 | return null; 40 | } 41 | return childList; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/util/PasswordUtil.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.util; 2 | 3 | import org.apache.shiro.crypto.hash.Md5Hash; 4 | 5 | /** 6 | * 根据一个密文得到加密后的字符串 7 | * 8 | * @author 程高伟 9 | * 10 | * @date 2016年10月24日 下午4:32:19 11 | */ 12 | public class PasswordUtil { 13 | 14 | /** 15 | * 得到一个字符串的加密信息,两次Md5 16 | * 17 | * @param password 18 | * 明文 19 | * @return 密文 20 | */ 21 | public static String getPassword(String password) { 22 | // 两次md5加密 23 | return new Md5Hash(new Md5Hash(password)).toString(); 24 | } 25 | 26 | } 27 | -------------------------------------------------------------------------------- /jrbac/src/main/java/com/jrbac/util/UUIDGenerator.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.util; 2 | 3 | import java.util.UUID; 4 | 5 | /** 6 | * UUID生成器 7 | * 8 | * @author 程高伟 9 | * 10 | * @date 2016年6月15日 上午10:02:04 11 | */ 12 | public class UUIDGenerator { 13 | 14 | /** 15 | * 得到一个UUID 16 | * 17 | * @return 18 | */ 19 | public static String getUUID() { 20 | UUID uuid = UUID.randomUUID(); 21 | String str = uuid.toString(); 22 | // 去掉"-"符号 23 | String temp = str.substring(0, 8) + str.substring(9, 13) + str.substring(14, 18) + str.substring(19, 23) 24 | + str.substring(24); 25 | return temp; 26 | } 27 | 28 | /** 29 | * 获得指定数量的UUID 30 | * 31 | * @param number 32 | * @return 33 | */ 34 | public static String[] getUUID(int number) { 35 | if (number < 1) { 36 | return null; 37 | } 38 | String[] ss = new String[number]; 39 | for (int i = 0; i < number; i++) { 40 | ss[i] = getUUID(); 41 | } 42 | return ss; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /jrbac/src/main/resources/config.properties: -------------------------------------------------------------------------------- 1 | key=@ar2dkyqilml;0&*(#^! -------------------------------------------------------------------------------- /jrbac/src/main/resources/mybatis-config.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/WEB-INF/views/common/tag.jsp: -------------------------------------------------------------------------------- 1 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 2 | <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%> 4 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/WEB-INF/views/mobile/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" 2 | pageEncoding="UTF-8"%> 3 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 4 | 5 | 6 | 7 | 8 | ${title } 9 | 10 | 11 | ${msg } 12 | 13 | 14 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/admin/login/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/admin/login/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/admin/login/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/admin/login/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/admin/login/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/admin/login/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/admin/login/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/admin/login/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/admin/login/images/bg.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/admin/login/images/bg.jpeg -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/common/showTip.js: -------------------------------------------------------------------------------- 1 | //tip是提示信息,type:'success'是成功信息,'danger'是失败信息,'info'是普通信息 2 | function ShowTip(tip, type) { 3 | var $tip = $('#tip'); 4 | if ($tip.length == 0) { 5 | $tip = $(''); 6 | $('body').append($tip); 7 | } 8 | $tip.stop(true).attr('class', 'alert alert-' + type).text(tip).css('margin-left', -$tip.outerWidth() / 2).fadeIn(500).delay(2000).fadeOut(500); 9 | } 10 | 11 | function ShowMsg(msg) { 12 | ShowTip(msg, 'info'); 13 | } 14 | 15 | function ShowSuccess(msg) { 16 | ShowTip(msg, 'success'); 17 | } 18 | 19 | function ShowFailure(msg) { 20 | ShowTip(msg, 'danger'); 21 | } 22 | 23 | function ShowWarn(msg, $focus, clear) { 24 | ShowTip(msg, 'warning'); 25 | if ($focus) $focus.focus(); 26 | if (clear) $focus.val(''); 27 | return false; 28 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-datetimepicker/js/locales/bootstrap-datetimepicker.zh-CN.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Simplified Chinese translation for bootstrap-datetimepicker 3 | * Yuan Cheung 4 | */ 5 | ;(function($){ 6 | $.fn.datetimepicker.dates['zh-CN'] = { 7 | days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"], 8 | daysShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周六", "周日"], 9 | daysMin: ["日", "一", "二", "三", "四", "五", "六", "日"], 10 | months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], 11 | monthsShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"], 12 | today: "今天", 13 | suffix: [], 14 | meridiem: ["上午", "下午"] 15 | }; 16 | }(jQuery)); 17 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | ## Scope 2 | This pull request includes a 3 | 4 | - [ ] Bug fix 5 | - [ ] New feature 6 | - [ ] Translation 7 | 8 | ## Changes 9 | The following changes were made 10 | 11 | - 12 | - 13 | - 14 | 15 | ## Related Issues 16 | If this is related to an existing ticket, include a link to it as well. -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/.gitignore: -------------------------------------------------------------------------------- 1 | nuget/content/ 2 | nuget/bootstrap-fileinput.*.nupkg 3 | .DS_Store -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap-fileinput", 3 | "version": "4.3.6", 4 | "homepage": "https://github.com/kartik-v/bootstrap-fileinput", 5 | "authors": [ 6 | "Kartik Visweswaran " 7 | ], 8 | "description": "An enhanced HTML 5 file input for Bootstrap 3.x with file preview, multiple selection, ajax uploads, and more features.", 9 | "main": [ 10 | "./css/fileinput.min.css", 11 | "./js/fileinput.min.js" 12 | ], 13 | "keywords": [ 14 | "bootstrap", 15 | "file", 16 | "input", 17 | "preview", 18 | "image", 19 | "upload", 20 | "ajax", 21 | "multiple", 22 | "delete", 23 | "progress", 24 | "gallery" 25 | ], 26 | "dependencies": { 27 | "jquery": ">= 1.9.0", 28 | "bootstrap": "~3" 29 | }, 30 | "license": "BSD-3-Clause", 31 | "ignore": [ 32 | "**/.*", 33 | "node_modules", 34 | "composer.json", 35 | "examples", 36 | "bower_components", 37 | "test", 38 | "tests" 39 | ] 40 | } 41 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "kartik-v/bootstrap-fileinput", 3 | "description": "An enhanced HTML 5 file input for Bootstrap 3.x with features for file preview for many file types, multiple selection, ajax uploads, and more.", 4 | "keywords": ["bootstrap", "jquery", "file", "input", "preview", "upload", "image", "multiple", "ajax", "delete", "progress"], 5 | "homepage": "https://github.com/kartik-v/bootstrap-fileinput", 6 | "license": "BSD-3-Clause", 7 | "authors": [ 8 | { 9 | "name": "Kartik Visweswaran", 10 | "email": "kartikv2@gmail.com", 11 | "homepage": "http://www.krajee.com/" 12 | } 13 | ], 14 | "autoload": { 15 | "psr-4": { 16 | "kartik\\plugins\\fileinput\\": "" 17 | } 18 | }, 19 | "extra": { 20 | "branch-alias": { 21 | "dev-master": "4.3.x-dev" 22 | } 23 | } 24 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/img/loading-sm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/img/loading-sm.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/img/loading.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/js/plugins/canvas-to-blob.min.js: -------------------------------------------------------------------------------- 1 | !function(a){"use strict";var b=a.HTMLCanvasElement&&a.HTMLCanvasElement.prototype,c=a.Blob&&function(){try{return Boolean(new Blob)}catch(a){return!1}}(),d=c&&a.Uint8Array&&function(){try{return 100===new Blob([new Uint8Array(100)]).size}catch(a){return!1}}(),e=a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||a.MSBlobBuilder,f=(c||e)&&a.atob&&a.ArrayBuffer&&a.Uint8Array&&function(a){var b,f,g,h,i,j;for(b=a.split(",")[0].indexOf("base64")>=0?atob(a.split(",")[1]):decodeURIComponent(a.split(",")[1]),f=new ArrayBuffer(b.length),g=new Uint8Array(f),h=0;h 2 | 3 | 4 | bootstrap-fileinput 5 | bootstrap-fileinput 6 | 4.3.6 7 | Kartik Visweswaran 8 | Kartik Visweswaran 9 | https://github.com/kartik-v/bootstrap-fileinput/blob/master/LICENSE.md 10 | https://github.com/kartik-v/bootstrap-fileinput 11 | http://getbootstrap.com/favicon.ico 12 | false 13 | An enhanced HTML 5 file input for Bootstrap 3.x with file preview for various files, offers multiple selection, and more. 14 | https://github.com/kartik-v/bootstrap-fileinput/blob/master/CHANGE.md 15 | Copyright 2014 - 2016 16 | bootstrap bootstrap-fileinput 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/nuget/build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | 3 | NuGet Update -self 4 | REM remove package content folder 5 | rmdir /s /q content 6 | 7 | REM create new package content folder 8 | mkdir content 9 | 10 | REM create sub folder for js files 11 | mkdir content\Scripts 12 | 13 | REM create sub folders for css and img files 14 | mkdir content\Content 15 | mkdir content\Content\bootstrap-fileinput 16 | 17 | REM delete the previous package versions 18 | REM del bootstrap-fileinput.* 19 | 20 | REM copy the content to the destination folders 21 | xcopy ..\js content\Scripts /D /E /C /R /I /K /Y 22 | xcopy ..\css content\Content\bootstrap-fileinput\css /D /E /C /R /I /K /Y 23 | xcopy ..\img content\Content\bootstrap-fileinput\img /D /E /C /R /I /K /Y 24 | xcopy ..\themes content\Content\bootstrap-fileinput\themes /D /E /C /R /I /K /Y 25 | xcopy ..\sass content\Content\bootstrap-fileinput\sass /D /E /C /R /I /K /Y 26 | 27 | REM create a new package 28 | NuGet Pack Package.nuspec -Exclude NuGet.exe;build.bat 29 | 30 | REM Upload the new package 31 | REM for %%f in (content\Content\bootstrap-fileinput.*) do ( 32 | REM NuGet Push %%f 33 | REM rmdir /s /q content 34 | REM del %%f 35 | REM ) 36 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-fileinput/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap-fileinput", 3 | "version": "4.3.6", 4 | "homepage": "https://github.com/kartik-v/bootstrap-fileinput", 5 | "authors": [ 6 | "Kartik Visweswaran " 7 | ], 8 | "description": "An enhanced HTML 5 file input for Bootstrap 3.x with file preview, multiple selection, ajax uploads, and more features.", 9 | "repository" : { 10 | "type": "git", 11 | "url": "https://github.com/kartik-v/bootstrap-fileinput.git" 12 | }, 13 | "bugs": { 14 | "url": "https://github.com/kartik-v/bootstrap-fileinput/issues" 15 | }, 16 | "keywords": [ 17 | "bootstrap", 18 | "file", 19 | "input", 20 | "preview", 21 | "image", 22 | "upload", 23 | "ajax", 24 | "multiple", 25 | "delete", 26 | "progress", 27 | "gallery" 28 | ], 29 | "main": "./js/fileinput.js", 30 | "style": "./css/fileinput.css", 31 | "peerDependencies": { 32 | "jquery": ">= 1.9.0", 33 | "bootstrap": "~3" 34 | }, 35 | "license": "BSD-3-Clause" 36 | } 37 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.11" 4 | - "0.10" 5 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/css/bootstrap-iconpicker.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap-iconpicker v1.7.0 3 | * 4 | * Copyright 2013-2015 Victor Valencia Rico. 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world by @recktoner. 9 | */ 10 | 11 | .iconpicker .caret { 12 | margin-left: 10px !important; 13 | } 14 | 15 | .iconpicker { 16 | min-width: 60px; 17 | } 18 | 19 | .iconpicker input.search-control { 20 | margin-bottom: 6px; 21 | margin-top: 6px; 22 | } 23 | 24 | div.iconpicker.left .table-icons { 25 | margin-right: auto; 26 | } 27 | 28 | div.iconpicker.center .table-icons { 29 | margin-left: auto; 30 | margin-right: auto; 31 | } 32 | 33 | div.iconpicker.right .table-icons { 34 | margin-left: auto; 35 | } 36 | 37 | .table-icons .btn { 38 | min-height: 30px; 39 | min-width: 35px; 40 | text-align: center; 41 | padding: 0; 42 | margin: 2px; 43 | } 44 | 45 | .table-icons td { 46 | min-width: 39px; 47 | } 48 | 49 | .popover { 50 | max-width: inherit !important; 51 | } 52 | 53 | .iconpicker-popover { 54 | z-index: 1050 !important; 55 | } 56 | 57 | .iconpicker-popover .search-control { 58 | margin-bottom: 6px; 59 | margin-top: 6px; 60 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/css/bootstrap-iconpicker.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap-iconpicker v1.7.0 3 | * 4 | * Copyright 2013-2015 Victor Valencia Rico. 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world by @recktoner. 9 | */.iconpicker .caret{margin-left:10px!important}.iconpicker{min-width:60px}.iconpicker input.search-control{margin-bottom:6px;margin-top:6px}div.iconpicker.left .table-icons{margin-right:auto}div.iconpicker.center .table-icons{margin-left:auto;margin-right:auto}div.iconpicker.right .table-icons{margin-left:auto}.table-icons .btn{min-height:30px;min-width:35px;text-align:center;padding:0;margin:2px}.table-icons td{min-width:39px}.popover{max-width:inherit!important}.iconpicker-popover{z-index:1050!important}.iconpicker-popover .search-control{margin-bottom:6px;margin-top:6px} -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/elusive-icons-2.0.0/fonts/Elusive-Icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/elusive-icons-2.0.0/fonts/Elusive-Icons.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/elusive-icons-2.0.0/fonts/Elusive-Icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/elusive-icons-2.0.0/fonts/Elusive-Icons.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/elusive-icons-2.0.0/fonts/Elusive-Icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/elusive-icons-2.0.0/fonts/Elusive-Icons.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.0.0/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.1.0/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/font-awesome-4.2.0/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/ionicons-1.5.2/fonts/ionicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/ionicons-1.5.2/fonts/ionicons.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/ionicons-1.5.2/fonts/ionicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/ionicons-1.5.2/fonts/ionicons.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/ionicons-1.5.2/fonts/ionicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/ionicons-1.5.2/fonts/ionicons.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/map-icons-2.1.0/fonts/map-icons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/map-icons-2.1.0/fonts/map-icons.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/map-icons-2.1.0/fonts/map-icons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/map-icons-2.1.0/fonts/map-icons.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/map-icons-2.1.0/fonts/map-icons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/map-icons-2.1.0/fonts/map-icons.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/material-design-1.1.1/fonts/Material-Design-Iconic-Font.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/material-design-1.1.1/fonts/Material-Design-Iconic-Font.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/material-design-1.1.1/fonts/Material-Design-Iconic-Font.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/material-design-1.1.1/fonts/Material-Design-Iconic-Font.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/material-design-1.1.1/fonts/Material-Design-Iconic-Font.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/material-design-1.1.1/fonts/Material-Design-Iconic-Font.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons-local.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons-local.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/octicons-2.1.2/fonts/octicons.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/typicons-2.0.6/fonts/typicons.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/typicons-2.0.6/fonts/typicons.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/typicons-2.0.6/fonts/typicons.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/typicons-2.0.6/fonts/typicons.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/typicons-2.0.6/fonts/typicons.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/typicons-2.0.6/fonts/typicons.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/WeatherIcons-Regular.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/WeatherIcons-Regular.otf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/weathericons-regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/weathericons-regular-webfont.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/weathericons-regular-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/weathericons-regular-webfont.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/weathericons-regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/bootstrap-plugin/bootstrap-iconpicker/icon-fonts/weather-icons-1.2.0/fonts/weathericons-regular-webfont.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/cryptojs/mode-ecb.js: -------------------------------------------------------------------------------- 1 | /* 2 | CryptoJS v3.1.2 3 | code.google.com/p/crypto-js 4 | (c) 2009-2013 by Jeff Mott. All rights reserved. 5 | code.google.com/p/crypto-js/wiki/License 6 | */ 7 | /** 8 | * Electronic Codebook block mode. 9 | */ 10 | CryptoJS.mode.ECB = (function () { 11 | var ECB = CryptoJS.lib.BlockCipherMode.extend(); 12 | 13 | ECB.Encryptor = ECB.extend({ 14 | processBlock: function (words, offset) { 15 | this._cipher.encryptBlock(words, offset); 16 | } 17 | }); 18 | 19 | ECB.Decryptor = ECB.extend({ 20 | processBlock: function (words, offset) { 21 | this._cipher.decryptBlock(words, offset); 22 | } 23 | }); 24 | 25 | return ECB; 26 | }()); 27 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/easyform/easyform.css: -------------------------------------------------------------------------------- 1 | .easyform-close{background-image: url('close-normal.png'); width:20px !important; height: 20px !important; line-height: 20px !important;} 2 | .easyform-close:hover{background-image: url('close-over.png');} 3 | 4 | .easytip-text, .easytip-text:before, .easytip-text:after{ box-sizing: content-box;} 5 | .easytip-arrow, .easytip-arrow:before, .easytip-arrow:after{box-sizing: content-box;} 6 | 7 | .easy-black{color:rgba(238,238,238,1);background-color:rgba(75,75,75,0.8);border:1px solid rgba(75,75,75,1);border-radius:5px; padding: 10px;} 8 | .easy-blue{color:rgba(255,255,255,1);background-color:rgba(51,153,204,0.8);border:1px solid rgba(102,153,204,1);border-radius:5px;padding: 10px;} 9 | .easy-red{color:rgba(255,255,255,1);background-color:rgba(255,102,102,0.9);border:1px solid rgba(204,0,51,1);border-radius:5px;padding: 10px;} 10 | .easy-white{color:rgba(102,102,102,1);background-color:rgba(255,255,255,0.9);border:1px solid rgba(153,153,153,1);border-radius:5px;padding: 10px;} -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/awesomeStyle/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/awesomeStyle/img/loading.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/line_conn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/line_conn.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/loading.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/metro.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/metro.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/metro.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/metroStyle/img/metro.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/1_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/1_close.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/1_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/1_open.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/2.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/3.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/4.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/5.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/6.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/7.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/8.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/diy/9.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/line_conn.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/line_conn.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/loading.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/zTreeStandard.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/zTreeStandard.gif -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/zTreeStandard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/plugins/ztree/css/zTreeStyle/img/zTreeStandard.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/bootstrap/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bootstrap", 3 | "description": "The most popular front-end framework for developing responsive, mobile first projects on the web.", 4 | "keywords": [ 5 | "css", 6 | "js", 7 | "less", 8 | "mobile-first", 9 | "responsive", 10 | "front-end", 11 | "framework", 12 | "web" 13 | ], 14 | "homepage": "http://getbootstrap.com", 15 | "license": "MIT", 16 | "moduleType": "globals", 17 | "main": [ 18 | "less/bootstrap.less", 19 | "dist/js/bootstrap.js" 20 | ], 21 | "ignore": [ 22 | "/.*", 23 | "_config.yml", 24 | "CNAME", 25 | "composer.json", 26 | "CONTRIBUTING.md", 27 | "docs", 28 | "js/tests", 29 | "test-infra" 30 | ], 31 | "dependencies": { 32 | "jquery": "1.9.1 - 2" 33 | }, 34 | "version": "3.3.6", 35 | "_release": "3.3.6", 36 | "_resolution": { 37 | "type": "version", 38 | "tag": "v3.3.6", 39 | "commit": "81df608a40bf0629a1dc08e584849bb1e43e0b7a" 40 | }, 41 | "_source": "git://github.com/twbs/bootstrap.git", 42 | "_target": "~3.3.6", 43 | "_originalSource": "bootstrap" 44 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2 -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/bootstrap/dist/js/npm.js: -------------------------------------------------------------------------------- 1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment. 2 | require('../../js/transition.js') 3 | require('../../js/alert.js') 4 | require('../../js/button.js') 5 | require('../../js/carousel.js') 6 | require('../../js/collapse.js') 7 | require('../../js/dropdown.js') 8 | require('../../js/modal.js') 9 | require('../../js/tooltip.js') 10 | require('../../js/popover.js') 11 | require('../../js/scrollspy.js') 12 | require('../../js/tab.js') 13 | require('../../js/affix.js') -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "datatables-plugins", 3 | "homepage": "https://github.com/DataTables/Plugins", 4 | "version": "1.0.1", 5 | "_release": "1.0.1", 6 | "_resolution": { 7 | "type": "version", 8 | "tag": "1.0.1", 9 | "commit": "a94e328df63c79af43123b99ada5ff88d601a31d" 10 | }, 11 | "_source": "git://github.com/DataTables/Plugins.git", 12 | "_target": "~1.0.1", 13 | "_originalSource": "datatables-plugins", 14 | "_direct": true 15 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/api/average().js: -------------------------------------------------------------------------------- 1 | /** 2 | * It can sometimes be useful to get the average of data in an API result set, 3 | * be it from a column, or a collection of cells. This method provides exactly 4 | * that ability. 5 | * 6 | * @name average() 7 | * @summary Average the values in a data set. 8 | * @author [Allan Jardine](http://sprymedia.co.uk) 9 | * @requires DataTables 1.10+ 10 | * 11 | * @returns {Number} Calculated average 12 | * 13 | * @example 14 | * // Average a column 15 | * var table = $('#example').DataTable(); 16 | * table.column( 3 ).data().average(); 17 | * 18 | * @example 19 | * // Average two cells 20 | * var table = $('#example').DataTable(); 21 | * table.cells( 0, [3,4] ).data().average(); 22 | */ 23 | 24 | jQuery.fn.dataTable.Api.register( 'average()', function () { 25 | var data = this.flatten(); 26 | var sum = data.reduce( function ( a, b ) { 27 | return (a*1) + (b*1); // cast values in-case they are strings 28 | } ); 29 | 30 | return sum / data.length; 31 | } ); 32 | 33 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/api/column().title().js: -------------------------------------------------------------------------------- 1 | /** 2 | * This plug-in will read the text from the header cell of a column, returning 3 | * that value. 4 | * 5 | * @name column().title() 6 | * @summary Get the title of a column 7 | * @author Alejandro Navarro 8 | * @requires DataTables 1.10+ 9 | * 10 | * @returns {String} Column title 11 | * 12 | * @example 13 | * // Read the title text of column index 3 14 | * var table = $('#example').DataTable(); 15 | * table.column( 3 ).title(); 16 | */ 17 | 18 | $.fn.dataTable.Api.register( 'column().title()', function () { 19 | var colheader = this.header(); 20 | return $(colheader).text().trim(); 21 | } ); -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/api/fnDataUpdate.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Update the internal data for a `dt-tag tr` element based on what is used in the 3 | * DOM. You will likely want to call fnDraw() after this function. 4 | * 5 | * DataTables 1.10+ has this ability built-in through the 6 | * `dt-api row().invalidate()` method. As such this method is marked deprecated, 7 | * but is available for use with legacy version of DataTables. Please use the 8 | * new API if you are used DataTables 1.10 or newer. 9 | * 10 | * @name fnDataUpdate 11 | * @summary Update DataTables cached data from the DOM 12 | * @author Lior Gerson 13 | * @deprecated 14 | * 15 | * @param {node} nTr `dt-tag tr` element to get the data from 16 | * @param {integer} iRowIndex Row's position in the table (`fnGetPosition`). 17 | */ 18 | 19 | jQuery.fn.dataTableExt.oApi.fnDataUpdate = function ( oSettings, nRowObject, iRowIndex ) 20 | { 21 | jQuery(nRowObject).find("TD").each( function(i) { 22 | var iColIndex = oSettings.oApi._fnVisibleToColumnIndex( oSettings, i ); 23 | oSettings.oApi._fnSetCellData( oSettings, iRowIndex, iColIndex, jQuery(this).html() ); 24 | } ); 25 | }; 26 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/api/fnDisplayStart.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Set the point at which DataTables will start it's display of data in the 3 | * table. 4 | * 5 | * @name fnDisplayStart 6 | * @summary Change the table's paging display start. 7 | * @author [Allan Jardine](http://sprymedia.co.uk) 8 | * @deprecated 9 | * 10 | * @param {integer} iStart Display start index. 11 | * @param {boolean} [bRedraw=false] Indicate if the table should do a redraw or not. 12 | * 13 | * @example 14 | * var table = $('#example').dataTable(); 15 | * table.fnDisplayStart( 21 ); 16 | */ 17 | 18 | jQuery.fn.dataTableExt.oApi.fnDisplayStart = function ( oSettings, iStart, bRedraw ) 19 | { 20 | if ( typeof bRedraw == 'undefined' ) { 21 | bRedraw = true; 22 | } 23 | 24 | oSettings._iDisplayStart = iStart; 25 | if ( oSettings.oApi._fnCalculateEnd ) { 26 | oSettings.oApi._fnCalculateEnd( oSettings ); 27 | } 28 | 29 | if ( bRedraw ) { 30 | oSettings.oApi._fnDraw( oSettings ); 31 | } 32 | }; 33 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/api/fnFilterOnReturn.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This plug-in removes the default behaviour of DataTables to filter on each 3 | * keypress, and replaces with it the requirement to press the enter key to 4 | * perform the filter. 5 | * 6 | * @name fnFilterOnReturn 7 | * @summary Require the return key to be pressed to filter a table 8 | * @author [Jon Ranes](http://www.mvccms.com/) 9 | * 10 | * @returns {jQuery} jQuery instance 11 | * 12 | * @example 13 | * $(document).ready(function() { 14 | * $('.dataTable').dataTable().fnFilterOnReturn(); 15 | * } ); 16 | */ 17 | 18 | jQuery.fn.dataTableExt.oApi.fnFilterOnReturn = function (oSettings) { 19 | var _that = this; 20 | 21 | this.each(function (i) { 22 | $.fn.dataTableExt.iApiIndex = i; 23 | var $this = this; 24 | var anControl = $('input', _that.fnSettings().aanFeatures.f); 25 | anControl 26 | .unbind('keyup search input') 27 | .bind('keypress', function (e) { 28 | if (e.which == 13) { 29 | $.fn.dataTableExt.iApiIndex = i; 30 | _that.fnFilter(anControl.val()); 31 | } 32 | }); 33 | return this; 34 | }); 35 | return this; 36 | }; 37 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/api/fnGetColumnIndex.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Maintenance of web-sites can often cause unexpected headaches, particularly 3 | * if the hardcoded index of an array (the columns in a DataTables instance) 4 | * needs to change due to an added or removed column. This plug-in function 5 | * will match a given string to the title of a column in the table and return 6 | * the column index, helping to overcome this problem. 7 | * 8 | * @name fnGetColumnIndex 9 | * @summary Get the column index by searching the column titles 10 | * @author [Michael Ross](http://www.rosstechassociates.com/) 11 | * 12 | * @param {string} sCol Column title to search for 13 | * @returns {integer} Column index, or -1 if not found 14 | * 15 | * @example 16 | * var table = $('#example').dataTable(); 17 | * table.fnGetColumnIndex( 'Browser' ); 18 | */ 19 | 20 | jQuery.fn.dataTableExt.oApi.fnGetColumnIndex = function ( oSettings, sCol ) 21 | { 22 | var cols = oSettings.aoColumns; 23 | for ( var x=0, xLen=cols.length ; x").addClass(f.oClasses.sLength),h=-1;this.container=function(){return e[0]};e.on("click.dtll","a",function(b){b.preventDefault();c.page.len(1*a(this).data("length")).draw(!1)});c.on("draw",function(){if(c.page.len()!==h){var b=f.aLengthMenu,d=2===b.length&&a.isArray(b[0])?b[1]:b,g=2===b.length&&a.isArray(b[0])?b[0]:b,b=a.map(g,function(b,a){return b==c.page.len()?''+d[a]+"":''+d[a]+""});e.html(f.oLanguage.sLengthMenu.replace("_MENU_",b.join(" | ")));h=c.page.len()}});c.on("destroy",function(){e.off("click.dtll","a")})};a.fn.dataTable.ext.feature.push({fnInit:function(d){return(new a.fn.dataTable.LengthLinks(d)).container()},cFeature:"L",sFeature:"LengthLinks"})})(window,document,jQuery); 7 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/features/searchHighlight/dataTables.searchHighlight.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | table.dataTable span.highlight { 4 | background-color: #FFFF88; 5 | } 6 | 7 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/features/searchHighlight/dataTables.searchHighlight.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | SearchHighlight for DataTables v1.0.1 3 | 2014 SpryMedia Ltd - datatables.net/license 4 | */ 5 | (function(f,c,b){b(c).on("init.dt.dth",function(c,d){var a=new b.fn.dataTable.Api(d),e=b(a.table().body());if(b(a.table().node()).hasClass("searchHighlight")||d.oInit.searchHighlight||b.fn.dataTable.defaults.searchHighlight)a.on("draw.dt.dth column-visibility.dt.dth",function(){e.unhighlight();a.rows({filter:"applied"}).data().length&&e.highlight(a.search().split(" "))}).on("destroy",function(){a.off("draw.dt.dth column-visibility.dt.dth")})})})(window,document,jQuery); 6 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/filtering/type-based/html.js: -------------------------------------------------------------------------------- 1 | /** 2 | * DataTables has a built in type called `html` which will strip HTML tags 3 | * from a search string, but it doesn't cope with nested HTML inside another 4 | * element's attributes (for example DOM0 events with have HTML in them). This 5 | * plug-in function overrules the built-in method and provides complete HTML 6 | * tag removal. 7 | * 8 | * Note that this function is not included in DataTables by 9 | * default because it is slightly slower than the built-in method, which is 10 | * good enough for by far the majority of use cases. 11 | * 12 | * @summary Strip HTML using DOM methods 13 | * @name html 14 | * @author _guillimon_ 15 | * 16 | * @example 17 | * $(document).ready(function() { 18 | * $('#example').dataTable({ 19 | * "columnDefs": [ 20 | * { type: "html", target: 0 } 21 | * ] 22 | * }); 23 | * } ); 24 | */ 25 | 26 | (function () { 27 | 28 | var _div = document.createElement('div'); 29 | 30 | jQuery.fn.dataTable.ext.type.search.html = function ( data ) { 31 | _div.innerHTML = data; 32 | 33 | return _div.textContent ? 34 | _div.textContent.replace(/\n/g," ") : 35 | _div.innerText.replace(/\n/g," "); 36 | }; 37 | 38 | })(); 39 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/filtering/type-based/phoneNumber.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Telephone numbers are a common data point to display in HTML tables, and are 3 | * often formatted (e.g. `dt-string 555-1234`). Typically, when searching a 4 | * table a user would need to enter the number in exactly the same format it is 5 | * displayed in, but this is not always convenient (e.g. you might search for 6 | * `dt-string 5551`). 7 | * 8 | * This filtering plug-in will allow both forms to be matched be providing both 9 | * the formatted and de-formatted data to the table's search. 10 | * 11 | * @summary Make phone numbers searchable formatted or unformatted 12 | * @name Phone number 13 | * @author Allan Jardine 14 | * 15 | * @example 16 | * $(document).ready(function() { 17 | * $('#example').dataTable( { 18 | * columnDefs: [ 19 | * { type: 'phoneNumber', target: 4 } 20 | * ] 21 | * } ); 22 | * } ); 23 | */ 24 | 25 | jQuery.fn.DataTable.ext.type.search.phoneNumber = function ( data ) { 26 | return ! data ? 27 | '' : 28 | typeof data === 'string' ? 29 | data + data.replace(/[ \-]/g, '') : 30 | data; 31 | }; 32 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Afrikaans.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Afrikaans translation 3 | * @name Afrikaans 4 | * @anchor Afrikaans 5 | * @author Ajoft Software 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Geen data beskikbaar in tabel", 10 | "sInfo": "uitstalling _START_ to _END_ of _TOTAL_ inskrywings", 11 | "sInfoEmpty": "uitstalling 0 to 0 of 0 inskrywings", 12 | "sInfoFiltered": "(gefiltreer uit _MAX_ totaal inskrywings)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "uitstal _MENU_ inskrywings", 16 | "sLoadingRecords": "laai...", 17 | "sProcessing": "verwerking...", 18 | "sSearch": "soektog:", 19 | "sZeroRecords": "Geen treffers gevind", 20 | "oPaginate": { 21 | "sFirst": "eerste", 22 | "sLast": "laaste", 23 | "sNext": "volgende", 24 | "sPrevious": "vorige" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktiveer kolom stygende te sorteer", 28 | "sSortDescending": ": aktiveer kolom orde te sorteer" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Albanian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Albanian translation 3 | * @name Albanian 4 | * @anchor Albanian 5 | * @author Besnik Belegu 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Nuk ka asnjë të dhënë në tabele", 10 | "sInfo": "Duke treguar _START_ deri _END_ prej _TOTAL_ reshtave", 11 | "sInfoEmpty": "Duke treguar 0 deri 0 prej 0 reshtave", 12 | "sInfoFiltered": "(të filtruara nga gjithësej _MAX_ reshtave)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Shiko _MENU_ reshta", 16 | "sLoadingRecords": "Duke punuar...", 17 | "sProcessing": "Duke procesuar...", 18 | "sSearch": "Kërkoni:", 19 | "sZeroRecords": "Asnjë e dhënë nuk u gjet", 20 | "oPaginate": { 21 | "sFirst": "E para", 22 | "sLast": "E Fundit", 23 | "sNext": "Tjetra", 24 | "sPrevious": "E Kaluara" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktivizo për të sortuar kolumnin me vlera në ngritje", 28 | "sSortDescending": ": aktivizo për të sortuar kolumnin me vlera në zbritje" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Arabic.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Arabic translation 3 | * @name Arabic 4 | * @anchor Arabic 5 | * @author Ossama Khayat 6 | */ 7 | 8 | { 9 | "sProcessing": "جاري التحميل...", 10 | "sLengthMenu": "أظهر مُدخلات _MENU_", 11 | "sZeroRecords": "لم يُعثر على أية سجلات", 12 | "sInfo": "إظهار _START_ إلى _END_ من أصل _TOTAL_ مُدخل", 13 | "sInfoEmpty": "يعرض 0 إلى 0 من أصل 0 سجلّ", 14 | "sInfoFiltered": "(منتقاة من مجموع _MAX_ مُدخل)", 15 | "sInfoPostFix": "", 16 | "sSearch": "ابحث:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "الأول", 20 | "sPrevious": "السابق", 21 | "sNext": "التالي", 22 | "sLast": "الأخير" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Azerbaijan.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Azerbaijan translation 3 | * @name Azerbaijan 4 | * @anchor Azerbaijan 5 | * @author H.Huseyn 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Cədvəldə heç bir məlumat yoxdur", 10 | "sInfo": " _TOTAL_ Nəticədən _START_ - _END_ Arası Nəticələr", 11 | "sInfoEmpty": "Nəticə Yoxdur", 12 | "sInfoFiltered": "( _MAX_ Nəticə İçindən Tapılanlar)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Səhifədə _MENU_ Nəticə Göstər", 16 | "sLoadingRecords": "Yüklənir...", 17 | "sProcessing": "Gözləyin...", 18 | "sSearch": "Axtarış:", 19 | "sZeroRecords": "Nəticə Tapılmadı.", 20 | "oPaginate": { 21 | "sFirst": "İlk", 22 | "sLast": "Axırıncı", 23 | "sNext": "Sonraki", 24 | "sPrevious": "Öncəki" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": sütunu artma sırası üzərə aktiv etmək", 28 | "sSortDescending": ": sütunu azalma sırası üzərə aktiv etmək" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Bangla.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Bangla translation 3 | * @name Bangla 4 | * @anchor Bangla 5 | * @author Md. Khaled Ben Islam 6 | */ 7 | 8 | { 9 | "sProcessing": "প্রসেসিং হচ্ছে...", 10 | "sLengthMenu": "_MENU_ টা এন্ট্রি দেখাও", 11 | "sZeroRecords": "আপনি যা অনুসন্ধান করেছেন তার সাথে মিলে যাওয়া কোন রেকর্ড খুঁজে পাওয়া যায় নাই", 12 | "sInfo": "_TOTAL_ টা এন্ট্রির মধ্যে _START_ থেকে _END_ পর্যন্ত দেখানো হচ্ছে", 13 | "sInfoEmpty": "কোন এন্ট্রি খুঁজে পাওয়া যায় নাই", 14 | "sInfoFiltered": "(মোট _MAX_ টা এন্ট্রির মধ্যে থেকে বাছাইকৃত)", 15 | "sInfoPostFix": "", 16 | "sSearch": "অনুসন্ধান:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "প্রথমটা", 20 | "sPrevious": "আগেরটা", 21 | "sNext": "পরবর্তীটা", 22 | "sLast": "শেষেরটা" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Belarusian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Belarusian translation 3 | * @name Belarusian 4 | * @anchor Belarusian 5 | * @author vkachurka 6 | */ 7 | { 8 | "sProcessing": "Пачакайце...", 9 | "sLengthMenu": "Паказваць _MENU_ запісаў", 10 | "sZeroRecords": "Запісы адсутнічаюць.", 11 | "sInfo": "Запісы з _START_ па _END_ з _TOTAL_ запісаў", 12 | "sInfoEmpty": "Запісы з 0 па 0 з 0 запісаў", 13 | "sInfoFiltered": "(адфільтравана з _MAX_ запісаў)", 14 | "sInfoPostFix": "", 15 | "sSearch": "Пошук:", 16 | "sUrl": "", 17 | "oPaginate": { 18 | "sFirst": "Першая", 19 | "sPrevious": "Папярэдняя", 20 | "sNext": "Наступная", 21 | "sLast": "Апошняя" 22 | }, 23 | "oAria": { 24 | "sSortAscending": ": актываваць для сартавання слупка па ўзрастанні", 25 | "sSortDescending": ": актываваць для сартавання слупка па змяншэнні" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Bulgarian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Bulgarian translation 3 | * @name Bulgarian 4 | * @anchor Bulgarian 5 | * @author Rostislav Stoyanov 6 | */ 7 | 8 | { 9 | "sProcessing": "Обработка на резултатите...", 10 | "sLengthMenu": "Показване на _MENU_ резултата", 11 | "sZeroRecords": "Няма намерени резултати", 12 | "sInfo": "Показване на резултати от _START_ до _END_ от общо _TOTAL_", 13 | "sInfoEmpty": "Показване на резултати от 0 до 0 от общо 0", 14 | "sInfoFiltered": "(филтрирани от общо _MAX_ резултата)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Търсене във всички колони:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Първа", 20 | "sPrevious": "Предишна", 21 | "sNext": "Следваща", 22 | "sLast": "Последна" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Catalan.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Catalan translation 3 | * @name Catalan 4 | * @anchor Catalan 5 | * @author Sergi 6 | */ 7 | 8 | { 9 | "sProcessing": "Processant...", 10 | "sLengthMenu": "Mostra _MENU_ registres", 11 | "sZeroRecords": "No s'han trobat registres.", 12 | "sInfo": "Mostrant de _START_ a _END_ de _TOTAL_ registres", 13 | "sInfoEmpty": "Mostrant de 0 a 0 de 0 registres", 14 | "sInfoFiltered": "(filtrat de _MAX_ total registres)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Filtrar:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Primer", 20 | "sPrevious": "Anterior", 21 | "sNext": "Següent", 22 | "sLast": "Últim" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Chinese-traditional.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Chinese (traditional) translation 3 | * @name Chinese (traditional) 4 | * @anchor Chinese (traditional) 5 | * @author GimmeRank Affiliate 6 | */ 7 | 8 | { 9 | "sProcessing":   "處理中...", 10 | "sLengthMenu":   "顯示 _MENU_ 項結果", 11 | "sZeroRecords":  "沒有匹配結果", 12 | "sInfo":         "顯示第 _START_ 至 _END_ 項結果,共 _TOTAL_ 項", 13 | "sInfoEmpty":    "顯示第 0 至 0 項結果,共 0 項", 14 | "sInfoFiltered": "(從 _MAX_ 項結果過濾)", 15 | "sInfoPostFix":  "", 16 | "sSearch":       "搜索:", 17 | "sUrl":          "", 18 | "oPaginate": { 19 | "sFirst":    "首頁", 20 | "sPrevious": "上頁", 21 | "sNext":     "下頁", 22 | "sLast":     "尾頁" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Chinese.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Chinese translation 3 | * @name Chinese 4 | * @anchor Chinese 5 | * @author Chi Cheng 6 | */ 7 | 8 | { 9 | "sProcessing": "处理中...", 10 | "sLengthMenu": "显示 _MENU_ 项结果", 11 | "sZeroRecords": "没有匹配结果", 12 | "sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项", 13 | "sInfoEmpty": "显示第 0 至 0 项结果,共 0 项", 14 | "sInfoFiltered": "(由 _MAX_ 项结果过滤)", 15 | "sInfoPostFix": "", 16 | "sSearch": "搜索:", 17 | "sUrl": "", 18 | "sEmptyTable": "表中数据为空", 19 | "sLoadingRecords": "载入中...", 20 | "sInfoThousands": ",", 21 | "oPaginate": { 22 | "sFirst": "首页", 23 | "sPrevious": "上页", 24 | "sNext": "下页", 25 | "sLast": "末页" 26 | }, 27 | "oAria": { 28 | "sSortAscending": ": 以升序排列此列", 29 | "sSortDescending": ": 以降序排列此列" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Croatian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Croatian translation 3 | * @name Croatian 4 | * @anchor Croatian 5 | * @author Predrag Mušić and _hrvoj3e_ 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Nema podataka u tablici", 10 | "sInfo": "Prikazano _START_ do _END_ od _TOTAL_ rezultata", 11 | "sInfoEmpty": "Prikazano 0 do 0 od 0 rezultata", 12 | "sInfoFiltered": "(filtrirano iz _MAX_ ukupnih rezultata)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Prikaži _MENU_ rezultata po stranici", 16 | "sLoadingRecords": "Dohvaćam...", 17 | "sProcessing": "Obrađujem...", 18 | "sSearch": "Pretraži:", 19 | "sZeroRecords": "Ništa nije pronađeno", 20 | "oPaginate": { 21 | "sFirst": "Prva", 22 | "sPrevious": "Nazad", 23 | "sNext": "Naprijed", 24 | "sLast": "Zadnja" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktiviraj za rastući poredak", 28 | "sSortDescending": ": aktiviraj za padajući poredak" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Czech.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Czech translation 3 | * @name Czech 4 | * @anchor Czech 5 | * @author Magerio 6 | */ 7 | 8 | { 9 | "sProcessing": "Provádím...", 10 | "sLengthMenu": "Zobraz záznamů _MENU_", 11 | "sZeroRecords": "Žádné záznamy nebyly nalezeny", 12 | "sInfo": "Zobrazuji _START_ až _END_ z celkem _TOTAL_ záznamů", 13 | "sInfoEmpty": "Zobrazuji 0 až 0 z 0 záznamů", 14 | "sInfoFiltered": "(filtrováno z celkem _MAX_ záznamů)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Hledat:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "První", 20 | "sPrevious": "Předchozí", 21 | "sNext": "Další", 22 | "sLast": "Poslední" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Danish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Danish translation 3 | * @name Danish 4 | * @anchor Danish 5 | * @author Werner Knudsen 6 | */ 7 | 8 | { 9 | "sProcessing": "Henter...", 10 | "sLengthMenu": "Vis _MENU_ linjer", 11 | "sZeroRecords": "Ingen linjer matcher søgningen", 12 | "sInfo": "Viser _START_ til _END_ af _TOTAL_ linjer", 13 | "sInfoEmpty": "Viser 0 til 0 af 0 linjer", 14 | "sInfoFiltered": "(filtreret fra _MAX_ linjer)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Søg:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Første", 20 | "sPrevious": "Forrige", 21 | "sNext": "Næste", 22 | "sLast": "Sidste" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Dutch.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Dutch translation 3 | * @name Dutch 4 | * @anchor Dutch 5 | * @author Erwin Kerk and ashwin 6 | */ 7 | 8 | { 9 | "sProcessing": "Bezig...", 10 | "sLengthMenu": "_MENU_ resultaten weergeven", 11 | "sZeroRecords": "Geen resultaten gevonden", 12 | "sInfo": "_START_ tot _END_ van _TOTAL_ resultaten", 13 | "sInfoEmpty": "Geen resultaten om weer te geven", 14 | "sInfoFiltered": " (gefilterd uit _MAX_ resultaten)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Zoeken:", 17 | "sEmptyTable": "Geen resultaten aanwezig in de tabel", 18 | "sInfoThousands": ".", 19 | "sLoadingRecords": "Een moment geduld aub - bezig met laden...", 20 | "oPaginate": { 21 | "sFirst": "Eerste", 22 | "sLast": "Laatste", 23 | "sNext": "Volgende", 24 | "sPrevious": "Vorige" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/English.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * English - this is the default DataTables ships with 3 | * @name English 4 | * @anchor English 5 | * @author Allan Jardine 6 | */ 7 | 8 | { 9 | "sEmptyTable": "No data available in table", 10 | "sInfo": "Showing _START_ to _END_ of _TOTAL_ entries", 11 | "sInfoEmpty": "Showing 0 to 0 of 0 entries", 12 | "sInfoFiltered": "(filtered from _MAX_ total entries)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Show _MENU_ entries", 16 | "sLoadingRecords": "Loading...", 17 | "sProcessing": "Processing...", 18 | "sSearch": "Search:", 19 | "sZeroRecords": "No matching records found", 20 | "oPaginate": { 21 | "sFirst": "First", 22 | "sLast": "Last", 23 | "sNext": "Next", 24 | "sPrevious": "Previous" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": activate to sort column ascending", 28 | "sSortDescending": ": activate to sort column descending" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Estonian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Estonian translation 3 | * @name Estonian 4 | * @anchor Estonian 5 | * @author Janek Todoruk 6 | */ 7 | 8 | { 9 | "sProcessing": "Palun oodake, koostan kuvamiseks nimekirja!", 10 | "sLengthMenu": "Näita kirjeid _MENU_ kaupa", 11 | "sZeroRecords": "Otsitavat vastet ei leitud.", 12 | "sInfo": "Kuvatud: _TOTAL_ kirjet (_START_-_END_)", 13 | "sInfoEmpty": "Otsinguvasteid ei leitud", 14 | "sInfoFiltered": " - filteeritud _MAX_ kirje seast.", 15 | "sInfoPostFix": "Kõik kuvatud kirjed põhinevad reaalsetel tulemustel.", 16 | "sSearch": "Otsi kõikide tulemuste seast:", 17 | "oPaginate": { 18 | "sFirst": "Algus", 19 | "sPrevious": "Eelmine", 20 | "sNext": "Järgmine", 21 | "sLast": "Viimane" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Filipino.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Filipino translation 3 | * @name Filipino 4 | * @anchor Filipino 5 | * @author Citi360 6 | */ 7 | 8 | { 9 | "sProcessing": "Pagproseso...", 10 | "sLengthMenu": "Ipakita _MENU_ entries", 11 | "sZeroRecords": "Walang katugmang mga talaan na natagpuan", 12 | "sInfo": "Ipinapakita ang _START_ sa _END_ ng _TOTAL_ entries", 13 | "sInfoEmpty": "Ipinapakita ang 0-0 ng 0 entries", 14 | "sInfoFiltered": "(na-filter mula _MAX_ kabuuang entries)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Paghahanap:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Unang", 20 | "sPrevious": "Nakaraan", 21 | "sNext": "Susunod", 22 | "sLast": "Huli" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Finnish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Finnish translation 3 | * @name Finnish 4 | * @anchor Finnish 5 | * @author Seppo Äyräväinen 6 | */ 7 | 8 | { 9 | "sProcessing": "Hetkinen...", 10 | "sLengthMenu": "Näytä kerralla _MENU_ riviä", 11 | "sZeroRecords": "Tietoja ei löytynyt", 12 | "sInfo": "Näytetään rivit _START_ - _END_ (yhteensä _TOTAL_ )", 13 | "sInfoEmpty": "Näytetään 0 - 0 (yhteensä 0)", 14 | "sInfoFiltered": "(suodatettu _MAX_ tuloksen joukosta)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Etsi:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Ensimmäinen", 20 | "sPrevious": "Edellinen", 21 | "sNext": "Seuraava", 22 | "sLast": "Viimeinen" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/French.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * French translation 3 | * @name French 4 | * @anchor French 5 | * @author 6 | */ 7 | 8 | { 9 | "sProcessing": "Traitement en cours...", 10 | "sSearch": "Rechercher :", 11 | "sLengthMenu": "Afficher _MENU_ éléments", 12 | "sInfo": "Affichage de l'élement _START_ à _END_ sur _TOTAL_ éléments", 13 | "sInfoEmpty": "Affichage de l'élement 0 à 0 sur 0 éléments", 14 | "sInfoFiltered": "(filtré de _MAX_ éléments au total)", 15 | "sInfoPostFix": "", 16 | "sLoadingRecords": "Chargement en cours...", 17 | "sZeroRecords": "Aucun élément à afficher", 18 | "sEmptyTable": "Aucune donnée disponible dans le tableau", 19 | "oPaginate": { 20 | "sFirst": "Premier", 21 | "sPrevious": "Précédent", 22 | "sNext": "Suivant", 23 | "sLast": "Dernier" 24 | }, 25 | "oAria": { 26 | "sSortAscending": ": activer pour trier la colonne par ordre croissant", 27 | "sSortDescending": ": activer pour trier la colonne par ordre décroissant" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Galician.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Galician translation 3 | * @name Galician 4 | * @anchor Galician 5 | * @author Emilio 6 | */ 7 | 8 | { 9 | "sProcessing": "Procesando...", 10 | "sLengthMenu": "Mostrar _MENU_ rexistros", 11 | "sZeroRecords": "Non se atoparon resultados", 12 | "sEmptyTable": "Ningún dato dispoñible nesta táboa", 13 | "sInfo": "Mostrando rexistros do _START_ ó _END_ dun total de _TOTAL_ rexistros", 14 | "sInfoEmpty": "Mostrando rexistros do 0 ó 0 dun total de 0 rexistros", 15 | "sInfoFiltered": "(filtrado dun total de _MAX_ rexistros)", 16 | "sInfoPostFix": "", 17 | "sSearch": "Buscar:", 18 | "sUrl": "", 19 | "sInfoThousands": ",", 20 | "sLoadingRecords": "Cargando...", 21 | "oPaginate": { 22 | "sFirst": "Primeiro", 23 | "sLast": "Último", 24 | "sNext": "Seguinte", 25 | "sPrevious": "Anterior" 26 | }, 27 | "oAria": { 28 | "sSortAscending": ": Activar para ordear a columna de maneira ascendente", 29 | "sSortDescending": ": Activar para ordear a columna de maneira descendente" 30 | } 31 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Georgian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Georgian translation 3 | * @name Georgian 4 | * @anchor Georgian 5 | * @author Mikheil Nadareishvili 6 | */ 7 | 8 | { 9 | "sProcessing": "მიმდინარეობს დამუშავება...", 10 | "sLengthMenu": "აჩვენე _MENU_ ჩანაწერი", 11 | "sZeroRecords": "არაფერი მოიძებნა", 12 | "sInfo": "ნაჩვენებია ჩანაწერები _START_–დან _END_–მდე, სულ _TOTAL_ ჩანაწერია", 13 | "sInfoEmpty": "ნაჩვენებია ჩანაწერები 0–დან 0–მდე, სულ 0 ჩანაწერია", 14 | "sInfoFiltered": "(გაფილტრული შედეგი _MAX_ ჩანაწერიდან)", 15 | "sInfoPostFix": "", 16 | "sSearch": "ძიება:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "პირველი", 20 | "sPrevious": "წინა", 21 | "sNext": "შემდეგი", 22 | "sLast": "ბოლო" 23 | } 24 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/German.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * German translation 3 | * @name German 4 | * @anchor German 5 | * @author Joerg Holz 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Keine Daten in der Tabelle vorhanden", 10 | "sInfo": "_START_ bis _END_ von _TOTAL_ Einträgen", 11 | "sInfoEmpty": "0 bis 0 von 0 Einträgen", 12 | "sInfoFiltered": "(gefiltert von _MAX_ Einträgen)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ".", 15 | "sLengthMenu": "_MENU_ Einträge anzeigen", 16 | "sLoadingRecords": "Wird geladen...", 17 | "sProcessing": "Bitte warten...", 18 | "sSearch": "Suchen", 19 | "sZeroRecords": "Keine Einträge vorhanden.", 20 | "oPaginate": { 21 | "sFirst": "Erste", 22 | "sPrevious": "Zurück", 23 | "sNext": "Nächste", 24 | "sLast": "Letzte" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktivieren, um Spalte aufsteigend zu sortieren", 28 | "sSortDescending": ": aktivieren, um Spalte absteigend zu sortieren" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Greek.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Greek translation 3 | * @name Greek 4 | * @anchor Greek 5 | * @author Abraam Ziogas 6 | */ 7 | 8 | { 9 | "sProcessing": "Επεξεργασία...", 10 | "sLengthMenu": "Δείξε _MENU_ εγγραφές", 11 | "sZeroRecords": "Δεν βρέθηκαν εγγραφές που να ταιριάζουν", 12 | "sInfo": "Δείχνοντας _START_ εως _END_ από _TOTAL_ εγγραφές", 13 | "sInfoEmpty": "Δείχνοντας 0 εως 0 από 0 εγγραφές", 14 | "sInfoFiltered": "(φιλτραρισμένες από _MAX_ συνολικά εγγραφές)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Αναζήτηση:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Πρώτη", 20 | "sPrevious": "Προηγούμενη", 21 | "sNext": "Επόμενη", 22 | "sLast": "Τελευταία" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Gujarati.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Gujarati translation 3 | * @name Gujarati 4 | * @anchor Gujarati 5 | * @author Apoto 6 | */ 7 | 8 | { 9 | "sEmptyTable": "કોષ્ટકમાં કોઈ ડેટા ઉપલબ્ધ નથી", 10 | "sInfo": "કુલ_પ્રવેશો_અંત_પ્રારંભ_દર્શાવે_છે", 11 | "sInfoEmpty": "0 પ્રવેશો 0 0 બતાવી રહ્યું છે", 12 | "sInfoFiltered": "(_MAX_ કુલ પ્રવેશો માંથી ફિલ્ટર)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "બતાવો _MENU_ પ્રવેશો", 16 | "sLoadingRecords": "લોડ કરી રહ્યું છે ...", 17 | "sProcessing": "પ્રક્રિયા ...", 18 | "sSearch": "શોધો:", 19 | "sZeroRecords": "કોઈ મેળ ખાતા રેકોર્ડ મળી", 20 | "oPaginate": { 21 | "sFirst": "પ્રથમ", 22 | "sLast": "અંતિમ", 23 | "sNext": "આગામી", 24 | "sPrevious": "ગત" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": સ્તંભ ચડતા ક્રમમાં ગોઠવવા માટે સક્રિય", 28 | "sSortDescending": ": કૉલમ ઉતરતા ક્રમમાં ગોઠવવા માટે સક્રિય" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Hebrew.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Hebrew translation 3 | * @name Hebrew 4 | * @anchor Hebrew 5 | * @author Neil Osman (WW3) 6 | */ 7 | 8 | { 9 | "sProcessing": "מעבד...", 10 | "sLengthMenu": "הצג _MENU_ פריטים", 11 | "sZeroRecords": "לא נמצאו רשומות מתאימות", 12 | "sInfo": "_START_ עד _END_ מתוך _TOTAL_ רשומות" , 13 | "sInfoEmpty": "0 עד 0 מתוך 0 רשומות", 14 | "sInfoFiltered": "(מסונן מסך _MAX_ רשומות)", 15 | "sInfoPostFix": "", 16 | "sSearch": "חפש:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "ראשון", 20 | "sPrevious": "קודם", 21 | "sNext": "הבא", 22 | "sLast": "אחרון" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Hindi.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Hindi translation 3 | * @name Hindi 4 | * @anchor Hindi 5 | * @author Outshine Solutions 6 | */ 7 | 8 | { 9 | "sProcessing": "प्रगति पे हैं ...", 10 | "sLengthMenu": " _MENU_ प्रविष्टियां दिखाएं ", 11 | "sZeroRecords": "रिकॉर्ड्स का मेल नहीं मिला", 12 | "sInfo": "_START_ to _END_ of _TOTAL_ प्रविष्टियां दिखा रहे हैं", 13 | "sInfoEmpty": "0 में से 0 से 0 प्रविष्टियां दिखा रहे हैं", 14 | "sInfoFiltered": "(_MAX_ कुल प्रविष्टियों में से छठा हुआ)", 15 | "sInfoPostFix": "", 16 | "sSearch": "खोजें:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "प्रथम", 20 | "sPrevious": "पिछला", 21 | "sNext": "अगला", 22 | "sLast": "अंतिम" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Hungarian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Hungarian translation 3 | * @name Hungarian 4 | * @anchor Hungarian 5 | * @author Adam Maschek and Lajos Cseppentő 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Nincs rendelkezésre álló adat", 10 | "sInfo": "Találatok: _START_ - _END_ Összesen: _TOTAL_", 11 | "sInfoEmpty": "Nulla találat", 12 | "sInfoFiltered": "(_MAX_ összes rekord közül szűrve)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": " ", 15 | "sLengthMenu": "_MENU_ találat oldalanként", 16 | "sLoadingRecords": "Betöltés...", 17 | "sProcessing": "Feldolgozás...", 18 | "sSearch": "Keresés:", 19 | "sZeroRecords": "Nincs a keresésnek megfelelő találat", 20 | "oPaginate": { 21 | "sFirst": "Első", 22 | "sPrevious": "Előző", 23 | "sNext": "Következő", 24 | "sLast": "Utolsó" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktiválja a növekvő rendezéshez", 28 | "sSortDescending": ": aktiválja a csökkenő rendezéshez" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Icelandic.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Icelandic translation 3 | * @name Icelandic 4 | * @anchor Icelandic 5 | * @author Finnur Kolbeinsson 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Engin gögn eru í þessari töflu", 10 | "sInfo": "Sýni _START_ til _END_ af _TOTAL_ færslum", 11 | "sInfoEmpty": "Sýni 0 til 0 af 0 færslum", 12 | "sInfoFiltered": "(síað út frá _MAX_ færslum)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ".", 15 | "sLengthMenu": "Sýna _MENU_ færslur", 16 | "sLoadingRecords": "Hleð...", 17 | "sProcessing": "Úrvinnsla...", 18 | "sSearch": "Leita:", 19 | "sZeroRecords": "Engar færslur fundust", 20 | "oPaginate": { 21 | "sFirst": "Fyrsta", 22 | "sLast": "Síðasta", 23 | "sNext": "Næsta", 24 | "sPrevious": "Fyrri" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": virkja til að raða dálki í hækkandi röð", 28 | "sSortDescending": ": virkja til að raða dálki lækkandi í röð" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Indonesian-Alternative.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Indonesian translation 3 | * @name Indonesian 4 | * @anchor Indonesian 5 | * @author Landung Wahana 6 | */ 7 | 8 | { 9 | "sProcessing": "Sedang proses...", 10 | "sLengthMenu": "Tampilan _MENU_ entri", 11 | "sZeroRecords": "Tidak ditemukan data yang sesuai", 12 | "sInfo": "Tampilan _START_ sampai _END_ dari _TOTAL_ entri", 13 | "sInfoEmpty": "Tampilan 0 hingga 0 dari 0 entri", 14 | "sInfoFiltered": "(disaring dari _MAX_ entri keseluruhan)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Cari:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Awal", 20 | "sPrevious": "Balik", 21 | "sNext": "Lanjut", 22 | "sLast": "Akhir" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Indonesian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Indonesian translation 3 | * @name Indonesian 4 | * @anchor Indonesian 5 | * @author Cipto Hadi 6 | */ 7 | 8 | { 9 | "sProcessing": "Sedang memproses...", 10 | "sLengthMenu": "Tampilkan _MENU_ entri", 11 | "sZeroRecords": "Tidak ditemukan data yang sesuai", 12 | "sInfo": "Menampilkan _START_ sampai _END_ dari _TOTAL_ entri", 13 | "sInfoEmpty": "Menampilkan 0 sampai 0 dari 0 entri", 14 | "sInfoFiltered": "(disaring dari _MAX_ entri keseluruhan)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Cari:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Pertama", 20 | "sPrevious": "Sebelumnya", 21 | "sNext": "Selanjutnya", 22 | "sLast": "Terakhir" 23 | } 24 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Irish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Irish translation 3 | * @name Irish 4 | * @anchor Irish 5 | * @author Lets Be Famous Journal 6 | */ 7 | 8 | { 9 | "sProcessing": "Próiseáil...", 10 | "sLengthMenu": "Taispeáin iontrálacha _MENU_", 11 | "sZeroRecords": "Gan aon taifead meaitseáil aimsithe", 12 | "sInfo": "_START_ Showing a _END_ na n-iontrálacha _TOTAL_", 13 | "sInfoEmpty": "Showing 0-0 na n-iontrálacha 0", 14 | "sInfoFiltered": "(scagtha ó _MAX_ iontrálacha iomlán)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Cuardaigh:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "An Chéad", 20 | "sPrevious": "Roimhe Seo", 21 | "sNext": "Ar Aghaidh", 22 | "sLast": "Last" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Italian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Italian translation 3 | * @name Italian 4 | * @anchor Italian 5 | * @author Nicola Zecchin & Giulio Quaresima 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Nessun dato presente nella tabella", 10 | "sInfo": "Vista da _START_ a _END_ di _TOTAL_ elementi", 11 | "sInfoEmpty": "Vista da 0 a 0 di 0 elementi", 12 | "sInfoFiltered": "(filtrati da _MAX_ elementi totali)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Visualizza _MENU_ elementi", 16 | "sLoadingRecords": "Caricamento...", 17 | "sProcessing": "Elaborazione...", 18 | "sSearch": "Cerca:", 19 | "sZeroRecords": "La ricerca non ha portato alcun risultato.", 20 | "oPaginate": { 21 | "sFirst": "Inizio", 22 | "sPrevious": "Precedente", 23 | "sNext": "Successivo", 24 | "sLast": "Fine" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": attiva per ordinare la colonna in ordine crescente", 28 | "sSortDescending": ": attiva per ordinare la colonna in ordine decrescente" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Japanese.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Japanese translation 3 | * @name Japanese 4 | * @anchor Japanese 5 | * @author yusuke 6 | */ 7 | 8 | { 9 | "sProcessing": "処理中...", 10 | "sLengthMenu": "_MENU_ 件表示", 11 | "sZeroRecords": "データはありません。", 12 | "sInfo": " _TOTAL_ 件中 _START_ から _END_ まで表示", 13 | "sInfoEmpty": " 0 件中 0 から 0 まで表示", 14 | "sInfoFiltered": "(全 _MAX_ 件より抽出)", 15 | "sInfoPostFix": "", 16 | "sSearch": "検索:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "先頭", 20 | "sPrevious": "前", 21 | "sNext": "次", 22 | "sLast": "最終" 23 | } 24 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Korean.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Korean translation 3 | * @name Korean 4 | * @anchor Korean 5 | * @author WonGoo Lee 6 | */ 7 | 8 | { 9 | "sEmptyTable": "데이터가 없습니다", 10 | "sInfo": "_START_ - _END_ / _TOTAL_", 11 | "sInfoEmpty": "0 - 0 / 0", 12 | "sInfoFiltered": "(총 _MAX_ 개)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "페이지당 줄수 _MENU_", 16 | "sLoadingRecords": "읽는중...", 17 | "sProcessing": "처리중...", 18 | "sSearch": "검색:", 19 | "sZeroRecords": "검색 결과가 없습니다", 20 | "oPaginate": { 21 | "sFirst": "처음", 22 | "sLast": "마지막", 23 | "sNext": "다음", 24 | "sPrevious": "이전" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": 오름차순 정렬", 28 | "sSortDescending": ": 내림차순 정렬" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Latvian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Latvian translation 3 | * @name Latvian 4 | * @anchor Latvian 5 | * @author Oskars Podans 6 | */ 7 | 8 | { 9 | "sProcessing": "Uzgaidiet...", 10 | "sLengthMenu": "Rādīt _MENU_ ierakstus", 11 | "sZeroRecords": "Nav atrasti vaicājumam atbilstoši ieraksti", 12 | "sInfo": "Parādīti _START_. līdz _END_. no _TOTAL_ ierakstiem", 13 | "sInfoEmpty": "Nav ierakstu", 14 | "sInfoFiltered": "(atlasīts no pavisam _MAX_ ierakstiem)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Meklēt:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Pirmā", 20 | "sPrevious": "Iepriekšējā", 21 | "sNext": "Nākošā", 22 | "sLast": "Pēdējā" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Lithuanian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Lithuanian translation 3 | * @name Lithuanian 4 | * @anchor Lithuanian 5 | * @author Kęstutis Morkūnas 6 | */ 7 | 8 | { 9 | "sProcessing": "Apdorojama...", 10 | "sLengthMenu": "Rodyti _MENU_ įrašus", 11 | "sZeroRecords": "Įrašų nerasta", 12 | "sInfo": "Rodomi įrašai nuo _START_ iki _END_ iš _TOTAL_ įrašų", 13 | "sInfoEmpty": "Rodomi įrašai nuo 0 iki 0 iš 0", 14 | "sInfoFiltered": "(atrinkta iš _MAX_ įrašų)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Ieškoti:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Pirmas", 20 | "sPrevious": "Ankstesnis", 21 | "sNext": "Tolimesnis", 22 | "sLast": "Paskutinis" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Macedonian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Macedonian translation 3 | * @name Macedonian 4 | * @anchor Macedonian 5 | * @author Bojan Petkovski 6 | */ 7 | 8 | { 9 | "sProcessing": "Процесирање...", 10 | "sLengthMenu": "Прикажи _MENU_ записи", 11 | "sZeroRecords": "Не се пронајдени записи", 12 | "sEmptyTable": "Нема податоци во табелата", 13 | "sLoadingRecords": "Вчитување...", 14 | "sInfo": "Прикажани _START_ до _END_ од _TOTAL_ записи", 15 | "sInfoEmpty": "Прикажани 0 до 0 од 0 записи", 16 | "sInfoFiltered": "(филтрирано од вкупно _MAX_ записи)", 17 | "sInfoPostFix": "", 18 | "sSearch": "Барај", 19 | "sUrl": "", 20 | "oPaginate": { 21 | "sFirst": "Почетна", 22 | "sPrevious": "Претходна", 23 | "sNext": "Следна", 24 | "sLast": "Последна" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Malay.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Malay translation 3 | * @name Malay 4 | * @anchor Malay 5 | * @author Mohamad Zharif 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Tiada data", 10 | "sInfo": "Paparan dari _START_ hingga _END_ dari _TOTAL_ rekod", 11 | "sInfoEmpty": "Paparan 0 hingga 0 dari 0 rekod", 12 | "sInfoFiltered": "(Ditapis dari jumlah _MAX_ rekod)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Papar _MENU_ rekod", 16 | "sLoadingRecords": "Diproses...", 17 | "sProcessing": "Sedang diproses...", 18 | "sSearch": "Carian:", 19 | "sZeroRecords": "Tiada padanan rekod yang dijumpai.", 20 | "oPaginate": { 21 | "sFirst": "Pertama", 22 | "sPrevious": "Sebelum", 23 | "sNext": "Kemudian", 24 | "sLast": "Akhir" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": diaktifkan kepada susunan lajur menaik", 28 | "sSortDescending": ": diaktifkan kepada susunan lajur menurun" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Norwegian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Norwegian translation 3 | * @name Norwegian 4 | * @anchor Norwegian 5 | * @author Petter Ekrann 6 | */ 7 | 8 | { 9 | "sProcessing": "Laster...", 10 | "sLengthMenu": "Vis _MENU_ linjer", 11 | "sZeroRecords": "Ingen linjer matcher søket", 12 | "sInfo": "Viser _START_ til _END_ av _TOTAL_ linjer", 13 | "sInfoEmpty": "Viser 0 til 0 av 0 linjer", 14 | "sInfoFiltered": "(filtrert fra _MAX_ totalt antall linjer)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Søk:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Første", 20 | "sPrevious": "Forrige", 21 | "sNext": "Neste", 22 | "sLast": "Siste" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Persian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Persian translation 3 | * @name Persian 4 | * @anchor Persian 5 | * @author Ehsan Chavoshi 6 | */ 7 | 8 | { 9 | "sProcessing": "درحال پردازش...", 10 | "sLengthMenu": "نمایش محتویات _MENU_", 11 | "sZeroRecords": "موردی یافت نشد", 12 | "sInfo": "نمایش _START_ تا _END_ از مجموع _TOTAL_ مورد", 13 | "sInfoEmpty": "تهی", 14 | "sInfoFiltered": "(فیلتر شده از مجموع _MAX_ مورد)", 15 | "sInfoPostFix": "", 16 | "sSearch": "جستجو:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "ابتدا", 20 | "sPrevious": "قبلی", 21 | "sNext": "بعدی", 22 | "sLast": "انتها" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Polish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Polish translation 3 | * @name Polish 4 | * @anchor Polish 5 | * @author Tomasz Kowalski 6 | */ 7 | 8 | { 9 | "sProcessing": "Przetwarzanie...", 10 | "sLengthMenu": "Pokaż _MENU_ pozycji", 11 | "sZeroRecords": "Nie znaleziono pasujących pozycji", 12 | "sInfoThousands": " ", 13 | "sInfo": "Pozycje od _START_ do _END_ z _TOTAL_ łącznie", 14 | "sInfoEmpty": "Pozycji 0 z 0 dostępnych", 15 | "sInfoFiltered": "(filtrowanie spośród _MAX_ dostępnych pozycji)", 16 | "sInfoPostFix": "", 17 | "sSearch": "Szukaj:", 18 | "sUrl": "", 19 | "oPaginate": { 20 | "sFirst": "Pierwsza", 21 | "sPrevious": "Poprzednia", 22 | "sNext": "Następna", 23 | "sLast": "Ostatnia" 24 | }, 25 | "sEmptyTable": "Brak danych", 26 | "sLoadingRecords": "Wczytywanie...", 27 | "oAria": { 28 | "sSortAscending": ": aktywuj, by posortować kolumnę rosnąco", 29 | "sSortDescending": ": aktywuj, by posortować kolumnę malejąco" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Portuguese-Brasil.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Portuguese Brasil translation 3 | * @name Portuguese Brasil 4 | * @anchor Portuguese Brasil 5 | * @author Julio Cesar Viana Palma 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Nenhum registro encontrado", 10 | "sInfo": "Mostrando de _START_ até _END_ de _TOTAL_ registros", 11 | "sInfoEmpty": "Mostrando 0 até 0 de 0 registros", 12 | "sInfoFiltered": "(Filtrados de _MAX_ registros)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ".", 15 | "sLengthMenu": "_MENU_ resultados por página", 16 | "sLoadingRecords": "Carregando...", 17 | "sProcessing": "Processando...", 18 | "sZeroRecords": "Nenhum registro encontrado", 19 | "sSearch": "Pesquisar", 20 | "oPaginate": { 21 | "sNext": "Próximo", 22 | "sPrevious": "Anterior", 23 | "sFirst": "Primeiro", 24 | "sLast": "Último" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": Ordenar colunas de forma ascendente", 28 | "sSortDescending": ": Ordenar colunas de forma descendente" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Portuguese.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Portuguese translation 3 | * @name Portuguese 4 | * @anchor Portuguese 5 | * @author Nuno Felicio 6 | */ 7 | 8 | { 9 | "sProcessing": "A processar...", 10 | "sLengthMenu": "Mostrar _MENU_ registos", 11 | "sZeroRecords": "Não foram encontrados resultados", 12 | "sInfo": "Mostrando de _START_ até _END_ de _TOTAL_ registos", 13 | "sInfoEmpty": "Mostrando de 0 até 0 de 0 registos", 14 | "sInfoFiltered": "(filtrado de _MAX_ registos no total)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Procurar:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Primeiro", 20 | "sPrevious": "Anterior", 21 | "sNext": "Seguinte", 22 | "sLast": "Último" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Romanian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Romanian translation 3 | * @name Romanian 4 | * @anchor Romanian 5 | * @author Alexandru Jurubita 6 | */ 7 | 8 | { 9 | "sProcessing": "Proceseaza...", 10 | "sLengthMenu": "Afiseaza _MENU_ inregistrari pe pagina", 11 | "sZeroRecords": "Nu am gasit nimic - ne pare rau", 12 | "sInfo": "Afisate de la _START_ la _END_ din _TOTAL_ inregistrari", 13 | "sInfoEmpty": "Afisate de la 0 la 0 din 0 inregistrari", 14 | "sInfoFiltered": "(filtrate dintr-un total de _MAX_ inregistrari)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Cauta:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Prima", 20 | "sPrevious": "Precedenta", 21 | "sNext": "Urmatoarea", 22 | "sLast": "Ultima" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Russian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Russian translation 3 | * @name Russian 4 | * @anchor Russian 5 | * @author Tjoma 6 | * @autor aspyatkin 7 | */ 8 | 9 | { 10 | "processing": "Подождите...", 11 | "search": "Поиск:", 12 | "lengthMenu": "Показать _MENU_ записей", 13 | "info": "Записи с _START_ до _END_ из _TOTAL_ записей", 14 | "infoEmpty": "Записи с 0 до 0 из 0 записей", 15 | "infoFiltered": "(отфильтровано из _MAX_ записей)", 16 | "infoPostFix": "", 17 | "loadingRecords": "Загрузка записей...", 18 | "zeroRecords": "Записи отсутствуют.", 19 | "emptyTable:": "В таблице отсутствуют данные", 20 | "paginate": { 21 | "first": "Первая", 22 | "previous": "Предыдущая", 23 | "next": "Следующая", 24 | "last": "Последняя" 25 | }, 26 | "aria": { 27 | "sortAscending": ": активировать для сортировки столбца по возрастанию", 28 | "sortDescending": ": активировать для сортировки столбца по убыванию" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Serbian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Serbian translation (Latin alphabet) 3 | * @name Serbian (Latin) 4 | * @anchor Serbian (Latin) 5 | * @author Marko Novakovic 6 | */ 7 | 8 | { 9 | "sProcessing": "Procesiranje u toku...", 10 | "sLengthMenu": "Prikaži _MENU_ elemenata", 11 | "sZeroRecords": "Nije pronađen nijedan rezultat", 12 | "sInfo": "Prikaz _START_ do _END_ od ukupno _TOTAL_ elemenata", 13 | "sInfoEmpty": "Prikaz 0 do 0 od ukupno 0 elemenata", 14 | "sInfoFiltered": "(filtrirano od ukupno _MAX_ elemenata)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Pretraga:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Početna", 20 | "sPrevious": "Prethodna", 21 | "sNext": "Sledeća", 22 | "sLast": "Poslednja" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Slovak.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Slovak translation 3 | * @name Slovak 4 | * @anchor Slovak 5 | * @author Ivan Dlugoš 6 | * @author (original translation) Maroš Miškerik 7 | */ 8 | { 9 | "sEmptyTable": "Nie sú k dispozícii žiadne dáta", 10 | "sInfo": "Záznamy _START_ až _END_ z celkom _TOTAL_", 11 | "sInfoEmpty": "Záznamy 0 až 0 z celkom 0 ", 12 | "sInfoFiltered": "(vyfiltrované spomedzi _MAX_ záznamov)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Zobraz _MENU_ záznamov", 16 | "sLoadingRecords": "Načítavam...", 17 | "sProcessing": "Spracúvam...", 18 | "sSearch": "Hľadať:", 19 | "sZeroRecords": "Nenašli sa žiadne vyhovujúce záznamy", 20 | "oPaginate": { 21 | "sFirst": "Prvá", 22 | "sLast": "Posledná", 23 | "sNext": "Nasledujúca", 24 | "sPrevious": "Predchádzajúca" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktivujte na zoradenie stĺpca vzostupne", 28 | "sSortDescending": ": aktivujte na zoradenie stĺpca zostupne" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Slovenian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Slovenian translation 3 | * @name Slovenian 4 | * @anchor Slovenian 5 | * @author Marko Kroflic, Blaž Brenčič and Andrej Florjančič 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Nobenih podatkov ni na voljo", 10 | "sInfo": "Prikazujem _START_ do _END_ od _TOTAL_ zapisov", 11 | "sInfoEmpty": "Prikazujem 0 do 0 od 0 zapisov", 12 | "sInfoFiltered": "(filtrirano od _MAX_ vseh zapisov)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Prikaži _MENU_ zapisov", 16 | "sLoadingRecords": "Nalagam...", 17 | "sProcessing": "Obdelujem...", 18 | "sSearch": "Išči:", 19 | "sZeroRecords": "Nobeden zapis ne ustreza", 20 | "oPaginate": { 21 | "sFirst": "Prvi", 22 | "sLast": "Zadnji", 23 | "sNext": "Nasl.", 24 | "sPrevious": "Pred." 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": vključite za naraščujoči sort", 28 | "sSortDescending": ": vključite za padajoči sort" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Spanish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Spanish translation 3 | * @name Spanish 4 | * @anchor Spanish 5 | * @author Giovanni Ariza, Aristobulo Gomez and Roberto Poo 6 | */ 7 | 8 | { 9 | "sProcessing": "Procesando...", 10 | "sLengthMenu": "Mostrar _MENU_ registros", 11 | "sZeroRecords": "No se encontraron resultados", 12 | "sEmptyTable": "Ningún dato disponible en esta tabla", 13 | "sInfo": "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros", 14 | "sInfoEmpty": "Mostrando registros del 0 al 0 de un total de 0 registros", 15 | "sInfoFiltered": "(filtrado de un total de _MAX_ registros)", 16 | "sInfoPostFix": "", 17 | "sSearch": "Buscar:", 18 | "sUrl": "", 19 | "sInfoThousands": ",", 20 | "sLoadingRecords": "Cargando...", 21 | "oPaginate": { 22 | "sFirst": "Primero", 23 | "sLast": "Último", 24 | "sNext": "Siguiente", 25 | "sPrevious": "Anterior" 26 | }, 27 | "oAria": { 28 | "sSortAscending": ": Activar para ordenar la columna de manera ascendente", 29 | "sSortDescending": ": Activar para ordenar la columna de manera descendente" 30 | } 31 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Swahili.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Swahili translation 3 | * @name Swahili 4 | * @anchor Swahili 5 | * @author Roy Owino 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Hakuna data iliyo patikana", 10 | "sInfo": "Inaonyesha _START_ mpaka _END_ ya matokeo _TOTAL_", 11 | "sInfoEmpty": "Inaonyesha 0 hadi 0 ya matokeo 0", 12 | "sInfoFiltered": "(uschujo kutoka matokeo idadi _MAX_)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "Onyesha _MENU_ matokeo", 16 | "sLoadingRecords": "Inapakia...", 17 | "sProcessing": "Processing...", 18 | "sSearch": "Tafuta:", 19 | "sZeroRecords": "Rekodi vinavyolingana haziku patikana", 20 | "oPaginate": { 21 | "sFirst": "Mwanzo", 22 | "sLast": "Mwisho", 23 | "sNext": "Ijayo", 24 | "sPrevious": "Kabla" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": seti kulainisha sanjari kwa mtindo wa upandaji", 28 | "sSortDescending": ": seti kulainisha sanjari kwa mtindo wa mteremko" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Swedish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Swedish translation 3 | * @name Swedish 4 | * @anchor Swedish 5 | * @author Kristoffer Karlström 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Tabellen innehåller ingen data", 10 | "sInfo": "Visar _START_ till _END_ av totalt _TOTAL_ rader", 11 | "sInfoEmpty": "Visar 0 till 0 av totalt 0 rader", 12 | "sInfoFiltered": "(filtrerade från totalt _MAX_ rader)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": " ", 15 | "sLengthMenu": "Visa _MENU_ rader", 16 | "sLoadingRecords": "Laddar...", 17 | "sProcessing": "Bearbetar...", 18 | "sSearch": "Sök:", 19 | "sZeroRecords": "Hittade inga matchande resultat", 20 | "oPaginate": { 21 | "sFirst": "Första", 22 | "sLast": "Sista", 23 | "sNext": "Nästa", 24 | "sPrevious": "Föregående" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": aktivera för att sortera kolumnen i stigande ordning", 28 | "sSortDescending": ": aktivera för att sortera kolumnen i fallande ordning" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Tamil.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Tamil translation 3 | * @name Tamil 4 | * @anchor Tamil 5 | * @author Sam Arul Raj 6 | */ 7 | 8 | { 9 | "sEmptyTable": "அட்டவணையில் தரவு கிடைக்கவில்லை", 10 | "sInfo": "உள்ளீடுகளை் _START_ முதல _END_ உள்ள _TOTAL_ காட்டும்", 11 | "sInfoEmpty": "0 உள்ளீடுகளை 0 0 காட்டும்", 12 | "sInfoFiltered": "(_MAX_ மொத்த உள்ளீடுகளை இருந்து வடிகட்டி)", 13 | "sInfoPostFix": "", 14 | "sInfoThousands": ",", 15 | "sLengthMenu": "_MENU_ காண்பி", 16 | "sLoadingRecords": "ஏற்றுகிறது ...", 17 | "sProcessing": "செயலாக்க ...", 18 | "sSearch": "தேடல்:", 19 | "sZeroRecords": "பொருத்தமான பதிவுகள் இல்லை", 20 | "oPaginate": { 21 | "sFirst": "முதல்", 22 | "sLast": "இறுதி", 23 | "sNext": "அடுத்து", 24 | "sPrevious": "முந்தைய" 25 | }, 26 | "oAria": { 27 | "sSortAscending": ": நிரலை ஏறுவரிசையில் வரிசைப்படுத்த செயல்படுத்த", 28 | "sSortDescending": ": நிரலை இறங்கு வரிசைப்படுத்த செயல்படுத்த" 29 | } 30 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Thai.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Thai translation 3 | * @name Thai 4 | * @anchor Thai 5 | * @author Thanva Thonglor 6 | */ 7 | 8 | { 9 | "sProcessing": "กำลังดำเนินการ...", 10 | "sLengthMenu": "แสดง_MENU_ แถว", 11 | "sZeroRecords": "ไม่พบข้อมูล", 12 | "sInfo": "แสดง _START_ ถึง _END_ จาก _TOTAL_ แถว", 13 | "sInfoEmpty": "แสดง 0 ถึง 0 จาก 0 แถว", 14 | "sInfoFiltered": "(กรองข้อมูล _MAX_ ทุกแถว)", 15 | "sInfoPostFix": "", 16 | "sSearch": "ค้นหา:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "เิริ่มต้น", 20 | "sPrevious": "ก่อนหน้า", 21 | "sNext": "ถัดไป", 22 | "sLast": "สุดท้าย" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Turkish.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Turkish translation 3 | * @name Turkish 4 | * @anchor Turkish 5 | * @author Umit Gorkem 6 | */ 7 | 8 | { 9 | "sProcessing": "İşleniyor...", 10 | "sLengthMenu": "Sayfada _MENU_ Kayıt Göster", 11 | "sZeroRecords": "Eşleşen Kayıt Bulunmadı", 12 | "sInfo": " _TOTAL_ Kayıttan _START_ - _END_ Arası Kayıtlar", 13 | "sInfoEmpty": "Kayıt Yok", 14 | "sInfoFiltered": "( _MAX_ Kayıt İçerisinden Bulunan)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Bul:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "İlk", 20 | "sPrevious": "Önceki", 21 | "sNext": "Sonraki", 22 | "sLast": "Son" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Ukranian.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Ukranian translation 3 | * @name Ukranian 4 | * @anchor Ukranian 5 | * @author antyrat 6 | */ 7 | 8 | { 9 | "sProcessing": "Зачекайте...", 10 | "sLengthMenu": "Показати _MENU_ записів", 11 | "sZeroRecords": "Записи відсутні.", 12 | "sInfo": "Записи з _START_ по _END_ із _TOTAL_ записів", 13 | "sInfoEmpty": "Записи з 0 по 0 із 0 записів", 14 | "sInfoFiltered": "(відфільтровано з _MAX_ записів)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Пошук:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Перша", 20 | "sPrevious": "Попередня", 21 | "sNext": "Наступна", 22 | "sLast": "Остання" 23 | }, 24 | "oAria": { 25 | "sSortAscending": ": активувати для сортування стовпців за зростанням", 26 | "sSortDescending": ": активувати для сортування стовпців за спаданням" 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Urdu.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Urdu translation 3 | * @name Urdu 4 | * @anchor Urdu 5 | * @author Zafar Subzwari 6 | */ 7 | 8 | { 9 | "sProcessing": "ہے جاري عملدرامد...", 10 | "sLengthMenu": "دکہائين شقيں کي (_MENU_) فہرست", 11 | "sZeroRecords": "ملے نہيں مفروضات جلتے ملتے کوئ", 12 | "sInfo": "فہرست کي تک _END_ سے _START_ سے ميں _TOTAL_ فہرست پوري ہے نظر پيش", 13 | "sInfoEmpty": "فہرست کي تک 0 سے 0 سے ميں 0 قل ہے نظر پيشّ", 14 | "sInfoFiltered": "(فہرست ہوئ چھني سے ميں _MAX_ قل)", 15 | "sInfoPostFix": "", 16 | "sSearch": "کرو تلاش:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "پہلا", 20 | "sPrevious": "پچہلا", 21 | "sNext": "اگلا", 22 | "sLast": "آخري" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Uzbek.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Uzbek translation 3 | * @name Uzbek 4 | * @anchor Uzbek 5 | * @author Farkhod Dadajanov 6 | */ 7 | 8 | { 9 | "sEmptyTable": "Ma'lumot yo'q", 10 | "sInfo": "Umumiy _TOTAL_ yozuvlarlardan _START_ dan _END_ gachasi ko'rsatilmoqda", 11 | "sInfoEmpty": "Umumiy 0 yozuvlardan 0 dan 0 gachasi ko'rsatilmoqda", 12 | "sInfoFiltered": "(_MAX_ yozuvlardan filtrlandi)", 13 | "sInfoPostFix": "", 14 | "sLengthMenu": "_MENU_ ta yozuvlarni ko'rsat", 15 | "sLoadingRecords": "Yozuvlar yuklanmoqda...", 16 | "sProcessing": "Ishlayapman...", 17 | "sSearch": "Izlash:", 18 | "sZeroRecords": "Ma'lumot yo'q.", 19 | "oPaginate": { 20 | "sFirst": "Birinchi", 21 | "sPrevious": "Avvalgi", 22 | "sNext": "Keyingi", 23 | "sLast": "Son'ggi" 24 | }, 25 | "oAria": { 26 | "sSortAscending": ": to'g'ri tartiblash", 27 | "sSortDescending": ": teskari tartiblash" 28 | } 29 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/i18n/Vietnamese.lang: -------------------------------------------------------------------------------- 1 | /** 2 | * Vietnamese translation 3 | * @name Vietnamese 4 | * @anchor Vietnamese 5 | * @author Trinh Phuoc Thai 6 | */ 7 | 8 | { 9 | "sProcessing": "Đang xử lý...", 10 | "sLengthMenu": "Xem _MENU_ mục", 11 | "sZeroRecords": "Không tìm thấy dòng nào phù hợp", 12 | "sInfo": "Đang xem _START_ đến _END_ trong tổng số _TOTAL_ mục", 13 | "sInfoEmpty": "Đang xem 0 đến 0 trong tổng số 0 mục", 14 | "sInfoFiltered": "(được lọc từ _MAX_ mục)", 15 | "sInfoPostFix": "", 16 | "sSearch": "Tìm:", 17 | "sUrl": "", 18 | "oPaginate": { 19 | "sFirst": "Đầu", 20 | "sPrevious": "Trước", 21 | "sNext": "Tiếp", 22 | "sLast": "Cuối" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/1/dataTables.bootstrap.css: -------------------------------------------------------------------------------- 1 | div.dataTables_length label { 2 | width: 460px; 3 | float: left; 4 | text-align: left; 5 | } 6 | 7 | div.dataTables_length select { 8 | width: 75px; 9 | } 10 | 11 | div.dataTables_filter label { 12 | float: right; 13 | width: 460px; 14 | } 15 | 16 | div.dataTables_info { 17 | padding-top: 8px; 18 | } 19 | 20 | div.dataTables_paginate { 21 | float: right; 22 | margin: 0; 23 | } 24 | 25 | table { 26 | margin: 1em 0; 27 | clear: both; 28 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_asc.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_asc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_asc_disabled.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_both.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_desc.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_desc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/bootstrap/images/sort_desc_disabled.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_asc.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_asc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_asc_disabled.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_both.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_desc.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_desc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/integration/foundation/images/sort_desc_disabled.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/alt-string.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sort on the 'alt' tag of images in a column. This is particularly useful if 3 | * you have a column of images (ticks and crosses for example) and you want to 4 | * control the sorting using the alt tag. 5 | * 6 | * @name Alt string 7 | * @summary Use the `alt` attribute of an image tag as the data to sort upon. 8 | * @author _Jumpy_ 9 | * 10 | * @example 11 | * $('#example').dataTable( { 12 | * columnDefs: [ 13 | * { type: 'alt-string', targets: 0 } 14 | * ] 15 | * } ); 16 | */ 17 | 18 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 19 | "alt-string-pre": function ( a ) { 20 | return a.match(/alt="(.*?)"/)[1].toLowerCase(); 21 | }, 22 | 23 | "alt-string-asc": function( a, b ) { 24 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 25 | }, 26 | 27 | "alt-string-desc": function(a,b) { 28 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 29 | } 30 | } ); 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/anti-the.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Often a list of data which has titles in it (books, albums etc) will have 3 | * the word "the" at the start of some individual titles, which you don't want 4 | * to include in your sorting order. This plug-in will strip the word "the" 5 | * from the start of a string and sort on what is left. 6 | * 7 | * @name Anti-"the" 8 | * @summary Sort with the prefixed word `dt-string The` removed, if present 9 | * @author [Allan Jardine](http://sprymedia.co.uk) 10 | * 11 | * @example 12 | * $('#example').dataTable( { 13 | * columnDefs: [ 14 | * { type: 'anti-the', targets: 0 } 15 | * ] 16 | * } ); 17 | */ 18 | 19 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 20 | "anti-the-pre": function ( a ) { 21 | return a.replace(/^the /i, ""); 22 | }, 23 | 24 | "anti-the-asc": function ( a, b ) { 25 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 26 | }, 27 | 28 | "anti-the-desc": function ( a, b ) { 29 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 30 | } 31 | } ); 32 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/chinese-string.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sorting in Javascript for Chinese Character. The Chinese Characters are 3 | * sorted on the radical and number of strokes. This plug-in performs sorting 4 | * for Chinese characters using the Javascript [localeCompare](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/localeCompare) 5 | * function. 6 | * 7 | * Please note that `localeCompare` is not implemented in the same way in all 8 | * browsers, potentially leading to different results (particularly in IE). 9 | * 10 | * @name Chinese (string) 11 | * @summary Sort Chinese characters 12 | * @author [Patrik Lindström](http://www.lcube.se/sorting-chinese-characters-in-javascript/) 13 | * 14 | * @example 15 | * $('#example').dataTable( { 16 | * columnDefs: [ 17 | * { type: 'chinese-string', targets: 0 } 18 | * ] 19 | * } ); 20 | */ 21 | 22 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 23 | "chinese-string-asc" : function (s1, s2) { 24 | return s1.localeCompare(s2); 25 | }, 26 | 27 | "chinese-string-desc" : function (s1, s2) { 28 | return s2.localeCompare(s1); 29 | } 30 | } ); 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/currency.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This plug-in will provide numeric sorting for currency columns (either 3 | * detected automatically with the currency type detection plug-in or set 4 | * manually) while taking account of the currency symbol ($ or £ by default). 5 | * 6 | * DataTables 1.10+ has currency sorting abilities built-in and will be 7 | * automatically detected. As such this plug-in is marked as deprecated, but 8 | * might be useful when working with old versions of DataTables. 9 | * 10 | * @name Currency 11 | * @summary Sort data numerically when it has a leading currency symbol. 12 | * @deprecated 13 | * @author [Allan Jardine](http://sprymedia.co.uk) 14 | * 15 | * @example 16 | * $('#example').dataTable( { 17 | * columnDefs: [ 18 | * { type: 'currency', targets: 0 } 19 | * ] 20 | * } ); 21 | */ 22 | 23 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 24 | "currency-pre": function ( a ) { 25 | a = (a==="-") ? 0 : a.replace( /[^\d\-\.]/g, "" ); 26 | return parseFloat( a ); 27 | }, 28 | 29 | "currency-asc": function ( a, b ) { 30 | return a - b; 31 | }, 32 | 33 | "currency-desc": function ( a, b ) { 34 | return b - a; 35 | } 36 | } ); 37 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/custom-data-source/dom-checkbox.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Read information from a column of checkboxes (input elements with type 3 | * checkbox) and return an array to use as a basis for sorting. 4 | * 5 | * @summary Sort based on the checked state of checkboxes in a column 6 | * @name Checkbox data source 7 | * @author [Allan Jardine](http://sprymedia.co.uk) 8 | */ 9 | 10 | $.fn.dataTable.ext.order['dom-checkbox'] = function ( settings, col ) 11 | { 12 | return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) { 13 | return $('input', td).prop('checked') ? '1' : '0'; 14 | } ); 15 | }; 16 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/custom-data-source/dom-select.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Read information from a column of select (drop down) menus and return an 3 | * array to use as a basis for sorting. 4 | * 5 | * @summary Sort based on the value of the `dt-tag select` options in a column 6 | * @name Select menu data source 7 | * @requires DataTables 1.10+ 8 | * @author [Allan Jardine](http://sprymedia.co.uk) 9 | */ 10 | 11 | $.fn.dataTable.ext.order['dom-select'] = function ( settings, col ) 12 | { 13 | return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) { 14 | return $('select', td).val(); 15 | } ); 16 | }; 17 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/custom-data-source/dom-text.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Read information from a column of input (type text) elements and return an 3 | * array to use as a basis for sorting. 4 | * 5 | * @summary Sorting based on the values of `dt-tag input` elements in a column. 6 | * @name Input element data source 7 | * @requires DataTables 1.10+ 8 | * @author [Allan Jardine](http://sprymedia.co.uk) 9 | */ 10 | 11 | $.fn.dataTable.ext.order['dom-text'] = function ( settings, col ) 12 | { 13 | return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i ) { 14 | return $('input', td).val(); 15 | } ); 16 | }; 17 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/enum.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sort by priority through an enumerated list. In this case the words _High_, 3 | * _Medium_ and _Low_ are used and thus sorted in priority order. This works 4 | * by converting the works to a numerical value and then sorting based on that 5 | * value. 6 | * 7 | * @name enum 8 | * @summary Sort an enumerated list of options 9 | * @author [Allan Jardine](http://sprymedia.co.uk) 10 | * 11 | * @example 12 | * $('#example').dataTable( { 13 | * columnDefs: [ 14 | * { type: 'enum', targets: 0 } 15 | * ] 16 | * } ); 17 | */ 18 | 19 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 20 | "enum-pre": function ( a ) { 21 | // Add / alter the switch statement below to match your enum list 22 | switch( a ) { 23 | case "High": return 1; 24 | case "Medium": return 2; 25 | case "Low": return 3; 26 | default: return 4; 27 | } 28 | }, 29 | 30 | "enum-asc": function ( a, b ) { 31 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 32 | }, 33 | 34 | "enum-desc": function ( a, b ) { 35 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 36 | } 37 | } ); 38 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/file-size.js: -------------------------------------------------------------------------------- 1 | /** 2 | * When dealing with computer file sizes, it is common to append a post fix 3 | * such as KB, MB or GB to a string in order to easily denote the order of 4 | * magnitude of the file size. This plug-in allows sorting to take these 5 | * indicates of size into account. A counterpart type detection plug-in 6 | * is also available. 7 | * 8 | * @name File size 9 | * @summary Sort abbreviated file sizes correctly (8MB, 4KB etc) 10 | * @author _anjibman_ 11 | * 12 | * @example 13 | * $('#example').dataTable( { 14 | * columnDefs: [ 15 | * { type: 'file-size', targets: 0 } 16 | * ] 17 | * } ); 18 | */ 19 | 20 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 21 | "file-size-pre": function ( a ) { 22 | var x = a.substring(0,a.length - 2); 23 | 24 | var x_unit = (a.substring(a.length - 2, a.length) == "MB" ? 25 | 1000 : (a.substring(a.length - 2, a.length) == "GB" ? 1000000 : 1)); 26 | 27 | return parseInt( x * x_unit, 10 ); 28 | }, 29 | 30 | "file-size-asc": function ( a, b ) { 31 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 32 | }, 33 | 34 | "file-size-desc": function ( a, b ) { 35 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 36 | } 37 | } ); 38 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/ip-address.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sorts a column containing IP addresses in typical dot notation. This can 3 | * be most useful when using DataTables for a networking application, and 4 | * reporting information containing IP address. Also has a matching type 5 | * detection plug-in for automatic type detection. 6 | * 7 | * @name IP addresses 8 | * @summary Sort IP addresses numerically 9 | * @author Brad Wasson 10 | * 11 | * @example 12 | * $('#example').dataTable( { 13 | * columnDefs: [ 14 | * { type: 'ip-address', targets: 0 } 15 | * ] 16 | * } ); 17 | */ 18 | 19 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 20 | "ip-address-pre": function ( a ) { 21 | var m = a.split("."), x = ""; 22 | 23 | for(var i = 0; i < m.length; i++) { 24 | var item = m[i]; 25 | if(item.length == 1) { 26 | x += "00" + item; 27 | } else if(item.length == 2) { 28 | x += "0" + item; 29 | } else { 30 | x += item; 31 | } 32 | } 33 | 34 | return x; 35 | }, 36 | 37 | "ip-address-asc": function ( a, b ) { 38 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 39 | }, 40 | 41 | "ip-address-desc": function ( a, b ) { 42 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 43 | } 44 | } ); 45 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/monthYear.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This sorting plug-in will sort, in calendar order, data which 3 | * is in the format "MM YY". 4 | * 5 | * Please note that this plug-in is **deprecated*. The 6 | * [datetime](//datatables.net/blog/2014-12-18) plug-in provides enhanced 7 | * functionality and flexibility. 8 | * 9 | * @name Date (MM YY) 10 | * @anchor Sort dates in the format `MM YY` 11 | * @author Michael Motek 12 | * @deprecated 13 | * 14 | * @example 15 | * $('#example').dataTable( { 16 | * columnDefs: [ 17 | * { type: 'monthYear', targets: 0 } 18 | * ] 19 | * } ); 20 | */ 21 | 22 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 23 | "monthYear-pre": function ( s ) { 24 | var a = s.split(' '); 25 | // Date uses the American "MM DD YY" format 26 | return new Date(a[0]+' 01 '+a[1]); 27 | }, 28 | 29 | "monthYear-asc": function ( a, b ) { 30 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 31 | }, 32 | 33 | "monthYear-desc": function ( a, b ) { 34 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 35 | } 36 | } ); 37 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/percent.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sort numeric data which has a percent sign with it. 3 | * 4 | * DataTables 1.10+ has percentage data type detection and sorting abilities 5 | * built-in. As such this plug-in is marked as deprecated, but might be useful 6 | * when working with old versions of DataTables. 7 | * 8 | * @name Percentage 9 | * @summary Sort numeric data with a postfixed percentage symbol 10 | * @deprecated 11 | * @author [Jonathan Romley](http://jonathanromley.org/) 12 | * 13 | * @example 14 | * $('#example').dataTable( { 15 | * columnDefs: [ 16 | * { type: 'percent', targets: 0 } 17 | * ] 18 | * } ); 19 | */ 20 | 21 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 22 | "percent-pre": function ( a ) { 23 | var x = (a == "-") ? 0 : a.replace( /%/, "" ); 24 | return parseFloat( x ); 25 | }, 26 | 27 | "percent-asc": function ( a, b ) { 28 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 29 | }, 30 | 31 | "percent-desc": function ( a, b ) { 32 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 33 | } 34 | } ); 35 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/scientific.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This plug-in will treat numbers which are in scientific notation (for 3 | * example `1E-10`, `1.2E6` etc) and sort them numerically. 4 | * 5 | * @name Scientific notation sorting 6 | * @summary Sort data which is written in exponential notation. 7 | * @author [Nick Schurch](http://datatables.net/forums/profile/21757/nickschurch) 8 | * 9 | * @example 10 | * $('#example').dataTable( { 11 | * columnDefs: [ 12 | * { type: 'scientific', targets: 0 } 13 | * ] 14 | * } ); 15 | */ 16 | 17 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 18 | "scientific-pre": function ( a ) { 19 | return parseFloat(a); 20 | }, 21 | 22 | "scientific-asc": function ( a, b ) { 23 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 24 | }, 25 | 26 | "scientific-desc": function ( a, b ) { 27 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 28 | } 29 | } ); 30 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/signed-num.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Although DataTables' internal numeric sorting works no problem on negative 3 | * numbers, it does not accept positively signed numbers. This plug-in will 4 | * sort just such data numerically. 5 | * 6 | * @name Fully signed numbers sorting 7 | * @summary Sort data numerically with a leading `+` symbol (as well as `-`). 8 | * @author [Allan Jardine](http://sprymedia.co.uk) 9 | * 10 | * @example 11 | * $('#example').dataTable( { 12 | * columnDefs: [ 13 | * { type: 'signed-num', targets: 0 } 14 | * ] 15 | * } ); 16 | */ 17 | 18 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 19 | "signed-num-pre": function ( a ) { 20 | return (a=="-" || a==="") ? 0 : a.replace('+','')*1; 21 | }, 22 | 23 | "signed-num-asc": function ( a, b ) { 24 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 25 | }, 26 | 27 | "signed-num-desc": function ( a, b ) { 28 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 29 | } 30 | } ); 31 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/title-string.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Just like the _hidden title numeric sorting_ plug-in, this sorting plug-in 3 | * will take the information to be sorted on from the title attribute of a span 4 | * element. The only difference is that it is string based sorting rather than 5 | * numeric. 6 | * 7 | * Note that the HTML5 `data-sort` attribute can be [used to supply sorting data 8 | * to DataTables](//datatables.net/manual/orthogonal-data) and is preferable to 9 | * using this method, which is therefore marked as deprecated. 10 | * 11 | * @name Hidden title string sorting 12 | * @summary Sort data as a string based on an attribute on an empty element. 13 | * @author [Allan Jardine](http://sprymedia.co.uk) 14 | * @deprecated 15 | * 16 | * @example 17 | * $('#example').dataTable( { 18 | * columnDefs: [ 19 | * { type: 'title-string', targets: 0 } 20 | * ] 21 | * } ); 22 | */ 23 | 24 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 25 | "title-string-pre": function ( a ) { 26 | return a.match(/title="(.*?)"/)[1].toLowerCase(); 27 | }, 28 | 29 | "title-string-asc": function ( a, b ) { 30 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 31 | }, 32 | 33 | "title-string-desc": function ( a, b ) { 34 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 35 | } 36 | } ); 37 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/sorting/turkish-string.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sorting in Javascript for Turkish Characters. This plug-in will replace the special 3 | * turkish letters (non english characters) and replace in English. 4 | * 5 | * 6 | * @name Turkish 7 | * @summary Sort Turkish characters 8 | * @author [Yuksel Beyti](http://yukselbeyti.com) 9 | * 10 | * @example 11 | * $('#example').dataTable({ 12 | * 'aoColumns' : [ 13 | * {'sType' : 'turkish'} 14 | * ] 15 | * }); 16 | */ 17 | 18 | jQuery.extend( jQuery.fn.dataTableExt.oSort, { 19 | "turkish-pre": function ( a ) { 20 | var special_letters = { "İ": "ib", "I": "ia", "Ş": "sa", "Ğ": "ga", "Ü": "ua", "Ö": "oa", "Ç": "ca", "i": "ia", "ı": "ia", "ş": "sa", "ğ": "ga", "ü": "ua", "ö": "oa", "ç": "ca" }; 21 | for (var val in special_letters) 22 | a = a.split(val).join(special_letters[val]).toLowerCase(); 23 | return a; 24 | }, 25 | 26 | "turkish-asc": function ( a, b ) { 27 | return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 28 | }, 29 | 30 | "turkish-desc": function ( a, b ) { 31 | return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 32 | } 33 | } ); 34 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/type-detection/date-uk.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Automatically detect British (`dd/mm/yyyy`) date types. Goes with the UK 3 | * date sorting plug-in. 4 | * 5 | * @name Date (`dd/mm/yyyy`) 6 | * @summary Detect data which is in the date format `dd/mm/yyyy` 7 | * @author Andy McMaster 8 | */ 9 | 10 | jQuery.fn.dataTableExt.aTypes.unshift( 11 | function ( sData ) 12 | { 13 | if (sData !== null && sData.match(/^(0[1-9]|[12][0-9]|3[01])\/(0[1-9]|1[012])\/(19|20|21)\d\d$/)) 14 | { 15 | return 'date-uk'; 16 | } 17 | return null; 18 | } 19 | ); 20 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/type-detection/file-size.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect "file size" type columns automatically. Commonly used for computer 3 | * file sizes, this can allow sorting to take the order of magnitude indicated 4 | * by the label (GB etc) into account. 5 | * 6 | * @name File size 7 | * @summary Detect abbreviated file size data (8MB, 4KB etc) 8 | * @author _anjibman_ 9 | */ 10 | 11 | jQuery.fn.dataTableExt.aTypes.unshift( 12 | function ( sData ) 13 | { 14 | var sValidChars = "0123456789"; 15 | var Char; 16 | 17 | /* Check the numeric part */ 18 | for ( var i=0 ; i<(sData.length - 3) ; i++ ) 19 | { 20 | Char = sData.charAt(i); 21 | if (sValidChars.indexOf(Char) == -1) 22 | { 23 | return null; 24 | } 25 | } 26 | 27 | /* Check for size unit KB, MB or GB */ 28 | if ( sData.substring(sData.length - 2, sData.length) == "KB" 29 | || sData.substring(sData.length - 2, sData.length) == "MB" 30 | || sData.substring(sData.length - 2, sData.length) == "GB" ) 31 | { 32 | return 'file-size'; 33 | } 34 | return null; 35 | } 36 | ); 37 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/type-detection/formatted-num.js: -------------------------------------------------------------------------------- 1 | /** 2 | * This plug-in will strip out non-numeric formatting characters such that a 3 | * formatted number (for example 1,000,000) can be detected automatically and 4 | * sorted numerically. Note that characters a-z are not automatically removed, 5 | * otherwise there is a risk of detecting columns as numeric which should not 6 | * be. 7 | * 8 | * DataTables 1.10+ has formatted number type detection and sorting abilities 9 | * built-in. As such this plug-in is marked as deprecated, but might be useful 10 | * when working with old versions of DataTables. 11 | * 12 | * @name Formatted numbers 13 | * @summary formatted_numbers 14 | * @deprecated 15 | * @author [Allan Jardine](http://sprymedia.co.uk) 16 | */ 17 | 18 | jQuery.fn.dataTableExt.aTypes.unshift( 19 | function ( sData ) 20 | { 21 | var deformatted = sData.replace(/[^\d\-\.\/a-zA-Z]/g,''); 22 | if ( $.isNumeric( deformatted ) || deformatted === "-" ) { 23 | return 'formatted-num'; 24 | } 25 | return null; 26 | } 27 | ); 28 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/type-detection/ip-address.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Automatically detect IP addresses in dot notation. Goes perfectly with the 3 | * IP address sorting function. 4 | * 5 | * @name IP address detection 6 | * @summary Detect data which is in IP address notation 7 | * @author Brad Wasson 8 | */ 9 | 10 | jQuery.fn.dataTableExt.aTypes.unshift( 11 | function ( sData ) 12 | { 13 | if (/^\d{1,3}[\.]\d{1,3}[\.]\d{1,3}[\.]\d{1,3}$/.test(sData)) { 14 | return 'ip-address'; 15 | } 16 | return null; 17 | } 18 | ); 19 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-plugins/type-detection/numeric-comma.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Automatically detect numbers which use a comma in the place of a decimal 3 | * point to allow them to be sorted numerically. 4 | * 5 | * Please note that the 'Formatted numbers' type detection and sorting plug-ins 6 | * offer greater flexibility that this plug-in and should be used in preference 7 | * to this method. 8 | * 9 | * @name Commas for decimal place 10 | * @summary Detect numeric data which uses a comma as the decimal place. 11 | * @deprecated 12 | * @author [Allan Jardine](http://sprymedia.co.uk) 13 | */ 14 | 15 | jQuery.fn.dataTableExt.aTypes.unshift( 16 | function ( sData ) 17 | { 18 | var sValidChars = "0123456789,."; 19 | var Char; 20 | var bDecimal = false; 21 | var iStart=0; 22 | 23 | /* Negative sign is valid - shift the number check start point */ 24 | if ( sData.charAt(0) === '-' ) { 25 | iStart = 1; 26 | } 27 | 28 | /* Check the numeric part */ 29 | for ( var i=iStart ; i=1.7.0", 10 | "datatables": ">=1.10.1" 11 | }, 12 | "homepage": "https://github.com/DataTables/Responsive", 13 | "_release": "1.0.7", 14 | "_resolution": { 15 | "type": "version", 16 | "tag": "1.0.7", 17 | "commit": "435b1bd36ed29de73dd704121de0571a5c1a50a6" 18 | }, 19 | "_source": "git://github.com/DataTables/Responsive.git", 20 | "_target": "~1.0.3", 21 | "_originalSource": "datatables-responsive" 22 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-responsive/.gitignore: -------------------------------------------------------------------------------- 1 | .sass-cache 2 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-responsive/css/responsive.bootstrap.scss: -------------------------------------------------------------------------------- 1 | 2 | $open-button-background: #337ab7 !default; 3 | 4 | @import 'responsive.dataTables.scss'; 5 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-responsive/css/responsive.foundation.scss: -------------------------------------------------------------------------------- 1 | 2 | $open-button-background: #008CBA !default; 3 | 4 | @import 'responsive.dataTables.scss'; 5 | 6 | table.dataTable > tbody > tr.child { 7 | ul { 8 | font-size: 1em; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables-responsive/css/responsive.jqueryui.scss: -------------------------------------------------------------------------------- 1 | 2 | @import 'responsive.dataTables.scss'; 3 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "datatables", 3 | "version": "1.10.10", 4 | "main": [ 5 | "media/js/jquery.dataTables.js", 6 | "media/css/jquery.dataTables.css", 7 | "media/images/sort_asc.png", 8 | "media/images/sort_asc_disabled.png", 9 | "media/images/sort_both.png", 10 | "media/images/sort_desc.png", 11 | "media/images/sort_desc_disabled.png" 12 | ], 13 | "dependencies": { 14 | "jquery": ">=1.7.0" 15 | }, 16 | "license": "MIT", 17 | "keywords": [ 18 | "jquery", 19 | "datatables", 20 | "table", 21 | "javascript", 22 | "library" 23 | ], 24 | "ignore": [ 25 | "/.*", 26 | "examples", 27 | "media/unit_testing", 28 | "composer.json", 29 | "dataTables.jquery.json", 30 | "package.json" 31 | ], 32 | "homepage": "https://github.com/DataTables/DataTables", 33 | "_release": "1.10.10", 34 | "_resolution": { 35 | "type": "version", 36 | "tag": "1.10.10", 37 | "commit": "74fd9c1901fb2b494f8395959a708e6eb8978bbd" 38 | }, 39 | "_source": "git://github.com/DataTables/DataTables.git", 40 | "_target": "~1.10.4", 41 | "_originalSource": "datatables" 42 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/Sorting icons.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/Sorting icons.psd -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/favicon.ico -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_asc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_asc.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_asc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_asc_disabled.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_both.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_both.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_desc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_desc.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_desc_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/datatables/media/images/sort_desc_disabled.png -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "font-awesome", 3 | "description": "Font Awesome", 4 | "version": "4.2.0", 5 | "keywords": [], 6 | "homepage": "http://fontawesome.io", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "license": [ 10 | "OFL-1.1", 11 | "MIT", 12 | "CC-BY-3.0" 13 | ], 14 | "main": [ 15 | "./css/font-awesome.css", 16 | "./fonts/*" 17 | ], 18 | "ignore": [ 19 | "*/.*", 20 | "*.json", 21 | "src", 22 | "*.yml", 23 | "Gemfile", 24 | "Gemfile.lock", 25 | "*.md" 26 | ], 27 | "_release": "4.2.0", 28 | "_resolution": { 29 | "type": "version", 30 | "tag": "v4.2.0", 31 | "commit": "0b924144a95a54fa738d0450ff66c1dabd11ae74" 32 | }, 33 | "_source": "git://github.com/FortAwesome/Font-Awesome.git", 34 | "_target": "~4.2.0", 35 | "_originalSource": "font-awesome" 36 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/.npmignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | *.egg-info 3 | *.db 4 | *.db.old 5 | *.swp 6 | *.db-journal 7 | 8 | .coverage 9 | .DS_Store 10 | .installed.cfg 11 | _gh_pages/* 12 | 13 | .idea/* 14 | .svn/* 15 | src/website/static/* 16 | src/website/media/* 17 | 18 | bin 19 | cfcache 20 | develop-eggs 21 | dist 22 | downloads 23 | eggs 24 | parts 25 | tmp 26 | .sass-cache 27 | node_modules 28 | 29 | src/website/settingslocal.py 30 | stunnel.log 31 | 32 | .ruby-version 33 | 34 | # don't need these in the npm package. 35 | src/ 36 | _config.yml 37 | bower.json 38 | component.json 39 | composer.json 40 | CONTRIBUTING.md 41 | Gemfile 42 | Gemfile.lock 43 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/peer44/java-rbac/6fd2082ee66ed8190c8a66ca24f89dd1e6f9d264/jrbac/src/main/webapp/assets/sbadmin/font-awesome/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/animated.less: -------------------------------------------------------------------------------- 1 | // Animated Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .@{fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/bordered-pulled.less: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em @fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .@{fa-css-prefix}-pull-left { float: left; } 11 | .@{fa-css-prefix}-pull-right { float: right; } 12 | 13 | .@{fa-css-prefix} { 14 | &.@{fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.@{fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .@{fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/core.less: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal @fa-font-size-base/@fa-line-height-base FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/extras.less: -------------------------------------------------------------------------------- 1 | // Extras 2 | // -------------------------- 3 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/fixed-width.less: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .@{fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/font-awesome.less: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables.less"; 7 | @import "mixins.less"; 8 | @import "path.less"; 9 | @import "core.less"; 10 | @import "larger.less"; 11 | @import "fixed-width.less"; 12 | @import "list.less"; 13 | @import "bordered-pulled.less"; 14 | @import "animated.less"; 15 | @import "rotated-flipped.less"; 16 | @import "stacked.less"; 17 | @import "icons.less"; 18 | @import "screen-reader.less"; 19 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/larger.less: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .@{fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .@{fa-css-prefix}-2x { font-size: 2em; } 11 | .@{fa-css-prefix}-3x { font-size: 3em; } 12 | .@{fa-css-prefix}-4x { font-size: 4em; } 13 | .@{fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/list.less: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: @fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .@{fa-css-prefix}-li { 11 | position: absolute; 12 | left: -@fa-li-width; 13 | width: @fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.@{fa-css-prefix}-lg { 17 | left: (-@fa-li-width + (4em / 14)); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/path.less: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}'); 7 | src: url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype'), 8 | url('@{fa-font-path}/fontawesome-webfont.woff2?v=@{fa-version}') format('woff2'), 9 | url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff'), 10 | url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype'), 11 | url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/rotated-flipped.less: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); } 5 | .@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); } 6 | .@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); } 7 | 8 | .@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); } 9 | .@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .@{fa-css-prefix}-rotate-90, 15 | :root .@{fa-css-prefix}-rotate-180, 16 | :root .@{fa-css-prefix}-rotate-270, 17 | :root .@{fa-css-prefix}-flip-horizontal, 18 | :root .@{fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/screen-reader.less: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { .sr-only(); } 5 | .sr-only-focusable { .sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/spinning.less: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .@{fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/less/stacked.less: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .@{fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .@{fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .@{fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .@{fa-css-prefix}-inverse { color: @fa-inverse; } 21 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_animated.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | .#{$fa-css-prefix}-pulse { 10 | -webkit-animation: fa-spin 1s infinite steps(8); 11 | animation: fa-spin 1s infinite steps(8); 12 | } 13 | 14 | @-webkit-keyframes fa-spin { 15 | 0% { 16 | -webkit-transform: rotate(0deg); 17 | transform: rotate(0deg); 18 | } 19 | 100% { 20 | -webkit-transform: rotate(359deg); 21 | transform: rotate(359deg); 22 | } 23 | } 24 | 25 | @keyframes fa-spin { 26 | 0% { 27 | -webkit-transform: rotate(0deg); 28 | transform: rotate(0deg); 29 | } 30 | 100% { 31 | -webkit-transform: rotate(359deg); 32 | transform: rotate(359deg); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_bordered-pulled.scss: -------------------------------------------------------------------------------- 1 | // Bordered & Pulled 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-border { 5 | padding: .2em .25em .15em; 6 | border: solid .08em $fa-border-color; 7 | border-radius: .1em; 8 | } 9 | 10 | .#{$fa-css-prefix}-pull-left { float: left; } 11 | .#{$fa-css-prefix}-pull-right { float: right; } 12 | 13 | .#{$fa-css-prefix} { 14 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; } 15 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; } 16 | } 17 | 18 | /* Deprecated as of 4.4.0 */ 19 | .pull-right { float: right; } 20 | .pull-left { float: left; } 21 | 22 | .#{$fa-css-prefix} { 23 | &.pull-left { margin-right: .3em; } 24 | &.pull-right { margin-left: .3em; } 25 | } 26 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_core.scss: -------------------------------------------------------------------------------- 1 | // Base Class Definition 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix} { 5 | display: inline-block; 6 | font: normal normal normal #{$fa-font-size-base}/#{$fa-line-height-base} FontAwesome; // shortening font declaration 7 | font-size: inherit; // can't have font-size inherit on line above, so need to override 8 | text-rendering: auto; // optimizelegibility throws things off #1094 9 | -webkit-font-smoothing: antialiased; 10 | -moz-osx-font-smoothing: grayscale; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_fixed-width.scss: -------------------------------------------------------------------------------- 1 | // Fixed Width Icons 2 | // ------------------------- 3 | .#{$fa-css-prefix}-fw { 4 | width: (18em / 14); 5 | text-align: center; 6 | } 7 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_larger.scss: -------------------------------------------------------------------------------- 1 | // Icon Sizes 2 | // ------------------------- 3 | 4 | /* makes the font 33% larger relative to the icon container */ 5 | .#{$fa-css-prefix}-lg { 6 | font-size: (4em / 3); 7 | line-height: (3em / 4); 8 | vertical-align: -15%; 9 | } 10 | .#{$fa-css-prefix}-2x { font-size: 2em; } 11 | .#{$fa-css-prefix}-3x { font-size: 3em; } 12 | .#{$fa-css-prefix}-4x { font-size: 4em; } 13 | .#{$fa-css-prefix}-5x { font-size: 5em; } 14 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_list.scss: -------------------------------------------------------------------------------- 1 | // List Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-ul { 5 | padding-left: 0; 6 | margin-left: $fa-li-width; 7 | list-style-type: none; 8 | > li { position: relative; } 9 | } 10 | .#{$fa-css-prefix}-li { 11 | position: absolute; 12 | left: -$fa-li-width; 13 | width: $fa-li-width; 14 | top: (2em / 14); 15 | text-align: center; 16 | &.#{$fa-css-prefix}-lg { 17 | left: -$fa-li-width + (4em / 14); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_path.scss: -------------------------------------------------------------------------------- 1 | /* FONT PATH 2 | * -------------------------- */ 3 | 4 | @font-face { 5 | font-family: 'FontAwesome'; 6 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?v=#{$fa-version}'); 7 | src: url('#{$fa-font-path}/fontawesome-webfont.eot?#iefix&v=#{$fa-version}') format('embedded-opentype'), 8 | url('#{$fa-font-path}/fontawesome-webfont.woff2?v=#{$fa-version}') format('woff2'), 9 | url('#{$fa-font-path}/fontawesome-webfont.woff?v=#{$fa-version}') format('woff'), 10 | url('#{$fa-font-path}/fontawesome-webfont.ttf?v=#{$fa-version}') format('truetype'), 11 | url('#{$fa-font-path}/fontawesome-webfont.svg?v=#{$fa-version}#fontawesomeregular') format('svg'); 12 | // src: url('#{$fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_rotated-flipped.scss: -------------------------------------------------------------------------------- 1 | // Rotated & Flipped Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); } 5 | .#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); } 6 | .#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); } 7 | 8 | .#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); } 9 | .#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); } 10 | 11 | // Hook for IE8-9 12 | // ------------------------- 13 | 14 | :root .#{$fa-css-prefix}-rotate-90, 15 | :root .#{$fa-css-prefix}-rotate-180, 16 | :root .#{$fa-css-prefix}-rotate-270, 17 | :root .#{$fa-css-prefix}-flip-horizontal, 18 | :root .#{$fa-css-prefix}-flip-vertical { 19 | filter: none; 20 | } 21 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_screen-reader.scss: -------------------------------------------------------------------------------- 1 | // Screen Readers 2 | // ------------------------- 3 | 4 | .sr-only { @include sr-only(); } 5 | .sr-only-focusable { @include sr-only-focusable(); } 6 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_spinning.scss: -------------------------------------------------------------------------------- 1 | // Spinning Icons 2 | // -------------------------- 3 | 4 | .#{$fa-css-prefix}-spin { 5 | -webkit-animation: fa-spin 2s infinite linear; 6 | animation: fa-spin 2s infinite linear; 7 | } 8 | 9 | @-webkit-keyframes fa-spin { 10 | 0% { 11 | -webkit-transform: rotate(0deg); 12 | transform: rotate(0deg); 13 | } 14 | 100% { 15 | -webkit-transform: rotate(359deg); 16 | transform: rotate(359deg); 17 | } 18 | } 19 | 20 | @keyframes fa-spin { 21 | 0% { 22 | -webkit-transform: rotate(0deg); 23 | transform: rotate(0deg); 24 | } 25 | 100% { 26 | -webkit-transform: rotate(359deg); 27 | transform: rotate(359deg); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/_stacked.scss: -------------------------------------------------------------------------------- 1 | // Stacked Icons 2 | // ------------------------- 3 | 4 | .#{$fa-css-prefix}-stack { 5 | position: relative; 6 | display: inline-block; 7 | width: 2em; 8 | height: 2em; 9 | line-height: 2em; 10 | vertical-align: middle; 11 | } 12 | .#{$fa-css-prefix}-stack-1x, .#{$fa-css-prefix}-stack-2x { 13 | position: absolute; 14 | left: 0; 15 | width: 100%; 16 | text-align: center; 17 | } 18 | .#{$fa-css-prefix}-stack-1x { line-height: inherit; } 19 | .#{$fa-css-prefix}-stack-2x { font-size: 2em; } 20 | .#{$fa-css-prefix}-inverse { color: $fa-inverse; } 21 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/font-awesome/scss/font-awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */ 5 | 6 | @import "variables"; 7 | @import "mixins"; 8 | @import "path"; 9 | @import "core"; 10 | @import "larger"; 11 | @import "fixed-width"; 12 | @import "list"; 13 | @import "bordered-pulled"; 14 | @import "animated"; 15 | @import "rotated-flipped"; 16 | @import "stacked"; 17 | @import "icons"; 18 | @import "screen-reader"; 19 | -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/jquery/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jquery", 3 | "version": "2.1.4", 4 | "main": "dist/jquery.js", 5 | "license": "MIT", 6 | "ignore": [ 7 | "**/.*", 8 | "build", 9 | "dist/cdn", 10 | "speed", 11 | "test", 12 | "*.md", 13 | "AUTHORS.txt", 14 | "Gruntfile.js", 15 | "package.json" 16 | ], 17 | "devDependencies": { 18 | "sizzle": "2.1.1-jquery.2.1.2", 19 | "requirejs": "2.1.10", 20 | "qunit": "1.14.0", 21 | "sinon": "1.8.1" 22 | }, 23 | "keywords": [ 24 | "jquery", 25 | "javascript", 26 | "library" 27 | ], 28 | "homepage": "https://github.com/jquery/jquery", 29 | "_release": "2.1.4", 30 | "_resolution": { 31 | "type": "version", 32 | "tag": "2.1.4", 33 | "commit": "7751e69b615c6eca6f783a81e292a55725af6b85" 34 | }, 35 | "_source": "git://github.com/jquery/jquery.git", 36 | "_target": "1.9.1 - 2", 37 | "_originalSource": "jquery" 38 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/metisMenu/.bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "metisMenu", 3 | "version": "1.1.3", 4 | "homepage": "https://github.com/onokumus/metisMenu", 5 | "authors": [ 6 | "onokumus " 7 | ], 8 | "description": "Easy menu jQuery plugin for Twitter Bootstrap 3", 9 | "main": [ 10 | "dist/metisMenu.js", 11 | "dist/metisMenu.css" 12 | ], 13 | "keywords": [ 14 | "twitter", 15 | "bootstrap", 16 | "twbs", 17 | "jquery", 18 | "menu", 19 | "accordion", 20 | "toggle", 21 | "metis", 22 | "metisMenu" 23 | ], 24 | "license": "MIT", 25 | "ignore": [ 26 | "**/.*", 27 | "node_modules", 28 | "bower_components", 29 | "test", 30 | "tests" 31 | ], 32 | "dependencies": { 33 | "bootstrap": "~3.3.0" 34 | }, 35 | "_release": "1.1.3", 36 | "_resolution": { 37 | "type": "version", 38 | "tag": "1.1.3", 39 | "commit": "8e179d59f60a593203667c092119779dc36f5171" 40 | }, 41 | "_source": "git://github.com/onokumus/metisMenu.git", 42 | "_target": "~1.1.3", 43 | "_originalSource": "metisMenu", 44 | "_direct": true 45 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/metisMenu/dist/metisMenu.css: -------------------------------------------------------------------------------- 1 | /* 2 | * metismenu - v1.1.3 3 | * Easy menu jQuery plugin for Twitter Bootstrap 3 4 | * https://github.com/onokumus/metisMenu 5 | * 6 | * Made by Osman Nuri Okumus 7 | * Under MIT License 8 | */ 9 | .arrow { 10 | float: right; 11 | line-height: 1.42857; 12 | } 13 | 14 | .glyphicon.arrow:before { 15 | content: "\e079"; 16 | } 17 | 18 | .active > a > .glyphicon.arrow:before { 19 | content: "\e114"; 20 | } 21 | 22 | 23 | /* 24 | * Require Font-Awesome 25 | * http://fortawesome.github.io/Font-Awesome/ 26 | */ 27 | 28 | 29 | .fa.arrow:before { 30 | content: "\f104"; 31 | } 32 | 33 | .active > a > .fa.arrow:before { 34 | content: "\f107"; 35 | } 36 | 37 | .plus-times { 38 | float: right; 39 | } 40 | 41 | .fa.plus-times:before { 42 | content: "\f067"; 43 | } 44 | 45 | .active > a > .fa.plus-times { 46 | filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); 47 | -webkit-transform: rotate(45deg); 48 | -moz-transform: rotate(45deg); 49 | -ms-transform: rotate(45deg); 50 | -o-transform: rotate(45deg); 51 | transform: rotate(45deg); 52 | } 53 | 54 | .plus-minus { 55 | float: right; 56 | } 57 | 58 | .fa.plus-minus:before { 59 | content: "\f067"; 60 | } 61 | 62 | .active > a > .fa.plus-minus:before { 63 | content: "\f068"; 64 | } -------------------------------------------------------------------------------- /jrbac/src/main/webapp/assets/sbadmin/metisMenu/dist/metisMenu.min.css: -------------------------------------------------------------------------------- 1 | /* 2 | * metismenu - v1.1.3 3 | * Easy menu jQuery plugin for Twitter Bootstrap 3 4 | * https://github.com/onokumus/metisMenu 5 | * 6 | * Made by Osman Nuri Okumus 7 | * Under MIT License 8 | */ 9 | 10 | .arrow{float:right;line-height:1.42857}.glyphicon.arrow:before{content:"\e079"}.active>a>.glyphicon.arrow:before{content:"\e114"}.fa.arrow:before{content:"\f104"}.active>a>.fa.arrow:before{content:"\f107"}.plus-times{float:right}.fa.plus-times:before{content:"\f067"}.active>a>.fa.plus-times{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.plus-minus{float:right}.fa.plus-minus:before{content:"\f067"}.active>a>.fa.plus-minus:before{content:"\f068"} -------------------------------------------------------------------------------- /jrbac/src/main/webapp/index.jsp: -------------------------------------------------------------------------------- 1 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 2 | <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 3 | 4 | 5 | 6 | 7 | 8 | 9 | 测试页面 10 | 11 | 12 | 登录页面 13 | <% 14 | out.print(request.getContextPath()); 15 | %> 16 | 17 | 18 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/context/BaseReturnTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.context; 2 | 3 | import org.junit.Test; 4 | 5 | import com.jrbac.test.TestAddress; 6 | import com.jrbac.test.TestUser; 7 | 8 | public class BaseReturnTest { 9 | 10 | @Test 11 | public void testResponse() { 12 | TestAddress address= new TestAddress(); 13 | address.setCity("四川"); 14 | address.setArea("成都"); 15 | TestUser testUser = new TestUser("张三", 12, address); 16 | System.out.println(BaseReturn.response(testUser)); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/dao/LoginUserDaoTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.dao; 2 | 3 | import org.junit.Test; 4 | import org.junit.runner.RunWith; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.test.context.ContextConfiguration; 7 | import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; 8 | 9 | import com.jrbac.util.PasswordUtil; 10 | @RunWith(SpringJUnit4ClassRunner.class) 11 | @ContextConfiguration({ "classpath:spring/spring-core.xml" }) 12 | public class LoginUserDaoTest { 13 | 14 | @Autowired 15 | private LoginUserDao loginUserDao; 16 | @Test 17 | public void testLogin() { 18 | String username="chenggaowei"; 19 | String password="12345678"; 20 | password = PasswordUtil.getPassword(password); 21 | System.out.println(loginUserDao.login(username, password)); 22 | 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/service/LoginUserServiceTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.service; 2 | 3 | import org.junit.Test; 4 | import org.junit.runner.RunWith; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.test.context.ContextConfiguration; 7 | import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; 8 | @RunWith(SpringJUnit4ClassRunner.class) 9 | @ContextConfiguration({ "classpath:spring/spring-core.xml" }) 10 | public class LoginUserServiceTest { 11 | 12 | @Autowired 13 | private LoginUserService loginUserService; 14 | 15 | @Test 16 | public void testCheckUsername() { 17 | System.out.println(loginUserService.checkUsername("111")); 18 | } 19 | 20 | } 21 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/service/MenuServiceTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.service; 2 | 3 | import org.junit.Test; 4 | import org.junit.runner.RunWith; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.test.context.ContextConfiguration; 7 | import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; 8 | 9 | import com.jrbac.context.BaseReturn; 10 | import com.jrbac.entity.LoginUser; 11 | @RunWith(SpringJUnit4ClassRunner.class) 12 | @ContextConfiguration({ "classpath:spring/spring-core.xml" }) 13 | public class MenuServiceTest { 14 | 15 | //@Autowired 16 | //private MenuService menuService; 17 | @Autowired 18 | private ZtreeService ztreeService; 19 | @Test 20 | public void testQueryAll() { 21 | LoginUser loginUser = new LoginUser(); 22 | loginUser.setStatus(1); 23 | System.out.println(ztreeService.getMenuZtree(loginUser)); 24 | System.out.println(BaseReturn.response(ztreeService.getMenuZtreeByRoleId(loginUser, "1c9d1a0ef4114d2598aab4e0fee49bb9"))); 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/service/ZtreeServiceTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.service; 2 | 3 | import static org.junit.Assert.*; 4 | 5 | import org.junit.Test; 6 | 7 | public class ZtreeServiceTest { 8 | 9 | @Test 10 | public void testGetRoleMenuZtree() { 11 | fail("Not yet implemented"); 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/test/BeanCopy.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.test; 2 | 3 | import org.springframework.beans.BeanUtils; 4 | 5 | import com.jrbac.entity.LoginUser; 6 | import com.jrbac.model.LoginUserVO; 7 | import com.jrbac.util.UUIDGenerator; 8 | 9 | public class BeanCopy { 10 | public static void main(String[] args) { 11 | 12 | LoginUser loginUser = new LoginUser(); 13 | loginUser.setId(UUIDGenerator.getUUID()); 14 | loginUser.setNickname("程高伟"); 15 | loginUser.setStatus(1); 16 | LoginUserVO loginUserVO = new LoginUserVO(); 17 | BeanUtils.copyProperties(loginUser, loginUserVO); 18 | System.out.println(loginUserVO); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/test/Hello.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.test; 2 | 3 | import org.apache.shiro.crypto.hash.Md5Hash; 4 | 5 | public class Hello { 6 | public static void main(String[] args) { 7 | String str = new Md5Hash("test").toString(); 8 | System.out.println(str); 9 | String saved = "/jrbac/home/admin"; 10 | String url = "/jrbac"; 11 | System.out.println(saved.split(url)[1]); 12 | 13 | String fileName = "abc.def.jpg"; 14 | String fileExt[] = fileName.split("\\."); 15 | System.out.println(fileExt[fileExt.length-1]); 16 | 17 | 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/test/TestAddress.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.test; 2 | 3 | public class TestAddress { 4 | private String city; 5 | private String area; 6 | public String getCity() { 7 | return city; 8 | } 9 | public void setCity(String city) { 10 | this.city = city; 11 | } 12 | public String getArea() { 13 | return area; 14 | } 15 | public void setArea(String area) { 16 | this.area = area; 17 | } 18 | @Override 19 | public String toString() { 20 | return "TestAddress [city=" + city + ", area=" + area + "]"; 21 | } 22 | 23 | 24 | } 25 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/test/TestUser.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.test; 2 | 3 | public class TestUser { 4 | private String username; 5 | private int age; 6 | private TestAddress address; 7 | 8 | public TestUser(String username, int age, TestAddress address) { 9 | super(); 10 | this.username = username; 11 | this.age = age; 12 | this.address = address; 13 | } 14 | public String getUsername() { 15 | return username; 16 | } 17 | public void setUsername(String username) { 18 | this.username = username; 19 | } 20 | public int getAge() { 21 | return age; 22 | } 23 | public void setAge(int age) { 24 | this.age = age; 25 | } 26 | public TestAddress getAddress() { 27 | return address; 28 | } 29 | public void setAddress(TestAddress address) { 30 | this.address = address; 31 | } 32 | 33 | 34 | } 35 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/util/DESUtilTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.util; 2 | 3 | import org.junit.Test; 4 | 5 | public class DESUtilTest { 6 | 7 | 8 | @Test 9 | public void testDecryption() throws Exception { 10 | String password = "oEtoaxGK9ns="; 11 | System.out.println(DESUtil.decryption(password, "12345678")); 12 | } 13 | 14 | } 15 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/util/HttpUtilTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.util; 2 | 3 | import org.json.JSONObject; 4 | import org.junit.Test; 5 | 6 | public class HttpUtilTest { 7 | 8 | @Test 9 | public void testSendPostStringString() { 10 | String url = "http://chiq3.smart-tv.cn/chiq_webservice/services?appKey=mr3z5f&method=ch.tvmall.chiq.category.get&v=2&format=json"; 11 | String jsonStr="{\"reqNum\":5,\"resIconType\":\"HOR_LARGE\",\"version\":5,\"providerCode\":\"chiq3\",\"safeFlag\":2,\"client\":{\"sn\":null,\"uid\":\"default_user\",\"agent_name\":\"chiq_phone_android\",\"agent_ver\":\"2.2.005\",\"device\":\"PHONE\",\"tv_version\":\"ZLM65HiS2_1.00019\"}}"; 12 | String result = HttpUtil.sendPost(url, jsonStr); 13 | JSONObject jsonObj= new JSONObject(result); 14 | 15 | System.out.println(jsonObj.toString()); 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /jrbac/src/test/java/com/jrbac/util/PasswordUtilTest.java: -------------------------------------------------------------------------------- 1 | package com.jrbac.util; 2 | 3 | import org.junit.Assert; 4 | import org.junit.Test; 5 | 6 | public class PasswordUtilTest { 7 | 8 | @Test 9 | public void testGetPassword() { 10 | String plainText="12345678"; 11 | String password = PasswordUtil.getPassword(plainText); 12 | System.out.println(password); 13 | // e42584918d922300a0498dbb6e89745d 14 | Assert.assertEquals("e42584918d922300a0498dbb6e89745d", password); 15 | } 16 | 17 | } 18 | --------------------------------------------------------------------------------