index.html 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <title>Radicale Web Interface</title>
  8. <link href="css/main.css" type="text/css" media="screen" rel="stylesheet">
  9. <link href="css/icon.png" type="image/png" rel="icon">
  10. <style>.hidden {display: none !important;}</style>
  11. <script src="fn.js"></script>
  12. </head>
  13. <body>
  14. <nav id="logoutview" class="hidden">
  15. <span data-name="user" style="word-wrap:break-word;"></span>
  16. <a href="#" class="green" data-name="refresh" title="Refresh">Refresh</a>
  17. <a href="#" class="red" data-name="logout" title="Logout">Logout</a>
  18. </nav>
  19. <main>
  20. <section id="loadingscene">
  21. <img src="css/loading.svg" alt="Loading..." class="loading">
  22. <h2>Loading</h2>
  23. <p>Please wait...</p>
  24. <noscript>JavaScript is required</noscript>
  25. </section>
  26. <section id="loginscene" class="container hidden">
  27. <div class="logocontainer">
  28. <img src="css/logo.svg" alt="Radicale">
  29. </div>
  30. <h1>Sign in</h1>
  31. <br>
  32. <form data-name="form">
  33. <input data-name="user" type="text" placeholder="Username">
  34. <input data-name="password" type="password" placeholder="Password">
  35. <button class="green" type="submit">Next</button>
  36. <span class="error" data-name="error"></span>
  37. </form>
  38. </section>
  39. <section id="collectionsscene" class="hidden">
  40. <div class="fabcontainer">
  41. <a href="" class="green" data-name="new" title="Create a new addressbook or calendar">
  42. <img src="css/icons/new.svg" class="icon" alt="➕">
  43. </a>
  44. <a href="" class="blue" data-name="upload" title="Upload an addressbook or calendar">
  45. <img src="css/icons/upload.svg" class="icon" alt="⬆️">
  46. </a>
  47. </div>
  48. <article data-name="collectiontemplate" class="hidden">
  49. <div class="colorbar" data-name="color"></div>
  50. <h3 class="title" data-name="title">Title</h3>
  51. <small>
  52. <span data-name="ADDRESSBOOK">Address book</span>
  53. <span data-name="CALENDAR_JOURNAL_TASKS">Calendar, journal and tasks</span>
  54. <span data-name="CALENDAR_JOURNAL">Calendar and journal</span>
  55. <span data-name="CALENDAR_TASKS">Calendar and tasks</span>
  56. <span data-name="JOURNAL_TASKS">Journal and tasks</span>
  57. <span data-name="CALENDAR">Calendar</span>
  58. <span data-name="JOURNAL">Journal</span>
  59. <span data-name="TASKS">Tasks</span>
  60. <span data-name="WEBCAL">Webcal</span>
  61. </small>
  62. <small data-name="contentcount"></small>
  63. <input type="text" data-name="url" value="" readonly="" onfocus="this.setSelectionRange(0, 99999);">
  64. <p data-name="description" style="word-wrap:break-word;">Description</p>
  65. <ul>
  66. <li>
  67. <a href="" title="Download" class="green" data-name="download">
  68. <img src="css/icons/download.svg" class="icon" alt="🔗">
  69. </a>
  70. </li>
  71. <li>
  72. <a href="" title="Edit" class="blue" data-name="edit">
  73. <img src="css/icons/edit.svg" class="icon" alt="✏️">
  74. </a>
  75. </li>
  76. <li>
  77. <a href="" title="Delete" class="red" data-name="delete">
  78. <img src="css/icons/delete.svg" class="icon" alt="❌">
  79. </a>
  80. </li>
  81. </ul>
  82. </article>
  83. </section>
  84. <section id="editcollectionscene" class="container hidden">
  85. <h1>Edit Collection</h1>
  86. <p>Editing collection <span class="title" data-name="title">title</span>
  87. </p>
  88. <form> Type: <br>
  89. <select data-name="type">
  90. <option value="ADDRESSBOOK">addressbook</option>
  91. <option value="CALENDAR_JOURNAL_TASKS">calendar, journal and tasks</option>
  92. <option value="CALENDAR_JOURNAL">calendar and journal</option>
  93. <option value="CALENDAR_TASKS">calendar and tasks</option>
  94. <option value="JOURNAL_TASKS">journal and tasks</option>
  95. <option value="CALENDAR">calendar</option>
  96. <option value="JOURNAL">journal</option>
  97. <option value="TASKS">tasks</option>
  98. <option value="WEBCAL">webcal</option>
  99. </select>
  100. <label for="displayname">Title:</label>
  101. <input data-name="displayname" type="text">
  102. <label for="description">Description:</label>
  103. <input data-name="description" type="text">
  104. <label for="source">Source:</label>
  105. <input data-name="source" type="url">
  106. <label for="color">Color:</label>
  107. <input data-name="color" type="color">
  108. <br>
  109. <span class="error hidden" data-name="error"></span>
  110. <br>
  111. <button type="submit" class="green" data-name="submit">Save</button>
  112. <button type="button" class="red" data-name="cancel">Cancel</button>
  113. </form>
  114. </section>
  115. <section id="createcollectionscene" class="container hidden">
  116. <h1>Create a new Collection</h1>
  117. <p>Enter the details of your new collection.</p>
  118. <form> Type: <br>
  119. <select data-name="type">
  120. <option value="ADDRESSBOOK">Address book</option>
  121. <option value="CALENDAR_JOURNAL_TASKS">Calendar, journal and tasks</option>
  122. <option value="CALENDAR_JOURNAL">Calendar and journal</option>
  123. <option value="CALENDAR_TASKS">Calendar and tasks</option>
  124. <option value="JOURNAL_TASKS">Journal and tasks</option>
  125. <option value="CALENDAR">Calendar</option>
  126. <option value="JOURNAL">Journal</option>
  127. <option value="TASKS">Tasks</option>
  128. <option value="WEBCAL">Webcal</option>
  129. </select>
  130. <label for="href">HREF:</label>
  131. <input data-name="href" type="text">
  132. <label for="displayname">Title:</label>
  133. <input data-name="displayname" type="text">
  134. <label for="description">Description:</label>
  135. <input data-name="description" type="text">
  136. <label for="source">Source:</label>
  137. <input data-name="source" type="url">
  138. <label for="color">Color:</label>
  139. <input data-name="color" type="color">
  140. <br>
  141. <span class="error" data-name="error"></span>
  142. <br>
  143. <button type="submit" class="green" data-name="submit">Create</button>
  144. <button type="button" class="red" data-name="cancel">Cancel</button>
  145. </form>
  146. </section>
  147. <section id="uploadcollectionscene" class="container hidden">
  148. <h1>Upload Collection</h1>
  149. <ul>
  150. <li data-name="filetemplate" class="hidden"> Uploading <span data-name="name">name</span>
  151. <br>
  152. <span class="successmessage" data-name="success">Uploaded Successfully!</span>
  153. <span class="error" data-name="error"></span>
  154. </li>
  155. </ul>
  156. <div data-name="pending" class="hidden">
  157. <img src="css/loading.svg" class="loading" alt="Please wait..."/>
  158. </div>
  159. <form>
  160. <label for="uploadfile">File:</label>
  161. <input data-name="uploadfile" type="file" accept=".ics, .vcf" multiple>
  162. <label for="href">HREF:</label>
  163. <input data-name="href" type="text">
  164. <small data-name="hreflimitmsg" class="hidden">You can only specify the HREF if you upload 1 file.</small>
  165. <button type="submit" class="green" data-name="submit">Upload</button>
  166. <button type="button" class="red" data-name="close">Close</button>
  167. </form>
  168. </section>
  169. <section id="deletecollectionscene" class="container hidden">
  170. <h1>Delete Collection</h1>
  171. <p>To delete the collection <span class="title" data-name="title">title</span> please enter the phrase <strong data-name="deleteconfirmationtext"></strong> in the box below:</p>
  172. <input type="text" class="deleteconfirmationtxt" data-name="confirmationtxt" />
  173. <p class="red">WARNING: This action cannot be reversed.</p>
  174. <form>
  175. <button type="button" class="red" data-name="delete">Delete</button>
  176. <button type="button" class="blue" data-name="cancel">Cancel</button>
  177. </form>
  178. <span class="error hidden" data-name="error"></span>
  179. <br>
  180. </section>
  181. </main>
  182. </body>
  183. </html>