Add Setting to check for and import legacy subscriptions

This commit is contained in:
Preston 2020-10-08 17:35:36 -04:00
parent 1e1d0164f0
commit ffeefe25e0
3 changed files with 92 additions and 73 deletions

View File

@ -95,24 +95,7 @@ export default Vue.extend({
} }
}, },
importFreeTubeSubscriptions: function () { handleFreetubeImportFile: function (filePath) {
const options = {
properties: ['openFile'],
filters: [
{
name: 'Database File',
extensions: ['db']
}
]
}
dialog.showOpenDialog(options).then((response) => {
if (response.canceled || response.filePaths.length === 0) {
return
}
const filePath = response.filePaths[0]
fs.readFile(filePath, async (err, data) => { fs.readFile(filePath, async (err, data) => {
if (err) { if (err) {
const message = this.$t('Settings.Data Settings.Unable to read file') const message = this.$t('Settings.Data Settings.Unable to read file')
@ -185,6 +168,26 @@ export default Vue.extend({
message: this.$t('Settings.Data Settings.All subscriptions and profiles have been successfully imported') message: this.$t('Settings.Data Settings.All subscriptions and profiles have been successfully imported')
}) })
}) })
},
importFreeTubeSubscriptions: function () {
const options = {
properties: ['openFile'],
filters: [
{
name: 'Database File',
extensions: ['db']
}
]
}
dialog.showOpenDialog(options).then((response) => {
if (response.canceled || response.filePaths.length === 0) {
return
}
const filePath = response.filePaths[0]
this.handleFreetubeImportFile(filePath)
}) })
}, },
@ -624,6 +627,17 @@ export default Vue.extend({
}) })
}, },
checkForLegacySubscriptions: function () {
let dbLocation = app.getPath('userData')
dbLocation = dbLocation + '/subscriptions.db'
this.handleFreetubeImportFile(dbLocation)
fs.unlink(dbLocation, (err) => {
if (err) {
console.log(err)
}
})
},
importHistory: function () { importHistory: function () {
const options = { const options = {
properties: ['openFile'], properties: ['openFile'],

View File

@ -10,6 +10,10 @@
:label="$t('Settings.Data Settings.Import Subscriptions')" :label="$t('Settings.Data Settings.Import Subscriptions')"
@click="showImportSubscriptionsPrompt = true" @click="showImportSubscriptionsPrompt = true"
/> />
<ft-button
:label="$t('Settings.Data Settings.Check for Legacy Subscriptions')"
@click="checkForLegacySubscriptions"
/>
<ft-button <ft-button
:label="$t('Settings.Data Settings.Export Subscriptions')" :label="$t('Settings.Data Settings.Export Subscriptions')"
@click="showExportSubscriptionsPrompt = true" @click="showExportSubscriptionsPrompt = true"

View File

@ -217,6 +217,7 @@ Settings:
Import FreeTube: Import FreeTube Import FreeTube: Import FreeTube
Import YouTube: Import YouTube Import YouTube: Import YouTube
Import NewPipe: Import NewPipe Import NewPipe: Import NewPipe
Check for Legacy Subscriptions: Check for Legacy Subscriptions
Export Subscriptions: Export Subscriptions Export Subscriptions: Export Subscriptions
Export FreeTube: Export FreeTube Export FreeTube: Export FreeTube
Export YouTube: Export YouTube Export YouTube: Export YouTube