=== Delete City === Contributors: jefftimesten Donate link: http://example.com/ Tags: youtube Requires at least: 2.0.2 Tested up to: 3.1 Stable tag: 0.1 DeleteCity saves videos from YouTube deletion by caching a shitload of them on your server, then checking back periodically to see if they have been taken down. == Description == DeleteCity saves videos from being deleted from YouTube caching a bunch of them on your server, then checking back periodically to see if they have been taken down. When it finds videos that have been removed, it posts them on your blog with a link to the author's YouTube page. You can tell DeleteCity to use YouTube feeds by keyword to customize which videos you try to save. Devious? Maybe. But also one step in the fight against censorship. WARNING: The plugin was designed to take advantage of the huge hard drive space/bandwidth allotments of some hosting providers and shouldn't be used if you are charged for either by the MB. more info: http://www.jeffcrouse.info/projects/delete-city/ == Installation == 1. Upload `delete-city` to the `/wp-content/plugins/` directory 1. Activate the plugin through the 'Plugins' menu in WordPress 1. Check out the 'Delete City Settings' page under 'Settings' in the admin section 1. Check out the 'Delete City Status' page under 'Plugins' to see the status of caching/saving, and to manually start the caching process. == Frequently Asked Questions == = How does it work? = DeleteCity adds 2 scheduled tasks to your Wordpress blog (you can use the CronView plugin to see them http://wordpress.org/extend/plugins/cron-view/): the caching task and the posting task. You can change the frequency of these tasks under "Delete City Settings". By default, the caching process runs twoce a day. It fetches standard YouTube feeds that you supply and downloads each video in the feed to your server using youtube-dl. It notes the time that it was downloaded, as well as the title, author, and other properties. The next time the caching process is run, DC checks back to see if the video is still available. If it has been removed, the video is marked as "removed". To save hard drive space, videos are automatically deleted after 3 days (customizable in Settings) if they are not found to have been removed. = What is youtube-dl? = youtube-dl is a 3rd party script for downloading YouTube videos. You probably shouldn't use this directly - it is called from the other scripts. You can find out more about it here: http://rg3.github.com/youtube-dl/ = Why did you make this? or Why would I want this? = Good question! It is unarguably a niche plugin, and not terribly practical. Let's just say that this readme file isn't the proper place for that topic. If you'd like to discuss it, I invite you to email me at jeff [at] crouse [dot] cc. == Screenshots == 1. Example post made by DeleteCity of 3 videos that were saved from deletion 1. When a user clicks on one of the thumbnails, the video opens up in a dialog window. 1. The DeleteCity Settings page. Notice you can set the frequency of the cache process, as well as the posting process. You tell DeleteCity which videos to download by supplying YouTube feed URLs. You can also filter out videos by supplying "Blacklist" words. If these words are found int he title or description of the video, it will be skipped. 1. Delete City Status page shows all of the videos that have been saved, as well as all of the videos that are currently in the cache. You can manually delete videos from this page. 1. You can also watch the videos in the status page. It's fun! == Changelog == = 0.1 = * Initial Release == Upgrade Notice == = 0.1 = As this is the initial release, I wouldn't say it's fair to call this "stable". But I do welcome feedback. == REQUIREMENTS = *nix only! (Mac or Linux server) I use a bunch of system commands (mostly for process control) that I don't know how to translate into Windows. I'd love someone to help me, though! PHP >= 5.1 (according to http://phpduck.com/minimum-php-version-script/) Python >= 2.5 IMPORTANT: Apparently many videos are blocked outside of the US, so this plugin will probably fail for non-US users. == TO DO == * Give user choice of categories for post * In admin form, cache process indicator doesn't change when runcache finishes * Blacklist checks for existence of string, not word. For instance, any word with 'ass' anywhere in it (ie: assembly) will be blacklisted. * Sort videos by feed * Allow usernames in blacklist * regex validation for rate limit * Imlement dc_max_cache_size options (they currently do nothing) * Can I include some file in runcache that will allow me to get Wordpress options? That would allow me to avoid all of this parameter passing... * What should happen if someone changes their cache directory? * Redesign admin interface - need some UX help * Testing if video had been removed: testing for presence of DE http://gdata.youtube.com/feeds/api/videos/CD2LRROpph0 DE * Check the PHP version at activation