custom_validation.html 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0" />
  6. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css">
  7. <link rel="stylesheet" href="../../css/froala_editor.css">
  8. <link rel="stylesheet" href="../../css/froala_style.css">
  9. <link rel="stylesheet" href="../../css/plugins/code_view.css">
  10. <link rel="stylesheet" href="../../css/plugins/colors.css">
  11. <link rel="stylesheet" href="../../css/plugins/emoticons.css">
  12. <link rel="stylesheet" href="../../css/plugins/image_manager.css">
  13. <link rel="stylesheet" href="../../css/plugins/image.css">
  14. <link rel="stylesheet" href="../../css/plugins/line_breaker.css">
  15. <link rel="stylesheet" href="../../css/plugins/table.css">
  16. <link rel="stylesheet" href="../../css/plugins/char_counter.css">
  17. <link rel="stylesheet" href="../../css/plugins/video.css">
  18. <link rel="stylesheet" href="../../css/plugins/fullscreen.css">
  19. <link rel="stylesheet" href="../../css/plugins/file.css">
  20. <link rel="stylesheet" href="../../css/plugins/quick_insert.css">
  21. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.3.0/codemirror.min.css">
  22. <style>
  23. body {
  24. text-align: center;
  25. }
  26. div#editor {
  27. width: 81%;
  28. margin: auto;
  29. text-align: left;
  30. }
  31. </style>
  32. </head>
  33. <body>
  34. <div id="editor">
  35. <div id='edit' style="margin-top: 30px;">
  36. <h1>Custom Link Validation</h1>
  37. <p>It is possible to define your own link validation method. If you insert a link in the editor that contains
  38. <strong>google</strong> string then it won't be allowed.</p>
  39. </div>
  40. </div>
  41. <script type="text/javascript"
  42. src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.3.0/codemirror.min.js"></script>
  43. <script type="text/javascript"
  44. src="https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.3.0/mode/xml/xml.min.js"></script>
  45. <script type="text/javascript" src="../../js/froala_editor.min.js"></script>
  46. <script type="text/javascript" src="../../js/plugins/align.min.js"></script>
  47. <script type="text/javascript" src="../../js/plugins/char_counter.min.js"></script>
  48. <script type="text/javascript" src="../../js/plugins/code_beautifier.min.js"></script>
  49. <script type="text/javascript" src="../../js/plugins/code_view.min.js"></script>
  50. <script type="text/javascript" src="../../js/plugins/colors.min.js"></script>
  51. <script type="text/javascript" src="../../js/plugins/draggable.min.js"></script>
  52. <script type="text/javascript" src="../../js/plugins/emoticons.min.js"></script>
  53. <script type="text/javascript" src="../../js/plugins/entities.min.js"></script>
  54. <script type="text/javascript" src="../../js/plugins/file.min.js"></script>
  55. <script type="text/javascript" src="../../js/plugins/font_size.min.js"></script>
  56. <script type="text/javascript" src="../../js/plugins/font_family.min.js"></script>
  57. <script type="text/javascript" src="../../js/plugins/fullscreen.min.js"></script>
  58. <script type="text/javascript" src="../../js/plugins/image.min.js"></script>
  59. <script type="text/javascript" src="../../js/plugins/image_manager.min.js"></script>
  60. <script type="text/javascript" src="../../js/plugins/line_breaker.min.js"></script>
  61. <script type="text/javascript" src="../../js/plugins/inline_style.min.js"></script>
  62. <script type="text/javascript" src="../../js/plugins/link.min.js"></script>
  63. <script type="text/javascript" src="../../js/plugins/lists.min.js"></script>
  64. <script type="text/javascript" src="../../js/plugins/paragraph_format.min.js"></script>
  65. <script type="text/javascript" src="../../js/plugins/paragraph_style.min.js"></script>
  66. <script type="text/javascript" src="../../js/plugins/quick_insert.min.js"></script>
  67. <script type="text/javascript" src="../../js/plugins/quote.min.js"></script>
  68. <script type="text/javascript" src="../../js/plugins/table.min.js"></script>
  69. <script type="text/javascript" src="../../js/plugins/save.min.js"></script>
  70. <script type="text/javascript" src="../../js/plugins/url.min.js"></script>
  71. <script type="text/javascript" src="../../js/plugins/video.min.js"></script>
  72. <script>
  73. const editorInstance = new FroalaEditor('#edit', {
  74. events: {
  75. 'link.beforeInsert': function (link, text, attrs) {
  76. console.log(link)
  77. if (link.indexOf('google') >= 0) {
  78. alert('No google link is allowed!')
  79. return false
  80. }
  81. }
  82. }
  83. })
  84. </script>
  85. </body>
  86. </html>