Merge branch 'akhilrex:master' into master

pull/279/head
kucksdorfs 4 years ago committed by GitHub
commit ab13510920
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -14,7 +14,7 @@
</a> -->
<h1 align="center" style="margin-bottom:0px">Podgrab</h1>
<p align="center">Current Version -2021.08.25</p>
<p align="center">Current Version -2021.10.01</p>
<p align="center">
A self-hosted podcast manager to download episodes as soon as they become live

@ -67,7 +67,7 @@
class="u-full-width"
src="/podcastitems/{{.ID}}/image"
alt="{{ .Title }}"
lazy="lazy"
loading="lazy"
/>
</div>
<div class="columns ten">

@ -125,7 +125,7 @@
class="u-full-width"
:src=" getEpisodeImage(item)"
v-bind:alt="item.Title"
lazy="lazy"
loading="lazy"
/>
</div>
<div class="columns ten">

@ -327,7 +327,7 @@
<td>${ detailPodcast.Author }</td>
</tr>
<tr>
<td>Url</td>
<td>Original Url</td>
<td> <a target="_blank" :href="detailPodcast.URL">Link</a></td>
</tr>
@ -347,6 +347,10 @@
<td>Paused</td>
<td> ${ detailPodcast.IsPaused?'Yes':'No' }</td>
</tr>
<tr>
<td>Podgrab Feed</td>
<td> <a target="_blank" :href="'/podcasts/'+detailPodcast.ID+'/rss'">Link</a></td>
</tr>
</table>
</Modal>

@ -953,21 +953,12 @@ div#large-visualization{
"autoplay": true,
"volume":volume,
"callbacks": {
// 'song_change':function(){
// song = Amplitude.getActiveSongMetadata();
// if(self.songLoaded.indexOf(song.id)!==-1){
// return;
// }
// time= self.getSavedSongTime();
// console.log('change',time)
// if(time>0){
// self.songLoaded.push(song.id);
// Amplitude.skipTo(time,song.index);
// setTimeout(() => {
// self.songLoaded=self.songLoaded.splice(self.songLoaded.indexOf(song.id),1)
// }, 500);
// }
// },
'song_change':function(){
if(localStorage && localStorage.playerVolume){
volume=parseInt(localStorage.playerVolume)
Amplitude.setVolume(volume);
}
},
'timeupdate':function(){
var secs=Math.floor(Amplitude.getSongPlayedSeconds());

@ -132,7 +132,7 @@
<table>
<tr>
<td>Current Version</td>
<td> 2021.08.25</td>
<td> 2021.10.01</td>
</tr>
<tr>
<td>Website</td>

@ -487,6 +487,28 @@ func createRss(items []db.PodcastItem, title, description string, c *gin.Context
}
}
func GetRssForPodcastById(c *gin.Context) {
var searchByIdQuery SearchByIdQuery
if c.ShouldBindUri(&searchByIdQuery) == nil {
var podcast db.Podcast
err:=db.GetPodcastById(searchByIdQuery.Id,&podcast)
if err != nil {
c.JSON(http.StatusBadRequest, gin.H{"error": "Invalid request"})
}
var podIds []string
podIds = append(podIds, searchByIdQuery.Id)
items := *service.GetAllPodcastItemsByPodcastIds(podIds)
description := podcast.Summary
title := podcast.Title
if err == nil {
c.XML(200, createRss(items, title, description, c))
}
} else {
c.JSON(http.StatusBadRequest, gin.H{"error": "Invalid request"})
}
}
func GetRssForTagById(c *gin.Context) {
var searchByIdQuery SearchByIdQuery
if c.ShouldBindUri(&searchByIdQuery) == nil {

@ -159,6 +159,7 @@ func main() {
router.DELETE("/podcasts/:id/podcast", controllers.DeleteOnlyPodcastById)
router.GET("/podcasts/:id/pause", controllers.PausePodcastById)
router.GET("/podcasts/:id/unpause", controllers.UnpausePodcastById)
router.GET("/podcasts/:id/rss", controllers.GetRssForPodcastById)
router.GET("/podcastitems", controllers.GetAllPodcastItems)
router.GET("/podcastitems/:id", controllers.GetPodcastItemById)

@ -377,6 +377,10 @@ func createConfigFolderIfNotExists(folder string) string {
return createFolder(folder, dataPath)
}
func deletePodcastFolder(folder string) error {
return os.RemoveAll(createDataFolderIfNotExists(folder))
}
func getFileName(link string, title string, defaultExtension string) string {
fileUrl, err := url.Parse(link)
checkError(err)

@ -676,6 +676,12 @@ func DeletePodcast(id string, deleteFiles bool) error {
db.DeletePodcastItemById(item.ID)
}
err = deletePodcastFolder(podcast.Title)
if err != nil {
return err
}
err = db.DeletePodcastById(id)
if err != nil {
return err

Loading…
Cancel
Save