Commit Graph

3363 Commits

Author SHA1 Message Date
Reinhard Pointner b32fc0c35f Avoid unnecessary error messages 2016-10-16 16:38:28 +08:00
Reinhard Pointner 1363389b60 preload data files 2016-10-16 15:46:42 +08:00
Reinhard Pointner e119d00b52 Pass Closure as FileFilter 2016-10-16 01:11:53 +08:00
Reinhard Pointner 618832f092 Added e00 convenience binding 2016-10-15 02:16:39 +08:00
Reinhard Pointner 0fb7f80a79 Added e00 convenience binding 2016-10-15 02:10:47 +08:00
Reinhard Pointner c402511f56 Added static convenience method for command-line escaping arguments (e.g. filebot/amc --def exec option)
e.g. quote(f) => "/path/to/file"
2016-10-14 02:30:21 +08:00
Reinhard Pointner 372bbcd5be Use Wait Cursor when loading/filtering files (can take a while because of listing files or because of loading Groovy classes) 2016-10-14 01:07:13 +08:00
Reinhard Pointner 40f19f22b1 Use Wait Cursor when loading/filtering files (can take a while because of listing files or because of loading Groovy classes) 2016-10-14 00:25:43 +08:00
Reinhard Pointner 956e284b11 Refactor ExpressionFormatMethods 2016-10-12 04:56:56 +08:00
Reinhard Pointner 2cdebbfbd1 Use expression unwind behaviour (i.e. throw exceptions) in check / joining / joiningDistinct 2016-10-10 21:31:39 +08:00
Reinhard Pointner 2e5484d2ec Use expression unwind behaviour (i.e. throw exceptions) in check / joining / joiningDistinct 2016-10-10 21:29:55 +08:00
Reinhard Pointner 1ebadfc38a Use MediaBindingBean because it'll cache MediaInfo instances internally (heavy use of TimeStampMetric might otherwise slow things down significantly) 2016-10-10 21:22:37 +08:00
Reinhard Pointner f7a69ab559 Show `Please install JavaFX` error popup on startup if JavaFX is not installed 2016-10-10 14:05:00 +08:00
Reinhard Pointner 42459b5c45 Added File.div(File) to support `plex[0]/az/plex[1..-1]` style formats 2016-10-10 05:39:25 +08:00
Reinhard Pointner ae723574b9 com.cedarsoftware.util.io.JsonReader requires a public constructor with no arguments (otherwise it'll try to find another constructor and call it with default values, e.g. null may change to 0) 2016-10-10 05:15:47 +08:00
Reinhard Pointner 35c6c33941 Remove unused methods 2016-10-09 19:10:21 +08:00
Reinhard Pointner cd2e0c0478 Added binding `mediaPath` for relative media path 2016-10-09 18:40:05 +08:00
Reinhard Pointner 8f1969b50b Added binding `path` for relative media path 2016-10-09 18:33:34 +08:00
Reinhard Pointner 4833391729 com.cedarsoftware.util.io.JsonReader requires a public constructor with no arguments (otherwise it'll try to find another constructor and call it with default values, e.g. null may change to 0) 2016-10-09 17:39:04 +08:00
Reinhard Pointner fe30f8a8d5 Refactor Movie (use 0 as undefined ID) 2016-10-09 16:19:39 +08:00
Reinhard Pointner 37cdce1111 JSON_TYPE_MAP 2016-10-09 04:02:54 +08:00
Reinhard Pointner 202c9d2dd5 SKIP_NULL_FIELDS / MetaAttributes.toJson() / MetaAttributes.toObject() 2016-10-09 03:55:45 +08:00
Reinhard Pointner b9f0a9ef0e Minor optimizations 2016-10-09 03:16:32 +08:00
Reinhard Pointner 6c98f249d1 Minor optimizations 2016-10-09 03:14:09 +08:00
Reinhard Pointner fb8d6bd64c SwingUI.copyToClipboard(String text) 2016-10-09 00:30:29 +08:00
Reinhard Pointner e3fbd3825f SwingUI.copyToClipboard(String text) 2016-10-09 00:28:40 +08:00
Reinhard Pointner 8b3e2825be Press F7 to Copy Debug Information 2016-10-09 00:23:06 +08:00
Reinhard Pointner 8ee1b06b3a Minor optimizations 2016-10-08 23:56:47 +08:00
Reinhard Pointner 5ca51e1d7d Minor optimizations 2016-10-08 23:56:29 +08:00
Reinhard Pointner db85b77dad Added List.joining(delim, prefix, suffix) convenience method 2016-10-08 23:13:07 +08:00
Reinhard Pointner 845dc26c83 Minor optimizations 2016-10-08 05:45:31 +08:00
Reinhard Pointner a4686dd3c6 Minor optimizations 2016-10-08 04:49:08 +08:00
Reinhard Pointner 70a9fc7d0c Refactor SeasonEpisodeMatcher 2016-10-07 21:19:49 +08:00
Reinhard Pointner f6a473a816 Minor optimizations 2016-10-07 01:47:10 +08:00
Reinhard Pointner f7d45346fd Minor optimizations 2016-10-07 01:46:37 +08:00
Reinhard Pointner 297a69be33 Minor optimizations 2016-10-07 00:56:52 +08:00
Reinhard Pointner 14e87227bc Update `filebot -help` 2016-10-06 12:45:04 +08:00
Reinhard Pointner b4be431035 Experiment with appx build 2016-10-05 21:48:59 +08:00
Reinhard Pointner 2d0a16688e Support "Generic File" renaming via the command-line tools by using `--db xattr -non-strict` so that only xattr-tagged files are processed in strict mode, but any generic file can be processed in non-strict mode (File object is used in absence of Episode/Movie object) 2016-10-05 15:00:03 +08:00
Reinhard Pointner bbc1bef181 Ignore hidden files by default (fix regression issue) 2016-10-05 14:56:33 +08:00
Reinhard Pointner c66ef6e668 Fix illegal date issues (e.g. year out of bounds) 2016-10-05 10:59:27 +08:00
Reinhard Pointner 106fef7dd9 Make sure that last-resort 101 number parser does not pick digits from large numbers (e.g. 1234567890 => null instead of 123)
@see https://www.filebot.net/forums/viewtopic.php?f=4&t=4194
2016-10-05 03:34:42 +08:00
Reinhard Pointner 28ac45ab03 Fix illegal date issues (e.g. year out of bounds) 2016-10-05 03:06:39 +08:00
Reinhard Pointner eab8c2dccc Fix illegal date issues (e.g. year out of bounds) 2016-10-05 03:04:02 +08:00
Reinhard Pointner 55d06dc87d Read MBID from ID3 Tags if possible 2016-10-05 02:27:35 +08:00
Reinhard Pointner 3f7c985db5 Map {id} to MusicBrainz ID for AudioTrack objects 2016-10-05 02:11:18 +08:00
Reinhard Pointner 850818373d Use HUMAN_NAME_ORDER for args file listing 2016-10-04 23:47:51 +08:00
Reinhard Pointner 89a48c26a1 ignore empty arguments 2016-10-04 23:47:10 +08:00
Reinhard Pointner 892e56a246 account for {n}/{s00e00} folder structure (e.g. Firefly/S01E01 - Pilot) 2016-10-03 13:29:01 +08:00
Reinhard Pointner 9c1b19d43f Use static Pattern 2016-10-02 01:24:33 +08:00
Reinhard Pointner 34e20b5f47 Fix for unexpected Channels MediaInfo values
@see https://www.filebot.net/forums/viewtopic.php?f=6&t=4182
2016-10-02 01:10:23 +08:00
Reinhard Pointner bc421e6b8a Make sure to load Groovy (i.e don't just use simple variables) before displaying the Format Editor window 2016-10-01 01:50:26 +08:00
Reinhard Pointner 527cd91a0d Let Groovy deal with Java keywords like null, case, etc 2016-10-01 01:49:24 +08:00
Reinhard Pointner a589cb1dcd Access simple bindings directly instead of accessing them via the Groovy engine 2016-10-01 01:41:30 +08:00
Reinhard Pointner 7afe232264 Access simple bindings directly instead of accessing them via the Groovy engine 2016-10-01 01:18:44 +08:00
Reinhard Pointner 9209349f0c Refactor FAIL 2016-10-01 01:17:11 +08:00
Reinhard Pointner 5a2087c2b4 Use human sort order for all paths loaded into the UI 2016-09-29 13:45:42 +08:00
Reinhard Pointner 5b290cf0ae Refactor 2016-09-29 13:45:15 +08:00
Reinhard Pointner e3fe2fd094 CASE_INSENSITIVE_PATH_ORDER
HUMAN_NAME_ORDER
2016-09-29 12:17:34 +08:00
Reinhard Pointner 56316af826 Use human sort order for all paths loaded into the UI 2016-09-29 02:12:29 +08:00
Reinhard Pointner 1743884c17 Use human sort order for all paths loaded into the UI 2016-09-29 02:02:59 +08:00
Reinhard Pointner 8efd30ab38 Use human sort order for all paths loaded into the UI 2016-09-28 23:40:41 +08:00
Reinhard Pointner 6094599436 Fix ListPanel issues 2016-09-28 23:31:17 +08:00
Reinhard Pointner 846e4166ed Use human sort order for all paths loaded into the UI 2016-09-28 23:09:38 +08:00
Reinhard Pointner aea553b154 Use human sort order for all paths loaded into the UI 2016-09-28 20:25:11 +08:00
Reinhard Pointner 99ad431994 Load files in Human Sort Order as well when dropping them into the "New Names" list 2016-09-28 15:16:13 +08:00
Reinhard Pointner d829ef97c8 Refactor 2016-09-28 13:34:04 +08:00
Reinhard Pointner b1a30e4bc3 List files in human order (Original Files area only)
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=4174
@see http://stackoverflow.com/questions/12640280/looking-for-a-combination-of-alphabetical-and-natural-order-aka-user-sane-sort
2016-09-28 13:19:20 +08:00
Reinhard Pointner 477aa7019c Fix English 2016-09-28 13:14:42 +08:00
Reinhard Pointner 4fbfc30d61 bonus points for primary matches (e.g. primary title matches filename > alias title matches folder path) 2016-09-26 18:59:17 +08:00
Reinhard Pointner c5be87c213 Deal with different kinds of colon properly 2016-09-26 18:53:20 +08:00
Reinhard Pointner 41967a00b3 bonus points for primary matches (e.g. primary title matches filename > alias title matches folder path) 2016-09-26 16:22:34 +08:00
Reinhard Pointner dc27cc9428 Refactor ResourceManager 2016-09-26 16:17:00 +08:00
Reinhard Pointner da885fd5f2 Make sure that notification boundaries don't exceed screen bounds 2016-09-26 16:16:33 +08:00
Reinhard Pointner 4b44495782 Copy error messages to clipboard on click 2016-09-26 16:15:37 +08:00
Reinhard Pointner 61e78ec16b Use indirect links in application bundles 2016-09-26 01:33:36 +08:00
Reinhard Pointner 8d1478c830 {tags} now supports "Ultimate Directors Cut" kind of patterns
@see https://www.filebot.net/forums/viewtopic.php?f=5&t=4167
2016-09-25 19:56:17 +08:00
Reinhard Pointner 9e70409ab2 Fix various HistorySpooler issues 2016-09-24 19:51:03 +08:00
Reinhard Pointner 5e3cce10f4 Update to libmediainfo 0.7.88 2016-09-23 23:57:47 +08:00
Reinhard Pointner 6f0791a6a8 Import <Airs_Time> from XML series record
@see https://www.filebot.net/forums/viewtopic.php?f=4&t=3891&p=23354#p23354
2016-09-23 02:30:57 +08:00
Reinhard Pointner 2cbdd095c2 Support for `Despecialized` in {tags} 2016-09-21 00:48:32 +08:00
Reinhard Pointner 0bd6625095 Refactor SupportDialog 2016-09-20 15:32:50 +08:00
Reinhard Pointner d745be08ab Helper for adding custom tags to the standard Plex name (after name but before subtitle language tag)
e.g. plex.derive{" by $director"}{" [$vc, $ac]"}
2016-09-20 13:56:10 +08:00
Reinhard Pointner 2ce5fb1343 Refactor ReleaseInfo 2016-09-20 13:10:31 +08:00
Reinhard Pointner de21009913 Revise SupportDialog behaviour 2016-09-20 00:24:15 +08:00
Reinhard Pointner 84d5cfbb9d Update deployment properties 2016-09-19 15:00:18 +08:00
Reinhard Pointner bf1776942b Fix default window size issues (on Windows 10) 2016-09-19 06:57:38 +08:00
Reinhard Pointner 5f734c14b2 Try to avoid strange `java.lang.IncompatibleClassChangeError: vtable stub` issues
@see https://www.filebot.net/forums/viewtopic.php?f=13&t=4137
2016-09-18 03:31:27 +08:00
Reinhard Pointner b6a0ad5d17 Update SupportDialog behaviour 2016-09-16 23:34:39 +08:00
Reinhard Pointner 536a8c3a3a Fix --conflict auto issue (PROPER/REPACK)
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=4131
2016-09-16 13:28:02 +08:00
Reinhard Pointner 6a19f83539 Avoid `bad position` issues 2016-09-11 11:10:51 +08:00
Reinhard Pointner 098491bb7f Internal support for language+country locale-specific TheMovieDB data 2016-09-10 01:33:40 +08:00
Reinhard Pointner b2d2df1883 Try fix `java.lang.IncompatibleClassChangeError: vtable stub` 2016-09-09 13:03:46 +08:00
Reinhard Pointner 6602af3f91 Refactor HighPerformanceMatcher into separate class files 2016-09-08 16:40:08 +08:00
Reinhard Pointner 0472084dc7 Check if file name matches a language name (e.g. English.srt) 2016-09-08 16:27:45 +08:00
Reinhard Pointner 81d9b6a2f6 Improved movie grouping for subtitle files 2016-09-08 10:58:10 +08:00
Reinhard Pointner 46a181b9b1 getMirror must not return null 2016-09-04 00:40:23 +08:00
Reinhard Pointner 2210fbca9d Make sure file handles are closed immediately 2016-08-24 03:27:27 +08:00
Reinhard Pointner d5cf630fe5 Fix non-strict isMovie check 2016-08-24 03:25:50 +08:00
Reinhard Pointner 8464020de4 Improved single/multi episode title default format {t} 2016-08-23 13:07:43 +08:00
Reinhard Pointner aab1c33859 Improved single/multi episode title default format {t} 2016-08-23 12:58:27 +08:00
Reinhard Pointner bdc81b3501 Fix inconsistent SubstringFields metric behaviour 2016-08-23 00:51:47 +08:00
Reinhard Pointner 90e1846dc5 Look up season numbers via TheTVDB for AniDB episode data 2016-08-22 09:02:43 +08:00
Reinhard Pointner 6f675d42cb Improved conflict dialog 2016-08-18 01:11:23 +08:00
Reinhard Pointner 800d61543b Refactor Ep\EpisodeMetrics 2016-08-17 15:23:09 +08:00
Reinhard Pointner 13e6360c4d Java 8 Refactoring 2016-08-17 05:37:59 +08:00
Reinhard Pointner 95427f05b3 Improved conflict dialog 2016-08-17 05:27:11 +08:00
Reinhard Pointner 51bc124062 Refactor ValidateDialog 2016-08-17 05:24:27 +08:00
Reinhard Pointner ad4befb36b Use new ConflictDialog in RenameAction 2016-08-17 03:37:30 +08:00
Reinhard Pointner 049d84fa6b We can only reveal / select one file per revealed folder 2016-08-17 03:36:01 +08:00
Reinhard Pointner fc73de25d7 Refactor trash(File) 2016-08-17 03:11:56 +08:00
Reinhard Pointner 150ce19092 Refactor RenameWorkers 2016-08-17 02:32:25 +08:00
Reinhard Pointner 08c6382839 Refactor Presets and enable keyboard shortcuts for Presets 1..9 via number keys 2016-08-17 02:19:57 +08:00
Reinhard Pointner ab2aeee4f1 Improved conflict dialog 2016-08-16 23:42:23 +08:00
Reinhard Pointner 226559683b compatibility constructor for sysinfo.groovy script 2016-08-15 22:14:03 +08:00
Reinhard Pointner 2bcb574f28 Fix FormatDialog background color issues 2016-08-15 03:06:38 +08:00
Reinhard Pointner 76619dbfdf Refactor NativeRenameAction 2016-08-15 02:55:05 +08:00
Reinhard Pointner d06352e507 Simplify json xattr metadata 2016-08-13 23:07:24 +08:00
Reinhard Pointner 53c0e6593d Improved disk folder detection for incomplete DVD folders 2016-08-12 21:04:49 +08:00
Reinhard Pointner fd4778ba8a Replace ":" with " - " when using {plex} 2016-08-12 03:33:05 +08:00
Reinhard Pointner 2a2fee18bb Fix retry behaviour [CRITICAL] 2016-08-12 03:04:17 +08:00
Reinhard Pointner c34411f0c1 Resolve poster movie info only when full metainfo is requested 2016-08-12 03:03:27 +08:00
Reinhard Pointner e6f57fa3a6 Fix {info.poster} 2016-08-12 02:04:41 +08:00
Reinhard Pointner e5dc94afa9 If time stamps are too far apart then similarity must be 0 2016-08-12 00:30:21 +08:00
Reinhard Pointner ecf9cf96dd Make sure TimeStampMetric works the same for all epochs 2016-08-11 20:27:18 +08:00
Reinhard Pointner cd01fe26bf Better error message when bad --q parameter is passed 2016-08-11 19:27:05 +08:00
Reinhard Pointner 49e82b7824 Minor refactoring and UI optimizations 2016-08-11 10:45:43 +08:00
Reinhard Pointner e6a36a2e88 Minor refactoring and UI optimizations 2016-08-11 10:19:12 +08:00
Reinhard Pointner 824ce14c62 Refactor Presets and enable keyboard shortcuts for Presets 1..9 via number keys 2016-08-11 07:06:18 +08:00
Reinhard Pointner dcfcc91090 Refactor JavaFX UserFiles 2016-08-11 03:54:27 +08:00
Reinhard Pointner 985556b3f2 Allow paste of multi-line expression formats 2016-08-10 21:01:05 +08:00
Reinhard Pointner 0ae7161b47 Strip newline characters from format expression results 2016-08-10 21:00:27 +08:00
Reinhard Pointner 5818685e1f Hide "Count" column in HistoryDialog 2016-08-10 19:37:27 +08:00
Reinhard Pointner cf4314708a Change button label 2016-08-10 19:25:47 +08:00
Reinhard Pointner d92b67396e Fix {sy} issues 2016-08-10 19:11:23 +08:00
Reinhard Pointner 4b25cd6983 Refactor LazyDocumentListener 2016-08-10 18:43:26 +08:00
Reinhard Pointner 7ac41d2c36 Allow paste of multi-line expression formats 2016-08-10 18:25:32 +08:00
Reinhard Pointner 135c28d456 Refactor FormatDialog 2016-08-10 18:10:05 +08:00
Reinhard Pointner 3ca390678d readXml helper function 2016-08-10 17:53:52 +08:00
Reinhard Pointner 3529f11cc2 Try to fix FormatDialog editable issues 2016-08-10 07:52:58 +08:00
Reinhard Pointner 67a884f03c Throw IOException if server sends bad response data 2016-08-10 06:34:31 +08:00
Reinhard Pointner 7dd1898761 Refactor SimpleDate 2016-08-10 06:05:27 +08:00
Reinhard Pointner 9b640acd53 Consider media encoding date when comparing TimeStamp episode similarity 2016-08-10 05:50:54 +08:00
Reinhard Pointner c6514b817a Refactor MediaInfo 2016-08-10 04:36:38 +08:00
Reinhard Pointner 0ef31fc19d Refactor MediaInfo 2016-08-10 04:13:39 +08:00
Reinhard Pointner 9dd4a82e04 Refactor SubtitleMetrics 2016-08-10 03:42:32 +08:00
Reinhard Pointner 53226d0809 Refactor media info cache synchronization 2016-08-10 03:26:55 +08:00
Reinhard Pointner 8f12961fe8 Consider media encoding date when comparing TimeStamp episode similarity 2016-08-10 03:11:06 +08:00
Reinhard Pointner feaa0802a8 Refactor ONE_MEGABYTE 2016-08-10 03:05:51 +08:00
Reinhard Pointner eceed1e979 Update MediaDurationFilter 2016-08-10 02:33:14 +08:00
Reinhard Pointner 13349bd031 Revert xattr changes 2016-08-10 01:46:54 +08:00
Reinhard Pointner afe7f81065 Simplify json xattr metadata 2016-08-10 01:42:34 +08:00
Reinhard Pointner 6efec06e35 Simplify json xattr metadata 2016-08-10 01:27:24 +08:00
Reinhard Pointner 38bc994638 Refactor MetaAttributeView 2016-08-10 00:49:17 +08:00
Reinhard Pointner 9705602e43 Refactor {age} logic 2016-08-10 00:34:35 +08:00
Reinhard Pointner 8b4d963e5a Try to fix RSyntaxTextArea issues 2016-08-10 00:08:54 +08:00
Reinhard Pointner bddf3e516b Refactor Date {now} to SimpleDate {today} 2016-08-09 23:46:03 +08:00
Reinhard Pointner 3ed3f92b48 Make sure that OMDb xattr movie data (with imdbid but without tmdbid) doesn't get accepted when processing files with TMDb.
@see https://www.filebot.net/forums/viewtopic.php?f=6&t=4038#p22634
2016-08-09 16:08:18 +08:00
Reinhard Pointner 65d5453797 Better error reporting for expressions that are too long 2016-08-09 02:00:17 +08:00
Reinhard Pointner 6f65b08d43 + Prepare for 4.7.2 bugfix release 2016-08-08 19:26:15 +08:00
Reinhard Pointner ce1cc8c004 Implement advanced multi-part movie detection (via group by mediainfo) 2016-08-08 18:35:53 +08:00
Reinhard Pointner 1f6f184e8d Make sure that movie object localization doesn't break anything 2016-08-08 17:05:23 +08:00
Reinhard Pointner 9c3e60f34e Implement advanced multi-part movie detection (via group by mediainfo) 2016-08-08 15:53:28 +08:00
Reinhard Pointner 47ad8b843c Remove dead code 2016-08-08 15:12:57 +08:00
Reinhard Pointner d60203c873 Refactor BindingDialog 2016-08-08 15:09:15 +08:00
Reinhard Pointner 76bb88042a Implement advanced multi-part movie detection (via group by mediainfo) 2016-08-08 07:46:04 +08:00
Reinhard Pointner 8457561dd5 Implement advanced multi-part movie detection (via group by mediainfo) 2016-08-08 07:18:00 +08:00
Reinhard Pointner 6eeb63c9fb Implement advanced multi-part movie detection (via group by mediainfo) 2016-08-08 05:22:05 +08:00
Reinhard Pointner 73e7443593 Implement advanced multi-part movie detection (via group by mediainfo) 2016-08-08 04:45:38 +08:00
Reinhard Pointner 47d9513a70 Update built-in examples 2016-08-08 04:44:31 +08:00
Reinhard Pointner 2214d5880d Refactor FormatDialog 2016-08-08 03:10:55 +08:00
Reinhard Pointner faba420141 Refactor FormatDialog 2016-08-08 03:04:36 +08:00
Reinhard Pointner 59ccb9006c UX improvements: Info Object (with info object as json tooltip) 2016-08-07 23:57:36 +08:00
Reinhard Pointner 542012cd90 Refactor BindingDialog 2016-08-07 22:56:37 +08:00
Reinhard Pointner 9a9a1b2ff4 Update built-in examples 2016-08-07 21:50:37 +08:00
Reinhard Pointner 3bc8c904d7 Refactor MovieInfo 2016-08-07 20:06:25 +08:00
Reinhard Pointner a573b0d902 Update built-in examples 2016-08-07 20:04:47 +08:00
Reinhard Pointner b425c5e14b Refactor MovieInfo 2016-08-07 19:49:17 +08:00
Reinhard Pointner becd5a4c7e Update built-in examples 2016-08-07 19:47:36 +08:00
Reinhard Pointner 488c4e7cca Avoid NPE 2016-08-07 19:46:44 +08:00
Reinhard Pointner 5c1e91c397 Convert illegal runtime values like "1h 30min" or "90min" to valid Integer values 2016-08-07 19:46:18 +08:00
Reinhard Pointner b49859f894 Update built-in examples 2016-08-07 05:50:11 +08:00
Reinhard Pointner c99be48cf0 Added Integer binding for {runtime} 2016-08-07 05:49:42 +08:00
Reinhard Pointner 21a68272ec The Collection.join() extension method somehow interferes with the Groovy runtime (e.g. 'hello'.tr('aeiou', 'AEIOU') fails) 2016-08-07 05:20:16 +08:00
Reinhard Pointner 5efd23ccb1 Simplify force series pattern 2016-08-07 01:09:03 +08:00
Reinhard Pointner 8c00c21008 Support 'folder' / 'name' kind of expressions 2016-08-06 23:49:03 +08:00
Reinhard Pointner cb3f9c8953 Print binary content as Base64 2016-08-05 18:05:43 +08:00
Reinhard Pointner fe097b5a43 Add `--action reflink` to CLI help 2016-08-05 05:33:41 +08:00
Reinhard Pointner db8860c1ba Update `Help` links 2016-08-04 23:45:15 +08:00
Reinhard Pointner 4e7f45f244 Refactor 2016-08-04 20:29:33 +08:00
Reinhard Pointner a34882b4bf Fix docs 2016-08-04 20:29:18 +08:00
Reinhard Pointner df6e8bd182 All $HOME/FOLDERS are considered structure root folders 2016-08-04 15:06:54 +08:00
Reinhard Pointner 71548a4f41 Refactor ApplicationFolder 2016-08-04 15:05:54 +08:00
Reinhard Pointner 851cd9dc3b Fix regression issue.
https://www.filebot.net/forums/viewtopic.php?f=6&t=4023
2016-08-03 01:54:04 +08:00
Reinhard Pointner d3df8cd4e4 Fix regression issue.
https://www.filebot.net/forums/viewtopic.php?f=6&t=4023
2016-08-03 01:51:53 +08:00
Reinhard Pointner 4f4f90ecdc Support reader.readLine() 2016-08-02 21:23:47 +08:00
Reinhard Pointner 91ec67f77d Show support dialog to power users (that use filebot only once but rename many many files) 2016-08-02 18:12:45 +08:00
Reinhard Pointner 1c21c37285 Avoid NPE 2016-08-01 22:26:20 +08:00
Reinhard Pointner 361e15508c Improved error logging 2016-08-01 22:24:30 +08:00
Reinhard Pointner 57c0115c72 Support --action reflink (Linux only) 2016-08-01 14:02:26 +08:00
Reinhard Pointner c2add9937f Refactor 2016-07-31 13:36:07 +08:00
Reinhard Pointner c7a80c7fec Fix issues with {plex} special formatting 2016-07-30 18:12:08 +08:00
Reinhard Pointner f80534ba5e Include {genre} in built-in examples 2016-07-30 01:59:06 +08:00
Reinhard Pointner 993319c4cc Fix --db option issues when using -get-subtitles 2016-07-28 23:24:55 +08:00
Reinhard Pointner 440a3bf923 Fix --db option issues when using -get-subtitles 2016-07-28 23:22:57 +08:00
Reinhard Pointner 1da4b53942 Fix rare MediaInfo issues on Mac OS X (the special characters issue... again... broken during refactoring)
@see https://www.filebot.net/forums/viewtopic.php?f=12&t=3988&p=22392#p22392
2016-07-28 06:24:13 +08:00
Reinhard Pointner 5a9169c5ed Rename {file} binding to {f} and introduce new {file} binding for the File Object (without any checks, i.e. nullable) 2016-07-27 23:31:45 +08:00
Reinhard Pointner fc757ce0d0 Push FileBot 4.7.1 B1 2016-07-27 19:02:18 +08:00
Reinhard Pointner 2701b16744 Fix potential NPE (e.g. for XML pages that respond with 404 NOT FOUND)
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=3989&p=22375#p22375
2016-07-27 18:44:36 +08:00
Reinhard Pointner bcc581c10a Revert to using TheTVDB API v1 for FileBot 4.7.1 release (v2 is not mature enough yet) 2016-07-27 13:02:21 +08:00
Reinhard Pointner 6e892b9bdb TheTVDB API v1 & v2 compatibility 2016-07-27 13:01:34 +08:00
Reinhard Pointner 8649bd64fb Fix potential NPE (e.g. for XML pages that respond with 404 NOT FOUND)
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=3989&p=22375#p22375
2016-07-27 12:44:38 +08:00
Reinhard Pointner f5f910336b Keep old TheTVDBClient API v1 code working and maintained (in case we decide not to use v2 for the final release just yet) 2016-07-25 21:05:49 +08:00
Reinhard Pointner 231ffcf096 Make String.stripReleaseInfo() available in scripting context
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=3976#p22318
2016-07-25 17:40:26 +08:00
Reinhard Pointner b2a7c24ae7 Do not preserve AutoCompleteMatcher state (input/selection memory) between tasks (i.e. restore pre FileBot 4.7 behaviour) 2016-07-25 01:42:43 +08:00
Reinhard Pointner 28c1f4fd38 Enable Anime-characteristics auto-matching when dealing with Anime in Smart Mode 2016-07-25 01:35:03 +08:00
Reinhard Pointner d424f661ee Match by {n} instead of Anime primary title (may be Japanese and not yield results on TheTVDB)
@see https://www.filebot.net/forums/viewtopic.php?f=5&t=3979&p=p22325#p22325
2016-07-25 01:18:28 +08:00
Reinhard Pointner f43a37ed64 When matching AniDB->TheTVDB series names, do so as leniently as possible (e.g. One-Punch == One Punch)
@see https://www.filebot.net/forums/viewtopic.php?f=5&t=3979&p=22324#p22324
2016-07-24 23:43:15 +08:00
Reinhard Pointner c6971a30c3 Added season count binding {sc} 2016-07-22 22:12:53 +08:00
Reinhard Pointner 759d5c9a94 Added season years binding {sy} 2016-07-22 22:01:05 +08:00
Reinhard Pointner be9d70150d TheMovieDB::discoverBestOfYear 2016-07-20 15:30:26 +08:00
Reinhard Pointner 0312dcaf83 TheMovieDB::discoverPeriod 2016-07-19 03:29:31 +08:00
Reinhard Pointner 8654b2008b Properly document Linux-specific drag-n-drop workarounds 2016-07-18 00:10:07 +08:00
Reinhard Pointner 860ce15322 Play with System.AppUserModel.ID (Windows 7 integration) 2016-07-13 22:02:33 +08:00
Reinhard Pointner 700b02b172 Make conflict messages more clear 2016-07-12 13:27:07 +08:00
Reinhard Pointner 8116b53018 Refactor GVFS (don't require libgio) 2016-07-12 00:08:34 +08:00
Reinhard Pointner a5eefa00b2 Refactor GVFS (don't require libgio) 2016-07-12 00:03:29 +08:00
Reinhard Pointner 86c8f381a8 Refactor GVFS (don't require libgio) 2016-07-12 00:03:07 +08:00
Reinhard Pointner 2264761bf5 Display error message in GUI when subtitles cannot be written to disk (e.g. permission issues) 2016-07-09 21:17:59 +08:00
Reinhard Pointner 4d3eb5af42 + added {type} binding 2016-07-02 17:48:52 +08:00
Reinhard Pointner c738e8783c Simplify NFO parser 2016-06-30 17:51:07 +08:00
Reinhard Pointner 6a44c4eea2 Improved error messages when running 64-bit FileBot with 32-bit Java on a 64-bit OS 2016-06-29 12:52:18 +08:00
Reinhard Pointner 80547dbf06 docs 2016-06-28 18:54:04 +08:00
Reinhard Pointner 37335243cc Ignore Comment subtitle entries 2016-06-28 03:00:50 +08:00
Reinhard Pointner ba439cc2b6 Avoid issues caused by strange text files 2016-06-21 01:37:46 +08:00
Reinhard Pointner 6b8b0537ad Simplify error messages (when parsing dropped text files) 2016-06-20 22:52:01 +08:00
Reinhard Pointner 09b41170fd Look into custom script names (for exception stacktraces) but keep as it is for now to avoid unnecessary complexity/magic
e.g.
public Class parseClass(String text, String fileName) throws CompilationFailedException {
	return super.parseClass(text, "amc");
}
2016-06-19 23:59:27 +08:00
Reinhard Pointner ea543491b6 Avoid potentially misleading error messages 2016-06-16 14:44:49 +08:00
Reinhard Pointner 4e9a4d0a51 + Experiment with snappy / snapcraft 2016-06-14 22:29:25 +08:00
Reinhard Pointner 24fda5f8d8 Do not use debug logging for script exceptions 2016-06-12 18:33:48 +08:00
Reinhard Pointner 8bb71d8ac0 Use standard exit codes 2016-06-12 18:23:36 +08:00
Reinhard Pointner 3258c83cfd `filebot -clear-cache` has been disabled due to abuse. 2016-06-12 18:16:18 +08:00
Reinhard Pointner 277221c793 Better error messages 2016-06-07 06:11:38 +08:00
Reinhard Pointner e94ec429cf Internal TheMovieDB API for retrieving Country/AlternativeTitle mappings (return multi-map) 2016-06-07 06:04:55 +08:00
Reinhard Pointner e8266b14dc Internal TheMovieDB API for retrieving Country/AlternativeTitle mappings 2016-06-06 14:21:28 +08:00
Reinhard Pointner 642d47c2d2 use platform-independent laf for standalone jar deployment 2016-06-05 14:05:44 +08:00
Reinhard Pointner 476e387ca4 Added {id} binding to get the movie/series id as Integer 2016-06-04 12:46:17 +08:00
Reinhard Pointner 9d84ef7663 Call fpcalc for each individual file to work around all kinds of issues (Windows arg limits, fpcalc/ffmpeg issues, etc) 2016-06-03 01:30:45 +08:00
Reinhard Pointner 69a58b8185 Ignore invalid exclude list lines 2016-06-03 00:33:30 +08:00
Reinhard Pointner 2d31f81367 Refactor filename bindings 2016-05-29 23:24:54 +08:00
Reinhard Pointner e541bf1154 + added {mediaTitle} binding 2016-05-29 20:47:06 +08:00
Reinhard Pointner 369574a9aa Print lines as we go along (instead of all at the end) when calling -mediainfo on many files 2016-05-29 04:24:30 +08:00
Reinhard Pointner d1691f5718 wait for UI to startup completely before loading more classes 2016-05-28 16:06:27 +08:00
Reinhard Pointner a6e44febfd can't initialize with known options because misleading NFO files may lead to bad matches 2016-05-28 16:05:53 +08:00
Reinhard Pointner dedc9c9699 Automatically set -no-xattr in --action test mode 2016-05-28 01:44:13 +08:00
Reinhard Pointner 74445dcc43 Request preferred language and/or English (not supported by the API right now, but might in the future) 2016-05-25 23:53:12 +08:00
Reinhard Pointner 791fa79658 Fix AcoustID issue: NoSuchElementException: No Value Present
@see https://www.filebot.net/forums/viewtopic.php?f=6&t=3818
2016-05-24 23:25:24 +08:00
Reinhard Pointner 9eb8d67007 Refactor 2016-05-24 21:51:02 +08:00
Reinhard Pointner 0300064ea1 Auto-Validate all path components of the {plex} path 2016-05-23 15:06:25 +08:00
Reinhard Pointner 8bed1ba2df Types are good. Fixed `java.lang.ClassCastException: Cannot cast java.net.URI to [B` issues.
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=3808
2016-05-23 14:17:40 +08:00
Reinhard Pointner 837208a09b Translate AniDB::Absolute order to TheTVDB::Airdate order (matching by absolute episode number) only if preferred episode order is `Airdate` or `DVD`
@see https://www.filebot.net/forums/viewtopic.php?f=10&t=3805
2016-05-22 20:50:32 +08:00
Reinhard Pointner a2be7bdd09 Do not auto-trim --def name=value parameters 2016-05-22 06:24:23 +08:00
Reinhard Pointner f94705a847 Extra padding for GTK LaF 2016-05-22 02:14:18 +08:00
Reinhard Pointner 826830a034 Extra padding for GTK LaF 2016-05-22 02:09:06 +08:00
Reinhard Pointner c1cfb68d9f Restore original logging output pattern 2016-05-21 00:21:28 +08:00
Reinhard Pointner dcf30f06d4 Fix F2 'Force Name' issue extension
@see https://www.filebot.net/forums/viewtopic.php?f=6&t=3793
2016-05-19 22:47:58 +08:00
Reinhard Pointner cd20224a30 Work around potential layout & focus issues 2016-05-19 15:45:18 +08:00
Reinhard Pointner e83901f174 Metadata Object binding {object} 2016-05-18 20:44:55 +08:00
Reinhard Pointner cf2fe796bc Make sure that xattr are cached long enough (even for long amc script runs) 2016-05-17 00:43:40 +08:00
Reinhard Pointner 86b0776c2d Support for logging response content via `-Dnet.filebot.web.WebRequest.log.response=true` 2016-05-16 23:21:17 +08:00
Reinhard Pointner 0131bd0af5 `debug` may not have been initialized and cause an NPE 2016-05-16 23:10:54 +08:00
Reinhard Pointner 8e082f4a28 Plex naming standard specifies `Specials` folder.
@see https://support.plex.tv/hc/en-us/articles/200220707-Naming-TV-Show-Specials-
2016-05-16 22:22:57 +08:00
Reinhard Pointner 83dc1c40f6 Refactor 2016-05-16 03:34:26 +08:00
Reinhard Pointner f28800a3a9 Refactor 2016-05-16 03:26:26 +08:00
Reinhard Pointner 5244a33fac Refactor trash/delete 2016-05-16 03:09:30 +08:00
Reinhard Pointner d886f6569f do nothing if current and original path is exactly the same 2016-05-16 01:49:54 +08:00
Reinhard Pointner d277315f39 absolute paths on Windows appear to be valid URIs so we need explicitly exclude them (e.g. C:\path\to\script.groovy) 2016-05-16 01:03:05 +08:00
Reinhard Pointner 37bf803c86 Refactor 2016-05-16 00:50:06 +08:00
Reinhard Pointner eb7d632cc5 Fix {plex} binding issues with Special episodes (i.e. make sure to create a "Specials" folder) 2016-05-15 23:19:08 +08:00
Reinhard Pointner cfdb79eb99 Fix NPE 2016-05-14 03:32:57 +08:00
Reinhard Pointner 4f32fc4ff1 + TODO support for default language [SHOWSTOPPER] 2016-05-14 01:50:48 +08:00
Reinhard Pointner b1d48fe590 Refactor OriginalOrder 2016-05-14 01:28:58 +08:00
Reinhard Pointner 51979c9f6a Better error messages 2016-05-13 00:33:42 +08:00
Reinhard Pointner 5856efdf5f Episode title can be `null`. Make sure to avoid NPE when episode title is used. 2016-05-13 00:33:28 +08:00
Reinhard Pointner 8ae2acbdfb Refactor Movie 2016-05-13 00:10:12 +08:00
Reinhard Pointner 4827f212c7 Better error messages 2016-05-13 00:09:46 +08:00
Reinhard Pointner 60bd6df2f8 Episode title can be `null`. Make sure to avoid NPE when episode title is used. 2016-05-12 23:54:49 +08:00
Reinhard Pointner 9e87393258 Correctly guess affected folder depth 2016-05-12 20:39:47 +08:00
Reinhard Pointner d5bdb33799 Do not auto-delete hidden files (except for Thumbs.db and .DS_Store) 2016-05-12 02:14:11 +08:00
Reinhard Pointner 4d18963f1f Make sure that movie selection is unique 2016-05-11 13:14:30 +08:00
Reinhard Pointner 67bbfe904b Pre-initialize JavaFX 2016-05-10 21:20:43 +08:00
Reinhard Pointner de20963b49 Pre-initialize JavaFX 2016-05-10 21:19:02 +08:00
Reinhard Pointner e168f18dd4 Refactor XattrMetaInfo 2016-05-10 20:04:11 +08:00
Reinhard Pointner 3443fc0de7 Refactor {languages} binding 2016-05-10 18:17:16 +08:00
Reinhard Pointner 96ecc4db9a Fix SelectDialog size issues 2016-05-10 18:16:49 +08:00
Reinhard Pointner 0b385943a1 Don't print stacktrace for not-unexpected warnings 2016-05-10 05:45:53 +08:00
Reinhard Pointner 57333f5c99 Fix NPE caused by last page not being set in json response 2016-05-10 04:39:24 +08:00
Reinhard Pointner 038d9b1d99 Cleanup 2016-05-10 04:28:32 +08:00
Reinhard Pointner e32e668f0d Set limit to 2000 2016-05-10 00:42:28 +08:00
Reinhard Pointner be01e82589 Unify Actors/Cast/Crew API 2016-05-09 22:59:21 +08:00
Reinhard Pointner cd733698a5 Refactor 2016-05-09 14:56:09 +08:00
Reinhard Pointner b8c9c777c9 Fix TheTVDB URL parsing issues
@see https://www.filebot.net/forums/viewtopic.php?f=6&t=3735&p=20814#p20814
2016-05-08 23:48:58 +08:00
Reinhard Pointner 60519a43d6 Add convenience API 2016-05-08 23:24:15 +08:00
Reinhard Pointner d218fbed99 Make progress dialog indeterminate 2016-05-08 22:26:40 +08:00
Reinhard Pointner d41d96b6e2 Actors is no longer part of the base series record :( 2016-05-08 20:44:10 +08:00
Reinhard Pointner ef14db36cb Fix TheTVDB artwork rating issues 2016-05-08 20:31:06 +08:00
Reinhard Pointner b487f25361 Refactor ProgressDialog 2016-05-08 04:45:48 +08:00
Reinhard Pointner 0e126daace Refactor ProgressDialog 2016-05-08 04:12:16 +08:00
Reinhard Pointner c7b97825f3 Refactor ProgressDialog 2016-05-08 01:55:48 +08:00
Reinhard Pointner ac5e77ed4e Make sure that Artwork is always sorted by rating 2016-05-08 01:53:36 +08:00
Reinhard Pointner 935c01a6ed use system trash to delete left-behind empty folders / hidden files 2016-05-07 18:14:46 +08:00
Reinhard Pointner 5974367fd1 Fix `-DuseExtendedFileAttributes=false NOT WORKING` issues 2016-05-07 17:01:39 +08:00
Reinhard Pointner 68faa9b53d Update TheTVDB API v2 to return extended TheTVDBSeriesInfo 2016-05-07 02:41:29 +08:00
Reinhard Pointner d61695b426 Avoid auto-deleting empty structure root folders (e.g. Media, Staging, etc) 2016-05-06 19:39:00 +08:00
Reinhard Pointner 94c830c93a Additional format permission that might be required for certain bindings (e.g. abs2sxe) 2016-05-06 01:26:39 +08:00
Reinhard Pointner db455e027a Use xattr metadata as info object by default 2016-05-06 01:25:58 +08:00
Reinhard Pointner 71e84c661f + Switch to new TheTVDB API 2016-05-05 21:48:55 +08:00
Reinhard Pointner 69db530d8a Added {bitdepth} binding 2016-05-05 19:48:08 +08:00
Reinhard Pointner 0acd0e885a Replace slash and backslash to make sure the result is not a file path. 2016-05-04 23:27:49 +08:00
Reinhard Pointner 38d4e7c250 F*CK 2016-05-04 13:59:39 +08:00
Reinhard Pointner a9b4bb62eb Getting Started workaround for MAS 2016-05-04 03:49:14 +08:00
Reinhard Pointner b6e942e2e9 // libjfxwebkit.dylib cannot be deployed on the MAS due to deprecated dependencies 2016-05-04 03:06:58 +08:00
Reinhard Pointner e9e9d0fadd Better logging 2016-05-03 19:38:07 +08:00
Reinhard Pointner e8d11717ba Better logging 2016-05-03 19:28:52 +08:00
Reinhard Pointner 23872ff894 Better toString() and logging 2016-05-03 19:28:33 +08:00
Reinhard Pointner cfe2d55c64 Refactor SupportDialog 2016-05-02 07:48:58 +08:00
Reinhard Pointner b3fc605f1f Reduce limit to 1000 2016-05-02 07:33:35 +08:00
Reinhard Pointner 02205893aa Fix 2016-05-02 00:37:39 +08:00
Reinhard Pointner 2864dd252e Improved UI 2016-05-02 00:33:46 +08:00
Reinhard Pointner 7e272915e5 Improved UI 2016-05-02 00:32:40 +08:00
Reinhard Pointner 8c8695d528 Improved UI 2016-05-02 00:18:27 +08:00
Reinhard Pointner b9099abbb1 Improved console output for -get-subtitles commands 2016-04-30 22:59:51 +08:00
Reinhard Pointner 06815469f6 // ignore drawing commands (http://docs.aegisub.org/3.2/ASS_Tags/#drawing-commands) 2016-04-30 22:43:30 +08:00
Reinhard Pointner 416eb0095d Refactor 2016-04-30 18:35:48 +08:00
Reinhard Pointner 08b23e92a7 Added boolean bindings {anime} and {regular} to check if an episode object is an Anime/Regular (non-special) episode 2016-04-30 16:22:05 +08:00
Reinhard Pointner d6bb7f1096 Added boolean bindings {anime} and {regular} to check if an episode object is an Anime/Regular (non-special) episode 2016-04-30 16:20:28 +08:00
Reinhard Pointner c36548cb63 Fix NPE
@see https://www.filebot.net/forums/viewtopic.php?f=6&t=2075&p=20611#p20611
2016-04-29 15:53:10 +08:00
Reinhard Pointner 0d34ea8139 + context menu for List panel (i.e. Send name list to Rename New Names) 2016-04-29 00:55:49 +08:00
Reinhard Pointner d5e258a9d9 Refactor 2016-04-28 13:01:45 +08:00
Reinhard Pointner 2cb0d355a6 Refactor 2016-04-27 01:44:21 +08:00
Reinhard Pointner 30b79710e3 Refactor 2016-04-26 16:09:34 +08:00
Reinhard Pointner b69e2fadd5 Refactor 2016-04-26 15:29:51 +08:00
Reinhard Pointner 82f9a4b0f5 NOTE: GitHub only supports If-None-Match (If-Modified-Since is ignored) 2016-04-25 14:31:39 +08:00
Reinhard Pointner 5a2e9d3730 Refactor ETag cache API 2016-04-25 14:31:33 +08:00
Reinhard Pointner 724e55485d Fix logging 2016-04-25 01:42:07 +08:00
Reinhard Pointner 44c9601173 Refactor SupportDialog 2016-04-24 01:05:33 +08:00
Reinhard Pointner 21ca4699dd Refactor 2016-04-24 00:57:41 +08:00
Reinhard Pointner 8eff5ec498 try to convert absolute numbers to SxE numbers when using {s00e00} binding (as best as possible, SxE numbers may not exactly match TheTVDB, but should in most common cases) 2016-04-23 02:17:31 +08:00
Reinhard Pointner 1093431c24 Fix drop issues 2016-04-23 02:02:01 +08:00
Reinhard Pointner 2c117561e3 try to convert absolute numbers to SxE numbers when using {s00e00} binding (as best as possible, SxE numbers may not exactly match TheTVDB, but should in most common cases) 2016-04-23 00:47:43 +08:00