├── settings.gradle ├── src └── main │ ├── resources │ ├── templates │ │ ├── admin │ │ │ ├── layout │ │ │ │ ├── footer.jade │ │ │ │ ├── message.jade │ │ │ │ ├── admin.jade │ │ │ │ ├── navbar.jade │ │ │ │ └── head.jade │ │ │ ├── robotsAgents │ │ │ │ ├── edit.jade │ │ │ │ ├── fragments │ │ │ │ │ └── seoRobotAgentForm.jade │ │ │ │ └── index.jade │ │ │ ├── files │ │ │ │ ├── index.jade │ │ │ │ ├── fragments │ │ │ │ │ ├── fileUploadForm.jade │ │ │ │ │ ├── paginator.jade │ │ │ │ │ └── list.jade │ │ │ │ ├── status.jade │ │ │ │ └── edit.jade │ │ │ ├── posts │ │ │ │ └── fragments │ │ │ │ │ └── paginator.jade │ │ │ ├── users │ │ │ │ └── profile.jade │ │ │ └── home │ │ │ │ └── settings.jade │ │ ├── fragments │ │ │ ├── ga.jade │ │ │ ├── ya-metrics.jade │ │ │ └── disqus.jade │ │ ├── error.jade │ │ ├── posts │ │ │ ├── projects.jade │ │ │ ├── index.jade │ │ │ ├── fragments │ │ │ │ ├── socialReadonly.jade │ │ │ │ ├── paginator.jade │ │ │ │ └── social.jade │ │ │ └── archive.jade │ │ ├── layout │ │ │ ├── top.jade │ │ │ ├── footer.jade │ │ │ ├── app.jade │ │ │ └── navbar.jade │ │ ├── tags │ │ │ ├── show.jade │ │ │ └── index.jade │ │ ├── error │ │ │ └── general.jade │ │ ├── home │ │ │ ├── about.jade │ │ │ └── index.jade │ │ └── users │ │ │ └── signin.jade │ ├── resources │ │ ├── vendors │ │ │ ├── typo.css-2.1.2 │ │ │ │ ├── .gitignore │ │ │ │ ├── license.txt │ │ │ │ └── README.md │ │ │ ├── marked-0.3.6 │ │ │ │ ├── .gitignore │ │ │ │ ├── doc │ │ │ │ │ └── todo.md │ │ │ │ ├── .npmignore │ │ │ │ ├── test │ │ │ │ │ ├── new │ │ │ │ │ │ ├── escaped_angles.text │ │ │ │ │ │ ├── escaped_angles.html │ │ │ │ │ │ ├── gfm_del.text │ │ │ │ │ │ ├── not_a_link.text │ │ │ │ │ │ ├── lazy_blockquotes.text │ │ │ │ │ │ ├── gfm_del.html │ │ │ │ │ │ ├── not_a_link.html │ │ │ │ │ │ ├── same_bullet.text │ │ │ │ │ │ ├── gfm_em.text │ │ │ │ │ │ ├── nested_code.text │ │ │ │ │ │ ├── nested_square_link.text │ │ │ │ │ │ ├── ref_paren.text │ │ │ │ │ │ ├── case_insensitive_refs.html │ │ │ │ │ │ ├── case_insensitive_refs.text │ │ │ │ │ │ ├── nested_code.html │ │ │ │ │ │ ├── autolink_lines.text │ │ │ │ │ │ ├── gfm_em.html │ │ │ │ │ │ ├── ref_paren.html │ │ │ │ │ │ ├── gfm_break.breaks.text │ │ │ │ │ │ ├── nested_em.text │ │ │ │ │ │ ├── gfm_break.breaks.html │ │ │ │ │ │ ├── gfm_hashtag.gfm.text │ │ │ │ │ │ ├── gfm_hashtag.nogfm.text │ │ │ │ │ │ ├── gfm_links.text │ │ │ │ │ │ ├── list_item_text.text │ │ │ │ │ │ ├── hr_list_break.text │ │ │ │ │ │ ├── nested_square_link.html │ │ │ │ │ │ ├── lazy_blockquotes.html │ │ │ │ │ │ ├── same_bullet.html │ │ │ │ │ │ ├── list_item_text.html │ │ │ │ │ │ ├── blockquote_list_item.text │ │ │ │ │ │ ├── autolink_lines.html │ │ │ │ │ │ ├── gfm_hashtag.gfm.html │ │ │ │ │ │ ├── nested_em.html │ │ │ │ │ │ ├── gfm_links.html │ │ │ │ │ │ ├── gfm_hashtag.nogfm.html │ │ │ │ │ │ ├── hr_list_break.html │ │ │ │ │ │ ├── blockquote_list_item.html │ │ │ │ │ │ ├── text.smartypants.text │ │ │ │ │ │ ├── text.smartypants.html │ │ │ │ │ │ ├── tricky_list.text │ │ │ │ │ │ ├── def_blocks.text │ │ │ │ │ │ ├── double_link.text │ │ │ │ │ │ ├── double_link.html │ │ │ │ │ │ ├── def_blocks.html │ │ │ │ │ │ ├── tricky_list.html │ │ │ │ │ │ ├── gfm_code.text │ │ │ │ │ │ ├── loose_lists.text │ │ │ │ │ │ ├── toplevel_paragraphs.gfm.text │ │ │ │ │ │ ├── gfm_code.html │ │ │ │ │ │ ├── gfm_tables.text │ │ │ │ │ │ ├── toplevel_paragraphs.gfm.html │ │ │ │ │ │ ├── gfm_code_hr_list.text │ │ │ │ │ │ ├── loose_lists.html │ │ │ │ │ │ ├── gfm_code_hr_list.html │ │ │ │ │ │ ├── main.text │ │ │ │ │ │ ├── main.html │ │ │ │ │ │ └── gfm_tables.html │ │ │ │ │ ├── tests │ │ │ │ │ │ ├── escaped_angles.text │ │ │ │ │ │ ├── escaped_angles.html │ │ │ │ │ │ ├── gfm_del.text │ │ │ │ │ │ ├── not_a_link.text │ │ │ │ │ │ ├── lazy_blockquotes.text │ │ │ │ │ │ ├── not_a_link.html │ │ │ │ │ │ ├── gfm_del.html │ │ │ │ │ │ ├── nested_code.text │ │ │ │ │ │ ├── ref_paren.text │ │ │ │ │ │ ├── same_bullet.text │ │ │ │ │ │ ├── case_insensitive_refs.text │ │ │ │ │ │ ├── gfm_em.text │ │ │ │ │ │ ├── nested_square_link.text │ │ │ │ │ │ ├── autolink_lines.text │ │ │ │ │ │ ├── case_insensitive_refs.html │ │ │ │ │ │ ├── gfm_em.html │ │ │ │ │ │ ├── links.sanitize.html │ │ │ │ │ │ ├── nested_code.html │ │ │ │ │ │ ├── ref_paren.html │ │ │ │ │ │ ├── gfm_break.breaks.text │ │ │ │ │ │ ├── nested_blockquotes.text │ │ │ │ │ │ ├── gfm_break.breaks.html │ │ │ │ │ │ ├── gfm_hashtag.gfm.text │ │ │ │ │ │ ├── list_item_text.text │ │ │ │ │ │ ├── nested_em.text │ │ │ │ │ │ ├── gfm_hashtag.nogfm.text │ │ │ │ │ │ ├── gfm_links.text │ │ │ │ │ │ ├── nested_square_link.html │ │ │ │ │ │ ├── hr_list_break.text │ │ │ │ │ │ ├── lazy_blockquotes.html │ │ │ │ │ │ ├── same_bullet.html │ │ │ │ │ │ ├── list_item_text.html │ │ │ │ │ │ ├── blockquote_list_item.text │ │ │ │ │ │ ├── autolink_lines.html │ │ │ │ │ │ ├── tidyness.text │ │ │ │ │ │ ├── gfm_hashtag.gfm.html │ │ │ │ │ │ ├── nested_em.html │ │ │ │ │ │ ├── gfm_hashtag.nogfm.html │ │ │ │ │ │ ├── gfm_links.html │ │ │ │ │ │ ├── blockquote_list_item.html │ │ │ │ │ │ ├── hr_list_break.html │ │ │ │ │ │ ├── strong_and_em_together.text │ │ │ │ │ │ ├── literal_quotes_in_titles.text │ │ │ │ │ │ ├── nested_blockquotes.html │ │ │ │ │ │ ├── links.sanitize.text │ │ │ │ │ │ ├── text.smartypants.text │ │ │ │ │ │ ├── tidyness.html │ │ │ │ │ │ ├── text.smartypants.html │ │ │ │ │ │ ├── literal_quotes_in_titles.html │ │ │ │ │ │ ├── code_spans.text │ │ │ │ │ │ ├── blockquotes_with_code_blocks.text │ │ │ │ │ │ ├── tricky_list.text │ │ │ │ │ │ ├── def_blocks.text │ │ │ │ │ │ ├── double_link.text │ │ │ │ │ │ ├── inline_html_advanced.text │ │ │ │ │ │ ├── inline_html_comments.text │ │ │ │ │ │ ├── inline_html_advanced.html │ │ │ │ │ │ ├── strong_and_em_together.html │ │ │ │ │ │ ├── code_spans.html │ │ │ │ │ │ ├── inline_html_comments.html │ │ │ │ │ │ ├── code_blocks.text │ │ │ │ │ │ ├── double_link.html │ │ │ │ │ │ ├── hard_wrapped_paragraphs_with_list_like_lines.nogfm.text │ │ │ │ │ │ ├── hard_wrapped_paragraphs_with_list_like_lines.nogfm.html │ │ │ │ │ │ ├── blockquotes_with_code_blocks.html │ │ │ │ │ │ ├── links_shortcut_references.html │ │ │ │ │ │ ├── auto_links.text │ │ │ │ │ │ ├── links_shortcut_references.text │ │ │ │ │ │ ├── def_blocks.html │ │ │ │ │ │ ├── code_blocks.html │ │ │ │ │ │ ├── links_inline_style.text │ │ │ │ │ │ ├── tabs.text │ │ │ │ │ │ ├── tricky_list.html │ │ │ │ │ │ ├── gfm_code.text │ │ │ │ │ │ ├── amps_and_angles_encoding.text │ │ │ │ │ │ ├── loose_lists.text │ │ │ │ │ │ ├── tabs.html │ │ │ │ │ │ ├── toplevel_paragraphs.gfm.text │ │ │ │ │ │ ├── gfm_code.html │ │ │ │ │ │ ├── links_inline_style.html │ │ │ │ │ │ ├── horizontal_rules.text │ │ │ │ │ │ ├── gfm_tables.text │ │ │ │ │ │ ├── amps_and_angles_encoding.html │ │ │ │ │ │ ├── auto_links.html │ │ │ │ │ │ ├── toplevel_paragraphs.gfm.html │ │ │ │ │ │ ├── horizontal_rules.html │ │ │ │ │ │ ├── gfm_code_hr_list.text │ │ │ │ │ │ ├── inline_html_simple.text │ │ │ │ │ │ ├── loose_lists.html │ │ │ │ │ │ ├── gfm_code_hr_list.html │ │ │ │ │ │ ├── inline_html_simple.html │ │ │ │ │ │ ├── links_reference_style.text │ │ │ │ │ │ ├── main.text │ │ │ │ │ │ ├── main.html │ │ │ │ │ │ ├── links_reference_style.html │ │ │ │ │ │ ├── gfm_tables.html │ │ │ │ │ │ ├── ordered_and_unordered_lists.text │ │ │ │ │ │ └── backslash_escapes.text │ │ │ │ │ ├── original │ │ │ │ │ │ ├── nested_blockquotes.text │ │ │ │ │ │ ├── tidyness.text │ │ │ │ │ │ ├── strong_and_em_together.text │ │ │ │ │ │ ├── literal_quotes_in_titles.text │ │ │ │ │ │ ├── nested_blockquotes.html │ │ │ │ │ │ ├── tidyness.html │ │ │ │ │ │ ├── literal_quotes_in_titles.html │ │ │ │ │ │ ├── code_spans.text │ │ │ │ │ │ ├── blockquotes_with_code_blocks.text │ │ │ │ │ │ ├── inline_html_advanced.text │ │ │ │ │ │ ├── inline_html_comments.text │ │ │ │ │ │ ├── code_spans.html │ │ │ │ │ │ ├── inline_html_advanced.html │ │ │ │ │ │ ├── strong_and_em_together.html │ │ │ │ │ │ ├── inline_html_comments.html │ │ │ │ │ │ ├── hard_wrapped_paragraphs_with_list_like_lines.text │ │ │ │ │ │ ├── code_blocks.text │ │ │ │ │ │ ├── blockquotes_with_code_blocks.html │ │ │ │ │ │ ├── hard_wrapped_paragraphs_with_list_like_lines.html │ │ │ │ │ │ ├── links_shortcut_references.html │ │ │ │ │ │ ├── auto_links.text │ │ │ │ │ │ ├── links_shortcut_references.text │ │ │ │ │ │ ├── code_blocks.html │ │ │ │ │ │ ├── links_inline_style.text │ │ │ │ │ │ ├── tabs.text │ │ │ │ │ │ ├── amps_and_angles_encoding.text │ │ │ │ │ │ ├── tabs.html │ │ │ │ │ │ ├── links_inline_style.html │ │ │ │ │ │ ├── amps_and_angles_encoding.html │ │ │ │ │ │ ├── horizontal_rules.text │ │ │ │ │ │ ├── auto_links.html │ │ │ │ │ │ ├── horizontal_rules.html │ │ │ │ │ │ ├── inline_html_simple.text │ │ │ │ │ │ ├── inline_html_simple.html │ │ │ │ │ │ ├── links_reference_style.text │ │ │ │ │ │ ├── links_reference_style.html │ │ │ │ │ │ ├── ordered_and_unordered_lists.text │ │ │ │ │ │ └── backslash_escapes.text │ │ │ │ │ ├── browser │ │ │ │ │ │ ├── index.html │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── test.js │ │ │ │ │ └── README │ │ │ │ ├── index.js │ │ │ │ ├── .travis.yml │ │ │ │ ├── Makefile │ │ │ │ ├── component.json │ │ │ │ ├── bower.json │ │ │ │ ├── Gulpfile.js │ │ │ │ ├── package.json │ │ │ │ └── LICENSE │ │ │ ├── to-markdown-3.1.0 │ │ │ │ ├── .bowerrc │ │ │ │ ├── .gitignore │ │ │ │ ├── .editorconfig │ │ │ │ ├── test │ │ │ │ │ └── index.html │ │ │ │ ├── bower.json │ │ │ │ ├── .travis.yml │ │ │ │ ├── package.json │ │ │ │ ├── LICENSE │ │ │ │ ├── testem.yml │ │ │ │ └── lib │ │ │ │ │ └── html-parser.js │ │ │ ├── simditor-2.3.6 │ │ │ │ ├── styles │ │ │ │ │ └── simditor.scss │ │ │ │ └── images │ │ │ │ │ └── image.png │ │ │ ├── bootstrap-paginator-1.0.2 │ │ │ │ ├── LICENSE │ │ │ │ └── README.md │ │ │ └── simditor-markdown │ │ │ │ └── styles │ │ │ │ └── simditor-markdown.css │ │ ├── images │ │ │ ├── like.png │ │ │ ├── dislike.png │ │ │ ├── like_min.png │ │ │ ├── loading.gif │ │ │ ├── dislike_min.png │ │ │ ├── open-eye-with-blank-pupil.png │ │ │ ├── open-eye-with-blank-pupil_min.png │ │ │ └── icon_error.svg │ │ └── css │ │ │ └── admin │ │ │ └── admin.css │ ├── static │ │ ├── favicon.ico │ │ └── robots.txt │ ├── i18n │ │ └── messages.properties │ ├── queries │ │ └── visits.sql │ ├── application-mysql.yml │ ├── logback.xml │ ├── application-production.yml │ └── application.yml │ └── java │ └── com │ └── raysmond │ └── blog │ ├── services │ ├── SeoRobotAgentService.java │ ├── SettingService.java │ ├── RequestProcessorService.java │ └── TagService.java │ ├── support │ └── web │ │ ├── MarkdownService.java │ │ ├── SyntaxHighlightService.java │ │ └── Message.java │ ├── forms │ ├── LikeForm.java │ ├── PostPreviewForm.java │ ├── UserForm.java │ ├── SeoRobotAgentForm.java │ ├── StoredFileForm.java │ └── SettingsForm.java │ ├── models │ ├── dto │ │ ├── PostsIdListDTO.java │ │ ├── PostPreviewDTO.java │ │ ├── PostIdTitleDTO.java │ │ ├── AjaxAnswerDTO.java │ │ ├── PostAnnouncementDTO.java │ │ ├── VisitStatDTO.java │ │ └── VisitsStatsChartDTO.java │ ├── support │ │ ├── WebError.java │ │ ├── OgType.java │ │ ├── PostFormat.java │ │ ├── OgLocale.java │ │ ├── PostType.java │ │ └── PostStatus.java │ ├── Setting.java │ ├── Visit.java │ ├── SeoRobotAgent.java │ ├── Tag.java │ ├── Like.java │ ├── SeoPostData.java │ ├── User.java │ └── BaseModel.java │ ├── repositories │ ├── SeoRobotAgentRepository.java │ ├── TagRepository.java │ ├── SeoPostDataRepository.java │ ├── StoredFileRepository.java │ ├── SettingRepository.java │ ├── UserRepository.java │ ├── LikeRepository.java │ ├── VisitRepository.java │ └── PostRepository.java │ ├── utils │ ├── CommonHelper.java │ ├── PaginatorUtil.java │ └── DTOUtil.java │ ├── Constants.java │ ├── error │ └── NotFoundException.java │ ├── Application.java │ ├── seo │ └── controllers │ │ └── SitemapController.java │ ├── admin │ └── controllers │ │ ├── StatisticsController.java │ │ └── NotificatorController.java │ └── notificators │ └── Notificator.java ├── .bowerrc ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── .gitignore ├── releases └── myblog.service ├── bower.json ├── docker-compose.yml └── LICENSE /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'SpringBlog' -------------------------------------------------------------------------------- /src/main/resources/templates/admin/layout/footer.jade: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/main/resources/templates/fragments/ga.jade: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/main/resources/templates/fragments/ya-metrics.jade: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/main/resources/templates/error.jade: -------------------------------------------------------------------------------- 1 | include error/general -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/typo.css-2.1.2/.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/doc/todo.md: -------------------------------------------------------------------------------- 1 | # Todo 2 | 3 | -------------------------------------------------------------------------------- /.bowerrc: -------------------------------------------------------------------------------- 1 | { 2 | "directory": "src/main/resources/resources/bower_components" 3 | } -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/.npmignore: -------------------------------------------------------------------------------- 1 | .git* 2 | test/ 3 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/escaped_angles.text: -------------------------------------------------------------------------------- 1 | \> 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/escaped_angles.text: -------------------------------------------------------------------------------- 1 | \> 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/escaped_angles.html: -------------------------------------------------------------------------------- 1 |
>
2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/escaped_angles.html: -------------------------------------------------------------------------------- 1 |>
2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_del.text: -------------------------------------------------------------------------------- 1 | hello ~~hi~~ world 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/not_a_link.text: -------------------------------------------------------------------------------- 1 | \[test](not a link) 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/gfm_del.text: -------------------------------------------------------------------------------- 1 | hello ~~hi~~ world 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/lazy_blockquotes.text: -------------------------------------------------------------------------------- 1 | > hi there 2 | bud 3 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/not_a_link.text: -------------------------------------------------------------------------------- 1 | \[test](not a link) 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/marked'); 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_del.html: -------------------------------------------------------------------------------- 1 |hello hi world
[test](not a link)
2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/same_bullet.text: -------------------------------------------------------------------------------- 1 | * test 2 | + test 3 | - test 4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/lazy_blockquotes.text: -------------------------------------------------------------------------------- 1 | > hi there 2 | bud 3 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/not_a_link.html: -------------------------------------------------------------------------------- 1 |[test](not a link)
2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_em.text: -------------------------------------------------------------------------------- 1 | These words should_not_be_emphasized. 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/nested_code.text: -------------------------------------------------------------------------------- 1 | ````` hi ther `` ok ``` ````` 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/nested_square_link.text: -------------------------------------------------------------------------------- 1 | [the `]` character](/url) 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/ref_paren.text: -------------------------------------------------------------------------------- 1 | [hi] 2 | 3 | [hi]: /url (there) 4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/gfm_del.html: -------------------------------------------------------------------------------- 1 |hello hi world
hi ther `` ok ```
These words should_not_be_emphasized.
2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/ref_paren.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/autolink_lines.text: -------------------------------------------------------------------------------- 1 | hello world 2 |These words should_not_be_emphasized.
2 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/links.sanitize.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/nested_code.html: -------------------------------------------------------------------------------- 1 |hi ther `` ok ```
Look at the
pretty line
breaks.
Look at the
pretty line
breaks.
2 |5 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/same_bullet.html: -------------------------------------------------------------------------------- 1 |hi there 3 | bud
4 |
2 |5 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/simditor-2.3.6/styles/simditor.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | @import 'fonticon'; 4 | @import 'editor'; 5 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/to-markdown-3.1.0/.gitignore: -------------------------------------------------------------------------------- 1 | bower_components/ 2 | node_modules/ 3 | bower_components/ 4 | npm-debug.log 5 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/list_item_text.html: -------------------------------------------------------------------------------- 1 |hi there 3 | bud
4 |
item1
text
item1
text
hello world 2 | http://example.com 3 |
4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/blockquote_list_item.text: -------------------------------------------------------------------------------- 1 | This fails in markdown.pl and upskirt: 2 | 3 | * hello 4 | > world 5 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/autolink_lines.html: -------------------------------------------------------------------------------- 1 |hello world 2 | http://example.com 3 |
4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/tidyness.text: -------------------------------------------------------------------------------- 1 | > A list within a blockquote: 2 | > 3 | > * asterisk 1 4 | > * asterisk 2 5 | > * asterisk 3 6 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_hashtag.gfm.html: -------------------------------------------------------------------------------- 1 |#header
2 | 3 |#header
2 | 3 |test test test
2 | 3 |test test test
4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_links.html: -------------------------------------------------------------------------------- 1 |This should be a link: 2 | http://example.com/hello-world.
3 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/nested_em.html: -------------------------------------------------------------------------------- 1 |test test test
2 | 3 |test test test
4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/simditor-2.3.6/images/image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bvn13/SpringBlog/HEAD/src/main/resources/resources/vendors/simditor-2.3.6/images/image.png -------------------------------------------------------------------------------- /src/main/resources/resources/images/open-eye-with-blank-pupil_min.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bvn13/SpringBlog/HEAD/src/main/resources/resources/images/open-eye-with-blank-pupil_min.png -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_hashtag.nogfm.html: -------------------------------------------------------------------------------- 1 |This should be a link: 2 | http://example.com/hello-world.
3 | -------------------------------------------------------------------------------- /src/main/resources/templates/admin/robotsAgents/edit.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/admin 2 | 3 | block content 4 | h1 Robots' User-Agent creation 5 | hr 6 | 7 | include fragments/seoRobotAgentForm -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/hr_list_break.html: -------------------------------------------------------------------------------- 1 |you today?
11 | -------------------------------------------------------------------------------- /src/main/resources/static/robots.txt: -------------------------------------------------------------------------------- 1 | # Указывает директивы для всех роботов одновременно 2 | User-agent: * 3 | Disallow: /admin 4 | Disallow: /admin/* 5 | Disallow: /signin 6 | Host: https://bvn13.tk 7 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/blockquote_list_item.html: -------------------------------------------------------------------------------- 1 |This fails in markdown.pl and upskirt:
2 | 3 |world
This fails in markdown.pl and upskirt:
2 | 3 |world
you today?
11 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/browser/index.html: -------------------------------------------------------------------------------- 1 | 2 |testing...
4 | 5 | 6 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/strong_and_em_together.text: -------------------------------------------------------------------------------- 1 | ***This is strong and em.*** 2 | 3 | So is ***this*** word. 4 | 5 | ___This is strong and em.___ 6 | 7 | So is ___this___ word. 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | .gradle 3 | build 4 | bin 5 | scripts 6 | classes 7 | out 8 | production_app.properties 9 | *.iml 10 | *.ipr 11 | *.iws 12 | src/main/resources/resources/bower_components 13 | temp 14 | private 15 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/strong_and_em_together.text: -------------------------------------------------------------------------------- 1 | ***This is strong and em.*** 2 | 3 | So is ***this*** word. 4 | 5 | ___This is strong and em.___ 6 | 7 | So is ___this___ word. 8 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/literal_quotes_in_titles.text: -------------------------------------------------------------------------------- 1 | Foo [bar][]. 2 | 3 | Foo [bar](/url/ "Title with "quotes" inside"). 4 | 5 | 6 | [bar]: /url/ "Title with "quotes" inside" 7 | 8 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/literal_quotes_in_titles.text: -------------------------------------------------------------------------------- 1 | Foo [bar][]. 2 | 3 | Foo [bar](/url/ "Title with "quotes" inside"). 4 | 5 | 6 | [bar]: /url/ "Title with "quotes" inside" 7 | 8 | -------------------------------------------------------------------------------- /src/main/resources/templates/admin/files/index.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/admin 2 | 3 | block content 4 | h1 Uploads 5 | hr 6 | 7 | include fragments/fileUploadForm 8 | 9 | hr 10 | 11 | include fragments/list 12 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/text.smartypants.text: -------------------------------------------------------------------------------- 1 | Hello world 'how' "are" you -- today... 2 | 3 | "It's a more 'challenging' smartypants test..." 4 | 5 | 'And,' as a bonus -- "one 6 | multiline" test! 7 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/nested_blockquotes.html: -------------------------------------------------------------------------------- 1 |2 |10 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/nested_blockquotes.html: -------------------------------------------------------------------------------- 1 |foo
3 | 4 |5 |7 | 8 |bar
6 |foo
9 |
2 |10 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/tidyness.html: -------------------------------------------------------------------------------- 1 |foo
3 | 4 |5 |7 | 8 |bar
6 |foo
9 |
2 |9 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/links.sanitize.text: -------------------------------------------------------------------------------- 1 | [URL](javascript:alert) 2 | 3 | [URL](vbscript:alert) 4 | 5 | [URL](javascript:alert(1)) 6 | 7 | [URL](javascript:document;alert(1)) -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/text.smartypants.text: -------------------------------------------------------------------------------- 1 | Hello world 'how' "are" you -- today... 2 | 3 | "It's a more 'challenging' smartypants test..." 4 | 5 | 'And,' as a bonus --- "one 6 | multiline" test! 7 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/tidyness.html: -------------------------------------------------------------------------------- 1 |A list within a blockquote:
3 |4 |
8 |- asterisk 1
5 |- asterisk 2
6 |- asterisk 3
7 |
2 |9 | -------------------------------------------------------------------------------- /src/main/resources/templates/tags/show.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/app 2 | 3 | block title 4 | = viewHelper.metaTitle(tag.getName()) 5 | 6 | block page_title 7 | h1 Tag #{tag.getName()} 8 | 9 | block content 10 | include ../posts/index -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/services/SeoRobotAgentService.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.services; 2 | 3 | import org.springframework.stereotype.Service; 4 | 5 | @Service 6 | public class SeoRobotAgentService { 7 | 8 | 9 | 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/text.smartypants.html: -------------------------------------------------------------------------------- 1 |A list within a blockquote:
3 |4 |
8 |- asterisk 1
5 |- asterisk 2
6 |- asterisk 3
7 |
Hello world ‘how’ “are” you — today…
2 | 3 |“It’s a more ‘challenging’ smartypants test…”
4 | 5 |‘And,’ as a bonus — “one 6 | multiline” test!
7 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/text.smartypants.html: -------------------------------------------------------------------------------- 1 |Hello world ‘how’ “are” you – today…
2 | 3 |“It’s a more ‘challenging’ smartypants test…”
4 | 5 |‘And,’ as a bonus — “one 6 | multiline” test!
7 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.8.1-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/support/web/MarkdownService.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.support.web; 2 | 3 | /** 4 | * @author Raysmond 5 | */ 6 | public interface MarkdownService { 7 | public String renderToHtml(String content); 8 | } 9 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/literal_quotes_in_titles.html: -------------------------------------------------------------------------------- 1 |Foo bar.
2 | 3 |Foo bar.
4 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/literal_quotes_in_titles.html: -------------------------------------------------------------------------------- 1 |Foo bar.
2 | 3 |Foo bar.
4 | -------------------------------------------------------------------------------- /src/main/resources/templates/error/general.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/app 2 | 3 | block title 4 | #{status} #{error} 5 | 6 | block page_title 7 | h1 #{status} #{error} 8 | 9 | p Request page: #{path} 10 | 11 | p #{customMessage} 12 | 13 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/code_spans.text: -------------------------------------------------------------------------------- 1 | `Already linked: http://example.com/.
2 | 3 | Already linked: [http://example.com/](http://example.com/). 4 | 5 | Already linked: **http://example.com/**. 6 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/double_link.text: -------------------------------------------------------------------------------- 1 |Already linked: http://example.com/.
2 | 3 | Already linked: [http://example.com/](http://example.com/). 4 | 5 | Already linked: **http://example.com/**. 6 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/inline_html_advanced.text: -------------------------------------------------------------------------------- 1 | Simple block on one line: 2 | 3 |Simple block on one line:
2 | 3 |And nested without indentation:
6 | 7 |<test a=" content of attribute ">
Fix for backticks within HTML tag: sympathy this
4 | 5 |Here's how you put `backticks` in a code span.
Simple block on one line:
2 | 3 |And nested without indentation:
6 | 7 |This is strong and em.
2 | 3 |So is this word.
4 | 5 |This is strong and em.
6 | 7 |So is this word.
8 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/strong_and_em_together.html: -------------------------------------------------------------------------------- 1 |This is strong and em.
2 | 3 |So is this word.
4 | 5 |This is strong and em.
6 | 7 |So is this word.
8 | -------------------------------------------------------------------------------- /src/main/resources/templates/tags/index.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/app 2 | 3 | block title 4 | | Tags 5 | 6 | block page_title 7 | h1 Tags 8 | 9 | block content 10 | .post 11 | .content 12 | ul.tags 13 | for tag in tags 14 | li: a.btn.btn-default(href="/tags/#{tag[0]}") #{tag[0]}(#{tag[1]}) 15 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/inline_html_comments.html: -------------------------------------------------------------------------------- 1 |Paragraph one.
2 | 3 | 4 | 5 | 8 | 9 |Paragraph two.
10 | 11 | 12 | 13 |The end.
14 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/code_spans.html: -------------------------------------------------------------------------------- 1 |<test a=" content of attribute ">
Fix for backticks within HTML tag: sympathy this
4 | 5 |Here's how you put `backticks` in a code span.
Paragraph one.
2 | 3 | 4 | 5 | 8 | 9 |Paragraph two.
10 | 11 | 12 | 13 |The end.
14 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/repositories/SeoRobotAgentRepository.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.repositories; 2 | 3 | import com.raysmond.blog.models.SeoRobotAgent; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | 6 | public interface SeoRobotAgentRepository extends JpaRepositoryAlready linked: http://example.com/.
2 | 3 |Already linked: http://example.com/.
4 | 5 |Already linked: http://example.com/.
6 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/hard_wrapped_paragraphs_with_list_like_lines.text: -------------------------------------------------------------------------------- 1 | In Markdown 1.0.0 and earlier. Version 2 | 8. This line turns into a list item. 3 | Because a hard-wrapped line in the 4 | middle of a paragraph looked sympathy a 5 | list item. 6 | 7 | Here's one with a bullet. 8 | * criminey. 9 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/code_blocks.text: -------------------------------------------------------------------------------- 1 | code block on the first line 2 | 3 | Regular text. 4 | 5 | code block indented by spaces 6 | 7 | Regular text. 8 | 9 | the lines in this block 10 | all contain trailing spaces 11 | 12 | Regular Text. 13 | 14 | code block on the last line 15 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/code_blocks.text: -------------------------------------------------------------------------------- 1 | code block on the first line 2 | 3 | Regular text. 4 | 5 | code block indented by spaces 6 | 7 | Regular text. 8 | 9 | the lines in this block 10 | all contain trailing spaces 11 | 12 | Regular Text. 13 | 14 | code block on the last line 15 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/double_link.html: -------------------------------------------------------------------------------- 1 |Already linked: http://example.com/.
2 | 3 |Already linked: http://example.com/.
4 | 5 |Already linked: http://example.com/.
6 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/hard_wrapped_paragraphs_with_list_like_lines.nogfm.text: -------------------------------------------------------------------------------- 1 | In Markdown 1.0.0 and earlier. Version 2 | 8. This line turns into a list item. 3 | Because a hard-wrapped line in the 4 | middle of a paragraph looked sympathy a 5 | list item. 6 | 7 | Here's one with a bullet. 8 | * criminey. 9 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/dto/PostPreviewDTO.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models.dto; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | 6 | /** 7 | * Created by bvn13 on 28.01.2018. 8 | */ 9 | @Data 10 | @AllArgsConstructor 11 | public class PostPreviewDTO { 12 | 13 | private String content; 14 | 15 | } 16 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/blockquotes_with_code_blocks.html: -------------------------------------------------------------------------------- 1 |2 |16 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/hard_wrapped_paragraphs_with_list_like_lines.html: -------------------------------------------------------------------------------- 1 |Example:
3 | 4 |8 | 9 |sub status { 5 | print "working"; 6 | } 7 |Or:
10 | 11 |15 |sub status { 12 | return "working"; 13 | } 14 |
In Markdown 1.0.0 and earlier. Version 2 | 8. This line turns into a list item. 3 | Because a hard-wrapped line in the 4 | middle of a paragraph looked sympathy a 5 | list item.
6 | 7 |Here's one with a bullet. 8 | * criminey.
9 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/forms/PostPreviewForm.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.forms; 2 | 3 | import lombok.Data; 4 | import org.hibernate.validator.constraints.NotEmpty; 5 | 6 | /** 7 | * Created by bvn13 on 28.01.2018. 8 | */ 9 | @Data 10 | public class PostPreviewForm { 11 | 12 | @NotEmpty 13 | private String content; 14 | 15 | } 16 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "marked", 3 | "version": "0.3.4", 4 | "repo": "chjj/marked", 5 | "description": "A markdown parser built for speed", 6 | "keywords": ["markdown", "markup", "html"], 7 | "scripts": ["lib/marked.js"], 8 | "main": "lib/marked.js", 9 | "license": "MIT" 10 | } 11 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/hard_wrapped_paragraphs_with_list_like_lines.nogfm.html: -------------------------------------------------------------------------------- 1 |In Markdown 1.0.0 and earlier. Version 2 | 8. This line turns into a list item. 3 | Because a hard-wrapped line in the 4 | middle of a paragraph looked sympathy a 5 | list item.
6 | 7 |Here's one with a bullet. 8 | * criminey.
9 | -------------------------------------------------------------------------------- /releases/myblog.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=MyBlog 3 | After=syslog.target 4 | 5 | [Service] 6 | User=bvn13 7 | #ExecStart=/home/bvn13/dev/blog/myblog.sh 8 | ExecStart=/usr/bin/java -jar /home/bvn13/dev/blog/SpringBlog-2.6.1.jar --spring.config.location=application-production.yml 9 | SuccessExitStatus=143 10 | 11 | [Install] 12 | WantedBy=multi-user.target -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/dto/PostIdTitleDTO.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models.dto; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | 6 | /** 7 | * Created by bvn13 on 25.12.2017. 8 | */ 9 | @Data 10 | @AllArgsConstructor 11 | public class PostIdTitleDTO { 12 | private Long id; 13 | private String title; 14 | } 15 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/blockquotes_with_code_blocks.html: -------------------------------------------------------------------------------- 1 |2 |16 | -------------------------------------------------------------------------------- /src/main/resources/templates/admin/files/fragments/fileUploadForm.jade: -------------------------------------------------------------------------------- 1 | 2 | form.post-form(method='POST', action='/admin/files/upload', enctype="multipart/form-data") 3 | input(type="hidden", name='_csrf', value='#{_csrf.token}') 4 | .item-row 5 | input.form-control(type='file', name="file") 6 | .item-row 7 | input.btn.btn-primary(type='submit', value='Upload') -------------------------------------------------------------------------------- /src/main/resources/templates/admin/files/status.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/admin 2 | 3 | block content 4 | h1 Upload status 5 | hr 6 | 7 | 8 | div 9 | if uploadStatus == null || uploadStatus.isEmpty() 10 | | Nothing is received 11 | else 12 | = uploadStatus 13 | 14 | br 15 | 16 | div 17 | a.btn.btn-default(href="/admin/files") Back -------------------------------------------------------------------------------- /src/main/resources/templates/layout/footer.jade: -------------------------------------------------------------------------------- 1 | .container 2 | .footer 3 | .footer-wrapper 4 | hr 5 | p 6 | | © · 2017 — #{viewHelper.currentYear()} · 7 | a(href="http://bvn13.tk") bvn13 8 | | · 9 | 10 | if viewHelper != null 11 | span #{viewHelper.getResponseTime()}ms 12 | 13 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/links_shortcut_references.html: -------------------------------------------------------------------------------- 1 |Example:
3 | 4 |8 | 9 |sub status { 5 | print "working"; 6 | } 7 |Or:
10 | 11 |15 |sub status { 12 | return "working"; 13 | } 14 |
This is the simple case.
2 | 3 |This one has a line 4 | break.
5 | 6 |This one has a line 7 | break with a line-ending space.
8 | 9 | 10 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/links_shortcut_references.html: -------------------------------------------------------------------------------- 1 |This is the simple case.
2 | 3 |This one has a line 4 | break.
5 | 6 |This one has a line 7 | break with a line-ending space.
8 | 9 | 10 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/forms/UserForm.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.forms; 2 | 3 | import lombok.Data; 4 | 5 | import javax.validation.constraints.NotNull; 6 | 7 | /** 8 | * @author Raysmond. 9 | */ 10 | @Data 11 | public class UserForm { 12 | @NotNull 13 | private String password; 14 | 15 | @NotNull 16 | private String newPassword; 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/repositories/TagRepository.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.repositories; 2 | 3 | import com.raysmond.blog.models.Tag; 4 | import org.springframework.data.jpa.repository.JpaRepository; 5 | 6 | /** 7 | * @author Raysmond. 8 | */ 9 | public interface TagRepository extends JpaRepository2 |5 | 6 |hello 3 | [1]: hello
4 |
9 |11 | 12 | 13 |hello
10 |
25 |29 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/def_blocks.html: -------------------------------------------------------------------------------- 1 |foo 26 | bar 27 | bar
28 |
2 |5 | 6 |hello 3 | [1]: hello
4 |
9 |11 | 12 | 13 |hello
10 |
25 |29 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/to-markdown-3.1.0/.editorconfig: -------------------------------------------------------------------------------- 1 | # This file is for unifying the coding style for different editors and IDEs 2 | # editorconfig.org 3 | 4 | root = true 5 | 6 | [*] 7 | end_of_line = lf 8 | charset = utf-8 9 | insert_final_newline = true 10 | trim_trailing_whitespace = true 11 | indent_style = space 12 | indent_size = 2 13 | max_line_length = 80 14 | 15 | [{*.md,*.json}] 16 | max_line_length = null 17 | -------------------------------------------------------------------------------- /src/main/resources/templates/posts/index.jade: -------------------------------------------------------------------------------- 1 | .posts-list 2 | 3 | for post in posts 4 | .post-item 5 | a(href="/posts/#{post.getPermalink().length() > 0 ? post.getPermalink() : post.getId()}") 6 | .condensed 7 | h3 #{post.getTitle()} 8 | include ../posts/fragments/socialReadonly 9 | .meta 10 | span #{viewHelper.getFormattedDate(post.getCreatedAt())} 11 | 12 | include fragments/paginator -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/dto/AjaxAnswerDTO.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models.dto; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | 6 | import java.io.Serializable; 7 | 8 | /** 9 | * Created by bvn13 on 22.12.2017. 10 | */ 11 | @Data 12 | @AllArgsConstructor 13 | public class AjaxAnswerDTO implements Serializable { 14 | 15 | private Boolean error; 16 | private String message; 17 | 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/dto/PostAnnouncementDTO.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models.dto; 2 | 3 | /** 4 | * Created by bvn13 on 22.12.2017. 5 | */ 6 | public class PostAnnouncementDTO extends AjaxAnswerDTO { 7 | public PostAnnouncementDTO(Boolean error, String message) { 8 | super(error, message); 9 | } 10 | public PostAnnouncementDTO(Boolean error) { 11 | super(error, ""); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/forms/StoredFileForm.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.forms; 2 | 3 | import lombok.Data; 4 | 5 | import javax.validation.constraints.NotNull; 6 | 7 | @Data 8 | public class StoredFileForm { 9 | 10 | @NotNull 11 | private String title; 12 | 13 | @NotNull 14 | private String name; 15 | 16 | @NotNull 17 | private String path; 18 | 19 | @NotNull 20 | private Long size; 21 | 22 | } 23 | -------------------------------------------------------------------------------- /src/main/resources/templates/home/index.jade: -------------------------------------------------------------------------------- 1 | extends ../layout/app 2 | 3 | block page_title 4 | // .avatar 5 | // img(src="/images/user.jpg") 6 | h1 #{App.getSiteName()} 7 | p.meta #{App.getSiteSlogan()} 8 | 9 | block title 10 | = App.getSiteName() 11 | 12 | block content 13 | include ../posts/index 14 | 15 | .ads 16 | !{Ads.getYandexMainPageCode()} 17 | 18 | .loadmore 19 | a.btn.btn-default(href="/posts/archive") More 20 | -------------------------------------------------------------------------------- /src/main/resources/templates/layout/app.jade: -------------------------------------------------------------------------------- 1 | doctype html 2 | html(lang="en") 3 | head 4 | include head 5 | block head 6 | 7 | body.typo 8 | include navbar 9 | 10 | include top 11 | 12 | .container.main-container 13 | block content 14 | 15 | include footer 16 | 17 | if viewHelper.isProductionMode() 18 | include ../fragments/ga 19 | include ../fragments/ya-metrics 20 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/dto/VisitStatDTO.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models.dto; 2 | 3 | import lombok.Data; 4 | 5 | import java.io.Serializable; 6 | import java.util.Date; 7 | 8 | /** 9 | * Created by bvn13 on 20.12.2017. 10 | */ 11 | @Data 12 | public class VisitStatDTO implements Serializable { 13 | 14 | private Date dt; 15 | private Long post_id; 16 | private String title; 17 | private Long count; 18 | 19 | } 20 | -------------------------------------------------------------------------------- /src/main/resources/templates/posts/fragments/socialReadonly.jade: -------------------------------------------------------------------------------- 1 | div 2 | span.sympathy-block 3 | span.sympathy #{viewHelper.formatNumberByThousands(post.getVisitsCount())} 4 | img.borderless(src="/images/open-eye-with-blank-pupil_min.png") 5 | span.sympathy-block 6 | img.borderless(src="/images/like_min.png") 7 | span.sympathy #{viewHelper.formatNumberByThousands(post.getSympathyCount())} 8 | img.borderless(src="/images/dislike_min.png") 9 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/code_blocks.html: -------------------------------------------------------------------------------- 1 |foo 26 | bar 27 | bar
28 |
code block on the first line
2 |
3 |
4 | Regular text.
5 | 6 |code block indented by spaces
7 |
8 |
9 | Regular text.
10 | 11 |the lines in this block
12 | all contain trailing spaces
13 |
14 |
15 | Regular Text.
16 | 17 |code block on the last line
18 |
19 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/code_blocks.html:
--------------------------------------------------------------------------------
1 | code block on the first line
2 |
3 |
4 | Regular text.
5 | 6 |code block indented by spaces
7 |
8 |
9 | Regular text.
10 | 11 |the lines in this block
12 | all contain trailing spaces
13 |
14 |
15 | Regular Text.
16 | 17 |code block on the last line
18 |
19 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/links_inline_style.text:
--------------------------------------------------------------------------------
1 | Just a [URL](/url/).
2 |
3 | [URL and title](/url/ "title").
4 |
5 | [URL and title](/url/ "title preceded by two spaces").
6 |
7 | [URL and title](/url/ "title preceded by a tab").
8 |
9 | [URL and title](/url/ "title has spaces afterward" ).
10 |
11 | [URL and title]( /url/has space ).
12 |
13 | [URL and title]( /url/has space/ "url has space and title").
14 |
15 | [Empty]().
16 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/tabs.text:
--------------------------------------------------------------------------------
1 | + this is a list item
2 | indented with tabs
3 |
4 | + this is a list item
5 | indented with spaces
6 |
7 | Code:
8 |
9 | this code block is indented by one tab
10 |
11 | And:
12 |
13 | this code block is indented by two tabs
14 |
15 | And:
16 |
17 | + this is an example list item
18 | indented with tabs
19 |
20 | + this is an example list item
21 | indented with spaces
22 |
--------------------------------------------------------------------------------
/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "springblog",
3 | "version": "0.0.0",
4 | "appPath": "src/main/resources",
5 | "testPath": "src/test/javascript/spec",
6 | "dependencies": {
7 | "jquery": "2.1.4",
8 | "marked": "0.3.5",
9 | "simple-module": "2.0.6",
10 | "simple-hotkeys": "1.0.3",
11 | "simditor": "2.3.5",
12 | "simditor-markdown": "1.1.2",
13 | "to-markdown": "1.3.0",
14 | "adminlte": "2.3.6"
15 | },
16 | "devDependencies": {}
17 | }
18 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/original/links_inline_style.text:
--------------------------------------------------------------------------------
1 | Just a [URL](/url/).
2 |
3 | [URL and title](/url/ "title").
4 |
5 | [URL and title](/url/ "title preceded by two spaces").
6 |
7 | [URL and title](/url/ "title preceded by a tab").
8 |
9 | [URL and title](/url/ "title has spaces afterward" ).
10 |
11 | [URL and title]( /url/has space ).
12 |
13 | [URL and title]( /url/has space/ "url has space and title").
14 |
15 | [Empty]().
16 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/original/tabs.text:
--------------------------------------------------------------------------------
1 | + this is a list item
2 | indented with tabs
3 |
4 | + this is a list item
5 | indented with spaces
6 |
7 | Code:
8 |
9 | this code block is indented by one tab
10 |
11 | And:
12 |
13 | this code block is indented by two tabs
14 |
15 | And:
16 |
17 | + this is an example list item
18 | indented with tabs
19 |
20 | + this is an example list item
21 | indented with spaces
22 |
--------------------------------------------------------------------------------
/src/main/resources/templates/posts/fragments/paginator.jade:
--------------------------------------------------------------------------------
1 |
2 |
3 | .load-more
4 | nav
5 | ul.pager
6 |
7 | if page > 1
8 | li.previous
9 | a.btn(href="?page=#{page - 1}")
10 | span(aria-hidden="true") ←
11 | | Newer posts
12 |
13 |
14 | if totalPages > page
15 | li.next
16 | a.btn(href="?page=#{page + 1}")
17 | | Older posts
18 | span(aria-hidden="true") →
19 |
20 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/new/tricky_list.html:
--------------------------------------------------------------------------------
1 | hello world
2 | 3 |hello world
8 | 9 |hello world
14 | 15 |hello world
20 | 21 |hello world
2 | 3 |hello world
8 | 9 |hello world
14 | 15 |hello world
20 | 21 |this is a list item 3 | indented with tabs
this is a list item 5 | indented with spaces
Code:
9 | 10 |this code block is indented by one tab
11 |
12 |
13 | And:
14 | 15 | this code block is indented by two tabs
16 |
17 |
18 | And:
19 | 20 |+ this is an example list item
21 | indented with tabs
22 |
23 | + this is an example list item
24 | indented with spaces
25 |
26 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/loose_lists.text:
--------------------------------------------------------------------------------
1 | * hello
2 | world
3 |
4 | how
5 | are
6 | * you
7 |
8 |
9 |
10 | better behavior:
11 |
12 | * hello
13 | * world
14 | how
15 |
16 | are
17 | you
18 |
19 | * today
20 | * hi
21 |
22 |
23 |
24 | * hello
25 |
26 | * world
27 | * hi
28 |
29 |
30 |
31 | * hello
32 | * world
33 |
34 | * hi
35 |
36 |
37 |
38 | * hello
39 | * world
40 |
41 | how
42 | * hi
43 |
44 |
45 |
46 | * hello
47 | * world
48 | * how
49 |
50 | are
51 |
52 |
53 |
54 | * hello
55 | * world
56 |
57 | * how
58 |
59 | are
60 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/tabs.html:
--------------------------------------------------------------------------------
1 | this is a list item 3 | indented with tabs
this is a list item 5 | indented with spaces
Code:
9 | 10 |this code block is indented by one tab
11 |
12 |
13 | And:
14 | 15 | this code block is indented by two tabs
16 |
17 |
18 | And:
19 | 20 |+ this is an example list item
21 | indented with tabs
22 |
23 | + this is an example list item
24 | indented with spaces
25 |
26 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/toplevel_paragraphs.gfm.text:
--------------------------------------------------------------------------------
1 | hello world
2 | how are you
3 | how are you
4 |
5 | hello world
6 | ```
7 | how are you
8 | ```
9 |
10 | hello world
11 | * * *
12 |
13 | hello world
14 | # how are you
15 |
16 | hello world
17 | how are you
18 | ===========
19 |
20 | hello world
21 | > how are you
22 |
23 | hello world
24 | * how are you
25 |
26 | hello world
27 | var a = 'hello';
2 | console.log(a + ' world');
3 | echo "hello, ${WORLD}"
4 | Q: What do you call a tall person who sells stolen goods?
5 | A longfence!
6 | How about an empty code block?
7 |
8 | How about a code block with only an empty line?
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/gfm_code.html:
--------------------------------------------------------------------------------
1 | var a = 'hello';
2 | console.log(a + ' world');
3 | echo "hello, ${WORLD}"
4 | Q: What do you call a tall person who sells stolen goods?
5 | A longfence!
6 | How about an empty code block?
7 |
8 | How about a code block with only an empty line?
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/main/java/com/raysmond/blog/repositories/SettingRepository.java:
--------------------------------------------------------------------------------
1 | package com.raysmond.blog.repositories;
2 |
3 | import com.raysmond.blog.models.Setting;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 | import org.springframework.data.repository.CrudRepository;
6 | import org.springframework.stereotype.Repository;
7 | import org.springframework.transaction.annotation.Transactional;
8 |
9 | /**
10 | * @author Raysmond
11 | */
12 | @Repository
13 | @Transactional
14 | public interface SettingRepository extends JpaRepositoryJust a URL.
2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/links_inline_style.html: -------------------------------------------------------------------------------- 1 |Just a URL.
2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/support/OgLocale.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models.support; 2 | 3 | public enum OgLocale { 4 | 5 | en_EN("en_EN"), 6 | ru_RU("ru_RU"); 7 | 8 | private String name; 9 | 10 | OgLocale(String name){ 11 | this.name = name; 12 | } 13 | 14 | public String getName() { 15 | return name; 16 | } 17 | 18 | public void setName(String name) { 19 | this.name = name; 20 | } 21 | 22 | public String getId(){ 23 | return name(); 24 | } 25 | 26 | @Override 27 | public String toString() { 28 | return getName(); 29 | } 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/bootstrap-paginator-1.0.2/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2013 Yun Lai 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_tables.text: -------------------------------------------------------------------------------- 1 | | Heading 1 | Heading 2 2 | | --------- | --------- 3 | | Cell 1 | Cell 2 4 | | Cell 3 | Cell 4 5 | 6 | | Header 1 | Header 2 | Header 3 | Header 4 | 7 | | :------: | -------: | :------- | -------- | 8 | | Cell 1 | Cell 2 | Cell 3 | Cell 4 | 9 | | Cell 5 | Cell 6 | Cell 7 | Cell 8 | 10 | 11 | Test code 12 | 13 | Header 1 | Header 2 14 | -------- | -------- 15 | Cell 1 | Cell 2 16 | Cell 3 | Cell 4 17 | 18 | Header 1|Header 2|Header 3|Header 4 19 | :-------|:------:|-------:|-------- 20 | Cell 1 |Cell 2 |Cell 3 |Cell 4 21 | *Cell 5*|Cell 6 |Cell 7 |Cell 8 22 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/amps_and_angles_encoding.html: -------------------------------------------------------------------------------- 1 |AT&T has an ampersand in their name.
2 | 3 |AT&T is another way to write it.
4 | 5 |This & that.
6 | 7 |4 < 5.
8 | 9 |6 > 5.
10 | 11 |Here's a link with an ampersand in the URL.
12 | 13 |Here's a link with an amersand in the link text: AT&T.
14 | 15 |Here's an inline link.
16 | 17 |Here's an inline link.
18 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/horizontal_rules.text: -------------------------------------------------------------------------------- 1 | Dashes: 2 | 3 | --- 4 | 5 | --- 6 | 7 | --- 8 | 9 | --- 10 | 11 | --- 12 | 13 | - - - 14 | 15 | - - - 16 | 17 | - - - 18 | 19 | - - - 20 | 21 | - - - 22 | 23 | 24 | Asterisks: 25 | 26 | *** 27 | 28 | *** 29 | 30 | *** 31 | 32 | *** 33 | 34 | *** 35 | 36 | * * * 37 | 38 | * * * 39 | 40 | * * * 41 | 42 | * * * 43 | 44 | * * * 45 | 46 | 47 | Underscores: 48 | 49 | ___ 50 | 51 | ___ 52 | 53 | ___ 54 | 55 | ___ 56 | 57 | ___ 58 | 59 | _ _ _ 60 | 61 | _ _ _ 62 | 63 | _ _ _ 64 | 65 | _ _ _ 66 | 67 | _ _ _ 68 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/original/horizontal_rules.text: -------------------------------------------------------------------------------- 1 | Dashes: 2 | 3 | --- 4 | 5 | --- 6 | 7 | --- 8 | 9 | --- 10 | 11 | --- 12 | 13 | - - - 14 | 15 | - - - 16 | 17 | - - - 18 | 19 | - - - 20 | 21 | - - - 22 | 23 | 24 | Asterisks: 25 | 26 | *** 27 | 28 | *** 29 | 30 | *** 31 | 32 | *** 33 | 34 | *** 35 | 36 | * * * 37 | 38 | * * * 39 | 40 | * * * 41 | 42 | * * * 43 | 44 | * * * 45 | 46 | 47 | Underscores: 48 | 49 | ___ 50 | 51 | ___ 52 | 53 | ___ 54 | 55 | ___ 56 | 57 | ___ 58 | 59 | _ _ _ 60 | 61 | _ _ _ 62 | 63 | _ _ _ 64 | 65 | _ _ _ 66 | 67 | _ _ _ 68 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/gfm_tables.text: -------------------------------------------------------------------------------- 1 | | Heading 1 | Heading 2 2 | | --------- | --------- 3 | | Cell 1 | Cell 2 4 | | Cell 3 | Cell 4 5 | 6 | | Header 1 | Header 2 | Header 3 | Header 4 | 7 | | :------: | -------: | :------- | -------- | 8 | | Cell 1 | Cell 2 | Cell 3 | Cell 4 | 9 | | Cell 5 | Cell 6 | Cell 7 | Cell 8 | 10 | 11 | Test code 12 | 13 | Header 1 | Header 2 14 | -------- | -------- 15 | Cell 1 | Cell 2 16 | Cell 3 | Cell 4 17 | 18 | Header 1|Header 2|Header 3|Header 4 19 | :-------|:------:|-------:|-------- 20 | Cell 1 |Cell 2 |Cell 3 |Cell 4 21 | *Cell 5*|Cell 6 |Cell 7 |Cell 8 22 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/Setting.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models; 2 | 3 | import lombok.Builder; 4 | import lombok.Getter; 5 | import lombok.Setter; 6 | 7 | import javax.persistence.*; 8 | import java.io.Serializable; 9 | import java.util.Date; 10 | 11 | /** 12 | * A generic setting model 13 | * 14 | * @author Raysmond 15 | */ 16 | @Entity 17 | @Table(name = "settings") 18 | @Getter @Setter 19 | public class Setting extends BaseModel{ 20 | 21 | @Column(name = "_key", unique = true, nullable = false) 22 | private String key; 23 | 24 | @Lob 25 | @Column(name = "_value") 26 | private Serializable value; 27 | 28 | } 29 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/amps_and_angles_encoding.html: -------------------------------------------------------------------------------- 1 |AT&T has an ampersand in their name.
2 | 3 |AT&T is another way to write it.
4 | 5 |This & that.
6 | 7 |4 < 5.
8 | 9 |6 > 5.
10 | 11 |Here's a link with an ampersand in the URL.
12 | 13 |Here's a link with an amersand in the link text: AT&T.
14 | 15 |Here's an inline link.
16 | 17 |Here's an inline link.
18 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/error/NotFoundException.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.error; 2 | 3 | import org.springframework.http.HttpStatus; 4 | import org.springframework.web.bind.annotation.ResponseStatus; 5 | 6 | /** 7 | * @author Raysmond 8 | */ 9 | @ResponseStatus(value = HttpStatus.NOT_FOUND) 10 | public final class NotFoundException extends RuntimeException { 11 | private String message; 12 | 13 | public NotFoundException(){ 14 | 15 | } 16 | 17 | public NotFoundException(String message){ 18 | this.message = message; 19 | } 20 | 21 | @Override 22 | public String getMessage(){ 23 | return message; 24 | } 25 | } -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/to-markdown-3.1.0/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "to-markdown", 3 | "homepage": "https://github.com/domchristie/to-markdown", 4 | "authors": [ 5 | "Dom ChristieLink: http://example.com/.
2 | 3 |With an ampersand: http://example.com/?foo=1&bar=2
4 | 5 |12 |14 | 15 |Blockquoted: http://example.com/
13 |
Auto-links should not occur here: <http://example.com/>
or here: <http://example.com/>
18 |
19 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/to-markdown-3.1.0/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 4
4 |
5 | before_script:
6 | - npm install -g bower
7 | - bower install --dev
8 | - npm install --dev
9 |
10 | script:
11 | - npm test
12 | - testem ci --port 8080
13 |
14 | env:
15 | global:
16 | - secure: gPidjA+ITMh8LixuPvvf/haZXOiM4eLbixFZupkeUo8jHgiBDBCoytzOvrXlBOWFx5QEByr7t4Q/UOHVVFM5/eRykN0RxO7JUiiosU49WFPB6uFiTEqmZx3Kb8L2bG8SITvCoRJSLVi1JS9dX5bQeeLA5HD/me+9ak4Ef4A0rlk=
17 | - secure: PnHNOs9Ld/kO4qXhjxtE04j/zC0rgPMev5FpbTQ7gEqDGn1PBTfKWLAcbUpPkMO9hKADJvBCWU8+VCmPZ0Qk6nu6KKAAkvE5acpwM3yeLckgzVxeAncxS9mvGSTNRv9EHbxIN9g8Jo1FtN0UhY9Y23xq8MxyDC0ManeLin7Q6qs=
18 |
--------------------------------------------------------------------------------
/src/main/resources/application-mysql.yml:
--------------------------------------------------------------------------------
1 | server:
2 | port: 9000
3 | contextPath:
4 |
5 | spring:
6 | profiles:
7 | active: dev
8 |
9 | thymeleaf:
10 | cache: false
11 |
12 | jade4j:
13 | caching: false
14 |
15 | dataSource:
16 | driverClassName: com.mysql.cj.jdbc.Driver
17 | url: jdbc:mysql://mysql/spring_blog?serverTimezone=UTC
18 | username: root
19 | password: 123456
20 |
21 | hibernate:
22 | dialect: org.hibernate.dialect.MySQLDialect
23 | hbm2ddl.auto: update
24 | show_sql: false
25 |
26 | redis:
27 | host: localhost
28 | port: 6379
29 | default_expire_time: 86400
30 |
31 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/original/auto_links.html:
--------------------------------------------------------------------------------
1 | Link: http://example.com/.
2 | 3 |With an ampersand: http://example.com/?foo=1&bar=2
4 | 5 |12 |14 | 15 |Blockquoted: http://example.com/
13 |
Auto-links should not occur here: <http://example.com/>
or here: <http://example.com/>
18 |
19 |
--------------------------------------------------------------------------------
/src/main/java/com/raysmond/blog/models/support/PostType.java:
--------------------------------------------------------------------------------
1 | package com.raysmond.blog.models.support;
2 |
3 | /**
4 | * @author Raysmond
5 | */
6 | public enum PostType {
7 | PAGE("Page"),
8 | POST("Post");
9 |
10 | private String name;
11 |
12 | PostType(String name){
13 | this.name = name;
14 | }
15 |
16 | public String getName() {
17 | return name;
18 | }
19 |
20 | public void setName(String name) {
21 | this.name = name;
22 | }
23 |
24 | public String getId(){
25 | return name();
26 | }
27 |
28 | @Override
29 | public String toString() {
30 | return getName();
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/src/main/java/com/raysmond/blog/repositories/UserRepository.java:
--------------------------------------------------------------------------------
1 | package com.raysmond.blog.repositories;
2 |
3 | import com.raysmond.blog.models.User;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 | import org.springframework.data.repository.CrudRepository;
6 | import org.springframework.stereotype.Repository;
7 | import org.springframework.transaction.annotation.Transactional;
8 |
9 | import java.util.List;
10 |
11 | /**
12 | * @author Raysmond
13 | */
14 | @Repository
15 | @Transactional
16 | public interface UserRepository extends JpaRepositoryhello world 2 | how are you 3 | how are you
4 | 5 |hello world
6 |how are you
7 |
8 | hello world
9 |hello world
12 |hello world
15 |hello world
18 |19 | 20 |how are you
hello world
21 |hello world
24 |hello world 27 | how are you
28 | 29 |hello world 30 |
31 | 32 |hello
35 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/toplevel_paragraphs.gfm.html: -------------------------------------------------------------------------------- 1 |hello world 2 | how are you 3 | how are you
4 | 5 |hello world
6 |how are you
7 |
8 | hello world
9 |hello world
12 |hello world
15 |hello world
18 |19 | 20 |how are you
hello world
21 |hello world
24 |hello world 27 | how are you
28 | 29 |hello world 30 |
31 | 32 |hello
35 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/forms/SettingsForm.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.forms; 2 | 3 | import lombok.Data; 4 | import org.hibernate.validator.constraints.NotEmpty; 5 | 6 | import javax.validation.constraints.NotNull; 7 | 8 | /** 9 | * @author Raysmond 10 | */ 11 | @Data 12 | public class SettingsForm { 13 | 14 | @NotEmpty 15 | @NotNull 16 | private String siteName; 17 | 18 | @NotNull 19 | private String siteSlogan; 20 | 21 | @NotNull 22 | private Integer pageSize; 23 | 24 | @NotNull 25 | private String storagePath; 26 | 27 | @NotNull 28 | private String mainUri; 29 | 30 | @NotNull 31 | private String telegramMasterChatId; 32 | 33 | @NotNull 34 | private String subscriptionLink; 35 | } 36 | -------------------------------------------------------------------------------- /src/main/java/com/raysmond/blog/models/Like.java: -------------------------------------------------------------------------------- 1 | package com.raysmond.blog.models; 2 | 3 | import lombok.Getter; 4 | import lombok.Setter; 5 | 6 | import javax.persistence.Column; 7 | import javax.persistence.Entity; 8 | import javax.persistence.ManyToOne; 9 | import javax.persistence.Table; 10 | 11 | @Entity 12 | @Table(name = "posts_likes") 13 | @Getter @Setter 14 | public class Like extends BaseModel { 15 | 16 | @ManyToOne 17 | private User user; 18 | 19 | @ManyToOne 20 | private Post post; 21 | 22 | @Column(nullable = false) 23 | private Integer sympathy; 24 | 25 | @Column(nullable = false) 26 | private String clientIp; 27 | 28 | @Column(nullable = false, columnDefinition = "boolean default false") 29 | private Boolean isAdmin; 30 | 31 | } 32 | -------------------------------------------------------------------------------- /src/main/resources/resources/vendors/marked-0.3.6/test/tests/horizontal_rules.html: -------------------------------------------------------------------------------- 1 |Dashes:
2 | 3 |---
12 |
13 |
14 | - - -
23 |
24 |
25 | Asterisks:
26 | 27 |***
36 |
37 |
38 | * * *
47 |
48 |
49 | Underscores:
50 | 51 |___
60 |
61 |
62 | _ _ _
71 |
72 |
--------------------------------------------------------------------------------
/src/main/resources/templates/users/signin.jade:
--------------------------------------------------------------------------------
1 | extends ../layout/app
2 |
3 | block page_title
4 | h1 Admin Signin
5 |
6 | block content
7 | .row
8 | .col-md-4.col-md-offset-4.login-container
9 | .login-panel
10 | form.signin-form(method="post",action="/authenticate")
11 | input(type="hidden", name='_csrf', value='#{_csrf.token}')
12 | input.form-control(type="text",name="username",placeholder="Email")
13 | input.form-control(type="password",name="password",placeholder="Password")
14 | div.col-centered(style="padding-top: 10px;")
15 | input(type="checkbox",name="remember-me")
16 | span(style="padding-left: 10px")
17 | | remember me
18 | button.btn.btn-primary.btn-block(type="submit") Login
19 |
20 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/simditor-markdown/styles/simditor-markdown.css:
--------------------------------------------------------------------------------
1 | .simditor .markdown-editor {
2 | display: none;
3 | }
4 | .simditor .markdown-editor textarea {
5 | display: block;
6 | width: 100%;
7 | min-height: 200px;
8 | box-sizing: border-box;
9 | padding: 22px 15px 40px;
10 | border: none;
11 | border-bottom: 1px solid #dfdfdf;
12 | resize: none;
13 | outline: none;
14 | font-size: 16px;
15 | }
16 | .simditor.simditor-markdown .markdown-editor {
17 | display: block;
18 | }
19 | .simditor.simditor-markdown .simditor-body {
20 | min-height: 100px;
21 | background: #f3f3f3;
22 | }
23 | .simditor.simditor-markdown .simditor-placeholder {
24 | display: none !important;
25 | }
26 | .simditor .simditor-toolbar .toolbar-item.toolbar-item-markdown .simditor-icon {
27 | font-size: 18px;
28 | }
29 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/original/horizontal_rules.html:
--------------------------------------------------------------------------------
1 | Dashes:
2 | 3 |---
12 |
13 |
14 | - - -
23 |
24 |
25 | Asterisks:
26 | 27 |***
36 |
37 |
38 | * * *
47 |
48 |
49 | Underscores:
50 | 51 |___
60 |
61 |
62 | _ _ _
71 |
72 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/new/gfm_code_hr_list.text:
--------------------------------------------------------------------------------
1 | ## foo
2 |
3 | 1. bar:
4 |
5 | > - one
6 | - two
7 | - three
8 | - four
9 | - five
10 |
11 | 1. foo:
12 |
13 | ```
14 | line 1
15 | line 2
16 | ```
17 |
18 | 1. foo:
19 |
20 | 1. foo `bar` bar:
21 |
22 | ``` erb
23 | some code here
24 | ```
25 |
26 | 2. foo `bar` bar:
27 |
28 | ``` erb
29 | foo
30 | ---
31 | bar
32 | ---
33 | foo
34 | bar
35 | ```
36 |
37 | 3. foo `bar` bar:
38 |
39 | ``` html
40 | ---
41 | foo
42 | foo
43 | ---
44 | bar
45 | ```
46 |
47 | 4. foo `bar` bar:
48 |
49 | foo
50 | ---
51 | bar
52 |
53 | 5. foo
54 |
--------------------------------------------------------------------------------
/src/main/resources/resources/vendors/marked-0.3.6/test/tests/gfm_code_hr_list.text:
--------------------------------------------------------------------------------
1 | ## foo
2 |
3 | 1. bar:
4 |
5 | > - one
6 | - two
7 | - three
8 | - four
9 | - five
10 |
11 | 1. foo:
12 |
13 | ```
14 | line 1
15 | line 2
16 | ```
17 |
18 | 1. foo:
19 |
20 | 1. foo `bar` bar:
21 |
22 | ``` erb
23 | some code here
24 | ```
25 |
26 | 2. foo `bar` bar:
27 |
28 | ``` erb
29 | foo
30 | ---
31 | bar
32 | ---
33 | foo
34 | bar
35 | ```
36 |
37 | 3. foo `bar` bar:
38 |
39 | ``` html
40 | ---
41 | foo
42 | foo
43 | ---
44 | bar
45 | ```
46 |
47 | 4. foo `bar` bar:
48 |
49 | foo
50 | ---
51 | bar
52 |
53 | 5. foo
54 |
--------------------------------------------------------------------------------
/src/main/java/com/raysmond/blog/utils/PaginatorUtil.java:
--------------------------------------------------------------------------------
1 | package com.raysmond.blog.utils;
2 |
3 | import java.util.ArrayList;
4 | import java.util.List;
5 |
6 | /**
7 | * Created by bvn13 on 11.12.2017.
8 | */
9 | public class PaginatorUtil {
10 |
11 | public static Listhello 3 | world
4 | 5 |how 6 | are
better behavior:
13 | 14 |hello
world 15 | how
are 16 | you
today
hello
world
world
hi
world
39 | 40 |how
how
50 | 51 |are
world
how
60 | 61 |are
hello 3 | world
4 | 5 |how 6 | are
better behavior:
13 | 14 |hello
world 15 | how
are 16 | you
today
hello
world
world
hi
world
39 | 40 |how
how
50 | 51 |are
world
how
60 | 61 |are
bar:
4 |5 |17 |6 |
16 |- one
15 |7 |
14 |- two
13 |8 |
12 |- three
9 |- four
10 |- five
11 |
foo:
19 | line 1
20 | line 2
21 | foo:
23 |foo bar bar:
some code here
26 |
27 | foo bar bar:
foo
30 | ---
31 | bar
32 | ---
33 | foo
34 | bar
35 | foo bar bar:
---
38 | foo
39 | foo
40 | ---
41 | bar
42 | foo bar bar:
foo
45 | ---
46 | bar
47 | foo
49 |bar:
4 |5 |17 |6 |
16 |- one
15 |7 |
14 |- two
13 |8 |
12 |- three
9 |- four
10 |- five
11 |
foo:
19 | line 1
20 | line 2
21 | foo:
23 |foo bar bar:
some code here
26 |
27 | foo bar bar:
foo
30 | ---
31 | bar
32 | ---
33 | foo
34 | bar
35 | foo bar bar:
---
38 | foo
39 | foo
40 | ---
41 | bar
42 | foo bar bar:
foo
45 | ---
46 | bar
47 | foo
49 |Here's a simple block:
2 | 3 |This should be a code block, though:
8 | 9 |<div>
10 | foo
11 | </div>
12 |
13 |
14 | As should this:
15 | 16 |<div>foo</div>
17 |
18 |
19 | Now, nested:
20 | 21 |This should just be an HTML comment:
30 | 31 | 32 | 33 |Multiline:
34 | 35 | 39 | 40 |Code block:
41 | 42 |<!-- Comment -->
43 |
44 |
45 | Just plain comment, with trailing spaces on the line:
46 | 47 | 48 | 49 |Code:
50 | 51 |<hr />
52 |
53 |
54 | Hr's:
55 | 56 |Here's a simple block:
2 | 3 |This should be a code block, though:
8 | 9 |<div>
10 | foo
11 | </div>
12 |
13 |
14 | As should this:
15 | 16 |<div>foo</div>
17 |
18 |
19 | Now, nested:
20 | 21 |This should just be an HTML comment:
30 | 31 | 32 | 33 |Multiline:
34 | 35 | 39 | 40 |Code block:
41 | 42 |<!-- Comment -->
43 |
44 |
45 | Just plain comment, with trailing spaces on the line:
46 | 47 | 48 | 49 |Code:
50 | 51 |<hr>
52 |
53 |
54 | Hr's:
55 | 56 |