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.

77 lines
2.0 KiB

  1. <template lang='pug'>
  2. v-card.wiki-form
  3. v-toolbar(flat, color='primary', dark, dense)
  4. .subtitle-1 {{ $t('admin:utilities.importv1Title') }}
  5. v-card-text
  6. .text-xs-center
  7. img.animated.fadeInUp.wait-p1s(src='/svg/icon-software.svg')
  8. .body-2 Import from Wiki.js 1.x
  9. v-divider.my-4
  10. .body-1 Data from a Wiki.js 1.x installation can be imported easily using this tool. What do you want to import?
  11. v-checkbox(
  12. label='Content'
  13. value='content'
  14. color='deep-orange darken-2'
  15. v-model='importFilters'
  16. hide-details
  17. )
  18. v-checkbox(
  19. label='Uploads'
  20. value='uploads'
  21. color='deep-orange darken-2'
  22. v-model='importFilters'
  23. hide-details
  24. )
  25. v-checkbox(
  26. label='Users'
  27. value='users'
  28. color='deep-orange darken-2'
  29. v-model='importFilters'
  30. hide-details
  31. )
  32. v-divider.my-3
  33. v-text-field.mt-3(
  34. outline
  35. label='MongoDB Connection String'
  36. hint='The connection string to connect to the Wiki.js 1.x MongoDB database.'
  37. persistent-hint
  38. v-model='dbConnStr'
  39. v-if='needDB'
  40. )
  41. v-text-field.mt-3(
  42. outline
  43. label='Content Repo Path'
  44. hint='The full path to where the Wiki.js 1.x content is stored on disk.'
  45. persistent-hint
  46. v-model='contentPath'
  47. v-if='needDisk'
  48. )
  49. v-card-chin
  50. v-btn(depressed, color='deep-orange darken-2', :disabled='!needDB && !needDisk').ml-0
  51. v-icon(left, color='white') label_important
  52. span.white--text Start Import
  53. </template>
  54. <script>
  55. export default {
  56. data() {
  57. return {
  58. importFilters: ['content', 'uploads'],
  59. dbConnStr: 'mongodb://',
  60. contentPath: '/wiki-v1/repo'
  61. }
  62. },
  63. computed: {
  64. needDB() {
  65. return this.importFilters.indexOf('users') >= 0
  66. },
  67. needDisk() {
  68. return this.importFilters.indexOf('content') >= 0 || this.importFilters.indexOf('uploads') >= 0
  69. }
  70. }
  71. }
  72. </script>
  73. <style lang='scss'>
  74. </style>