Mirror of Quill
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

167 lines
7.3 KiB

  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <title>Quill Editor</title>
  5. <meta charset="utf-8">
  6. <link rel="pingback" href="https://webmention.io/aaronpk/xmlrpc" />
  7. <link rel="webmention" href="https://webmention.io/aaronpk/webmention" />
  8. <meta name="apple-mobile-web-app-capable" content="yes" />
  9. <!-- standard viewport tag to set the viewport to the device's width
  10. , Android 2.3 devices need this so 100% width works properly and
  11. doesn't allow children to blow up the viewport width-->
  12. <meta name="viewport" content="initial-scale=1.0,user-scalable=no,maximum-scale=1,width=device-width" />
  13. <!-- width=device-width causes the iPhone 5 to letterbox the app, so
  14. we want to exclude it for iPhone 5 to allow full screen apps -->
  15. <meta name="viewport" content="initial-scale=1.0,user-scalable=no,maximum-scale=1" media="(device-height: 568px)" />
  16. <link rel="stylesheet" href="/editor-files/medium-editor/css/medium-editor.min.css">
  17. <link rel="stylesheet" href="/editor-files/medium-editor/css/themes/default.min.css">
  18. <link rel="stylesheet" href="/editor-files/medium-editor/css/medium-editor-insert-plugin.min.css">
  19. <link rel="stylesheet" href="/editor-files/medium-editor/css/medium-editor-insert-plugin-frontend.min.css">
  20. <link href="/editor-files/font-awesome/css/font-awesome.css" rel="stylesheet">
  21. <script src="/editor-files/jquery-1.11.3.min.js"></script>
  22. <script src="/editor-files/jquery-ui-1.11.4.custom/jquery-ui.min.js"></script>
  23. <script src="/editor-files/jquery.fileupload.js"></script>
  24. <script src="/editor-files/jquery.iframetransport.js"></script>
  25. <script src="/editor-files/handlebars.min.js"></script>
  26. <script src="/editor-files/medium-editor/js/medium-editor.min.js"></script>
  27. <script src="/editor-files/medium-editor/js/medium-editor-insert-plugin.min.js"></script>
  28. <script src="/libs/localforage.js"></script>
  29. <script src="/libs/tokenfield/bootstrap-tokenfield.min.js"></script>
  30. <link rel="stylesheet" href="/libs/tokenfield/bootstrap-tokenfield.min.css">
  31. <link rel="stylesheet" href="/libs/tokenfield/tokenfield-typeahead.min.css">
  32. <link rel="stylesheet" href="/editor-files/style.css">
  33. <link rel="apple-touch-icon" sizes="57x57" href="/images/quill-icon-57.png">
  34. <link rel="apple-touch-icon" sizes="72x72" href="/images/quill-icon-72.png">
  35. <link rel="apple-touch-icon" sizes="114x114" href="/images/quill-icon-114.png">
  36. <link rel="apple-touch-icon" sizes="144x144" href="/images/quill-icon-144.png">
  37. <link rel="icon" href="/favicon.ico" type="image/x-icon">
  38. </head>
  39. <body>
  40. <div class="toolbar">
  41. <div class="toolbar-left">
  42. <span class="item"><a href="/"><img src="/editor-files/quill-logo-36.png" width="36" height="31" class="logo"></a></span>
  43. <?php if($this->user): ?>
  44. <span class="item text"><b><?= display_url($this->user->url) ?></b></span>
  45. <?php endif; ?>
  46. <span class="item text"><span id="draft-status">Draft</span></span>
  47. </div>
  48. <div class="toolbar-right">
  49. <button class="btn" id="publish_btn">Publish <i class="fa fa-caret-down"></i></button>
  50. <button class="btn" id="new_btn">New</button>
  51. </div>
  52. <div class="clear"></div>
  53. </div>
  54. <div class="micropub-html-warning hidden"><div>
  55. <button class="btn btn-default" id="micropub-html-btn">Upgrade me!</button>
  56. <b>Upcoming change!</b>
  57. The Micropub spec now requires HTML content be sent as a nested object, <code>content[html]=&lt;b&gt;example&lt;/b&gt;</code>.
  58. You can <a href="http://indiewebcamp.com/Micropub-brainstorming#HTML_Escaping">read more about the change here</a>.
  59. When you are ready to receive the content as an object, click the button to switch.
  60. </div></div>
  61. <div class="publish-dropdown hidden">
  62. <div class="arrow"></div>
  63. <div class="dropdown-content action-publish">
  64. <div style="float:right"><button class="btn btn-medium" id="publish-confirm">Publish Now</button></div>
  65. <div style="clear:right; margin-bottom: 4px;"></div>
  66. <table id="publish-fields">
  67. <tr>
  68. <td>Tags:</td>
  69. <td><input type="text" class="form-field-small" placeholder="" id="post-tags"></td>
  70. </tr>
  71. <tr>
  72. <td>Slug:</td>
  73. <td><input type="text" class="form-field-small" id="post-slug"></td>
  74. </tr>
  75. <tr>
  76. <td>Status:</td>
  77. <td>
  78. <select id="post-status" class="form-select-small">
  79. <option value="published">Published</option>
  80. <option value="draft">Draft</option>
  81. </select>
  82. <a href="/docs/post-status" class="small hidden" target="_blank" id="published-status-warning">read this first!</a>
  83. </td>
  84. </tr>
  85. <tr>
  86. <td>Syndication:</td>
  87. <td>
  88. <select id="post-syndicate" class="form-select-small">
  89. <option value="no">No</option>
  90. <option value="yes">Yes</option>
  91. </select>
  92. </td>
  93. </tr>
  94. <tr class="form-group">
  95. <td>
  96. <label for="note_syndicate-to"><a href="javascript:reload_syndications()">Reload</a></label></td>
  97. <td id="syndication-container">
  98. <?php
  99. if($this->syndication_targets) {
  100. echo '<ul>';
  101. foreach($this->syndication_targets as $syn) {
  102. echo '<li>'
  103. . '<button data-syndicate-to="'.(isset($syn['uid']) ? htmlspecialchars($syn['uid']) : htmlspecialchars($syn['target'])).'" class="btn btn-default btn-block">'
  104. . ($syn['favicon'] ? '<img src="'.htmlspecialchars($syn['favicon']).'" width="16" height="16"> ' : '')
  105. . htmlspecialchars($syn['target'])
  106. . '</button>'
  107. . '</li>';
  108. }
  109. echo '</ul>';
  110. }
  111. ?>
  112. </td>
  113. </tr>
  114. <tr>
  115. <td>Publish:</td>
  116. <td><input type="text" class="form-field-small" id="post-publish-date" value="now" placeholder="YYYY-MM-DD hh:mm:ss"></td>
  117. </tr>
  118. </table>
  119. <div class="helptext hidden" id="publish-in-progress">
  120. Posting... <!-- TODO replace this with a CSS animated spinner -->
  121. </div>
  122. <div class="helptext hidden" id="publish-success">
  123. <div><a href="" id="publish-success-url">View your post</a></div>
  124. </div>
  125. <div class="helptext hidden" id="publish-error">
  126. <div>Something went wrong! Below is the response from your Micropub endpoint.</div><br>
  127. <pre id="publish-error-debug"></pre>
  128. </div>
  129. </div>
  130. <div class="dropdown-content action-signin hidden">
  131. <div class="helptext">You need to sign in before you can publish! Don't worry, your draft will still be here when you finish signing in.</div>
  132. <input type="url" class="form-field-small" placeholder="yourdomain.com" id="signin-domain">
  133. <button class="btn btn-small" id="signin-btn">Sign In</button>
  134. <div class="helptext small"><a href="/docs">How does this work?</a></div>
  135. </div>
  136. </div>
  137. <div class="container">
  138. <input id="post-name" type="text" value="" placeholder="Title">
  139. <input id="post-description" type="text" value="" placeholder="Description">
  140. <input id="post-image" type="text" value="" placeholder="Banner Image">
  141. <div id="content" class="editable"></div>
  142. </div>
  143. <script src="/editor-files/editor.js"></script>
  144. <?= partial('partials/syndication-js') ?>
  145. </body>
  146. </html>