Hi Joseph, On Thu, Mar 15, 2012 at 11:53:48PM -0700, Joseph Wickremasinghe wrote: > Thanks for your suggestions. They all make sense, and your > explanations were clear. This first attempt was very much a 'brute > force' type approach since I didn't know how easy (or hard) it might > be. Hence the changes to the model & db schema. Now I can go back and > polish it up. :) Sounds good! Please keep us updated in bug 1579. > I'm still not sure how to customize the UI components via the > extensions framework (I see the context menu extension but nothing > else), but I will update my code to address your other points first > and report back in a week or two... For that, we probably need to add new functions to the extensions. Let's talk about that when you have cleaned up the code a bit more and think you're ready to "extensionify" it ;) Thanks, Thomas > --- On Thu, 3/15/12, Thomas Perl <m@xxxxxx> wrote: > > > From: Thomas Perl <m@xxxxxx> > > Subject: [gpodder] Re: More on device sync > > To: gpodder@xxxxxxxxxxxxx > > Date: Thursday, March 15, 2012, 4:41 AM > > Hi, > > > > On Mon, Mar 12, 2012 at 08:53:12AM -0700, Joseph > > Wickremasinghe wrote: > > > I've uploaded my proposed patch as bug 1579, as the > > patch seemed too > > > big to send to the mailing list. > > > > > > https://bugs.gpodder.org/show_bug.cgi?id=1579 > > > > Thanks, I've reviewed the patch and added some feedback in > > the bug > > tracker - feel free to ask if anything is unclear. > > > > > The code for iPod sync is included, but I removed > > 'iPod' from the > > > device options drop-down for now. I updated the > > database schema to add > > > a 'sync_to_device' and 'playlist_name' columns to the > > podcast table > > > and 'is_played' to episodes. Schema version is now 3. > > > > Please don't do this - the extensions mechanism has the > > ability to store > > arbitrary configuration variables. The "sync_to_device" > > should be either > > a list of podcast URLs (or IDs) to sync or alternativey a > > list of URLs > > (or IDs) to exclude from syncing (depending on what is the > > default). > > > > Also, the "is_played" field only makes sense in 2.x. In 3.0, > > the field > > is called "is_new" (and the boolean meaning of it is > > reversed, i.e. if > > it is played, "is_new" will be set to False). > > > > > 2. Get 'custom sync name' working. {episode.title} > > works, but I can't > > > figure out where the episode published date is stored > > in the 3.0 > > > object model. > > > > The field is called "published" in the schema. > > > > > 3. Update the interface to allow the user to specify > > which podcasts > > > are synced (at present it's all or nothing) > > > > See above for how I think this should work with the > > extensions config. > > > > > 5. Update syncing to allow a episode that has been > > deleted on the > > > device to be marked for deletion within gPodder. > > > > For that, you somehow have to remember if episodes were > > synced or not > > (otherwise you can't distinguish an episode that has never > > been synced > > from an episode that has been synced and then deleted). > > > > > > Thanks, > > Thomas > > > > > > >