mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-18 03:18:19 -07:00
184 lines
9.7 KiB
HTML
184 lines
9.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>Auto-Organize</title>
|
|
</head>
|
|
<body>
|
|
<div id="libraryFileOrganizerPage" data-role="page" class="page type-interior organizePage">
|
|
|
|
<div data-role="content">
|
|
<div class="content-primary">
|
|
<div data-role="controlgroup" data-type="horizontal" class="localnav" data-mini="true">
|
|
<a href="autoorganizelog.html" data-role="button">Activity Log</a>
|
|
<a href="#" data-role="button" class="ui-btn-active">TV Settings</a>
|
|
</div>
|
|
|
|
<form class="libraryFileOrganizerForm">
|
|
|
|
<p>Auto-organize monitors your download folders for new files and moves them to your media directories.</p>
|
|
|
|
<p>TV file organizing will only add episodes to existing series. It will not create new series folders.</p>
|
|
<ul data-role="listview" class="ulForm" style="margin-bottom: 0!important;">
|
|
<li>
|
|
<input type="checkbox" id="chkEnableTvSorting" name="chkEnableTvSorting" />
|
|
<label for="chkEnableTvSorting">Enable new episode organization</label>
|
|
</li>
|
|
<li>
|
|
<label for="txtWatchFolder">Watch folder: </label>
|
|
<div style="display: inline-block; width: 92%;">
|
|
<input type="text" id="txtWatchFolder" name="txtWatchFolder" />
|
|
</div>
|
|
<button id="btnSelectWatchFolder" type="button" data-icon="search" data-iconpos="notext" data-inline="true">Select Directory</button>
|
|
<div class="fieldDescription">
|
|
The server will poll this folder during the "Organize new media files" <a href="scheduledtasks.html">scheduled task</a>.
|
|
</div>
|
|
</li>
|
|
<li>
|
|
<label for="txtMinFileSize">Minimum file size (MB): </label>
|
|
<input type="number" id="txtMinFileSize" name="txtMinFileSize" pattern="[0-9]*" required="required" min="0" data-mini="true" />
|
|
<div class="fieldDescription">Files under this size will be ignored.</div>
|
|
</li>
|
|
<li>
|
|
<label for="txtSeasonFolderPattern">Season folder pattern: </label>
|
|
<input type="text" id="txtSeasonFolderPattern" name="txtSeasonFolderPattern" required="required" data-mini="true" />
|
|
<div class="fieldDescription seasonFolderFieldDescription"></div>
|
|
</li>
|
|
<li>
|
|
<label for="txtSeasonZeroName">Season zero folder name: </label>
|
|
<input type="text" id="txtSeasonZeroName" name="txtSeasonZeroName" required="required" data-mini="true" />
|
|
</li>
|
|
</ul>
|
|
<div data-role="collapsible">
|
|
<h3>Episode file pattern</h3>
|
|
<div>
|
|
<br />
|
|
<div>
|
|
<label for="txtEpisodePattern">Episode pattern: </label>
|
|
<input type="text" id="txtEpisodePattern" name="txtEpisodePattern" required="required" data-mini="true" />
|
|
<div class="fieldDescription episodePatternDescription"></div>
|
|
</div>
|
|
<br />
|
|
<div>
|
|
<label for="txtMultiEpisodePattern">Multi-Episode pattern: </label>
|
|
<input type="text" id="txtMultiEpisodePattern" name="txtMultiEpisodePattern" required="required" data-mini="true" />
|
|
<div class="fieldDescription multiEpisodePatternDescription"></div>
|
|
</div>
|
|
|
|
<br />
|
|
<p>Supported Patterns</p>
|
|
|
|
<table data-role="table" id="movie-table" data-mode="reflow" class="ui-responsive">
|
|
<thead>
|
|
<tr>
|
|
<th>Term</th>
|
|
<th>Pattern</th>
|
|
<th>Result</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>Series name</td>
|
|
<td>%sn</td>
|
|
<td>Series Name</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Series name</td>
|
|
<td>%s.n</td>
|
|
<td>Series.Name</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Series name</td>
|
|
<td>%s_n</td>
|
|
<td>Series_Name</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Season number</td>
|
|
<td>%s</td>
|
|
<td>1</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Season number</td>
|
|
<td>%0s</td>
|
|
<td>01</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Episode number</td>
|
|
<td>%e</td>
|
|
<td>4</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Episode number</td>
|
|
<td>%0e</td>
|
|
<td>04</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Ending episode number</td>
|
|
<td>%ed</td>
|
|
<td>5</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Ending episode number</td>
|
|
<td>%0ed</td>
|
|
<td>05</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Episode name</td>
|
|
<td>%en</td>
|
|
<td>Episode Name</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Episode name</td>
|
|
<td>%e.n</td>
|
|
<td>Episode.Name</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Episode name</td>
|
|
<td>%e_n</td>
|
|
<td>Episode_Name</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
</div>
|
|
</div>
|
|
<br />
|
|
<ul data-role="listview" class="ulForm">
|
|
<li>
|
|
<input type="checkbox" id="chkOverwriteExistingEpisodes" name="chkOverwriteExistingEpisodes" />
|
|
<label for="chkOverwriteExistingEpisodes">Overwrite existing episodes</label>
|
|
</li>
|
|
<li>
|
|
<label for="txtDeleteLeftOverFiles">Delete left over files with the following extensions: </label>
|
|
<input type="text" id="txtDeleteLeftOverFiles" name="txtDeleteLeftOverFiles" data-mini="true" />
|
|
<div class="fieldDescription">Separate with ;. For example: .nfo;.txt</div>
|
|
</li>
|
|
<li>
|
|
<input type="checkbox" id="chkDeleteEmptyFolders" name="chkDeleteEmptyFolders" />
|
|
<label for="chkDeleteEmptyFolders">Delete empty folders after organizing</label>
|
|
<div class="fieldDescription">Enable this to keep the download directory clean.</div>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul data-role="listview" class="ulForm">
|
|
<li>
|
|
<button type="submit" data-theme="b" data-icon="check" data-mini="true">
|
|
Save
|
|
</button>
|
|
<button type="button" onclick="Dashboard.navigate('dashboard.html');" data-icon="delete" data-mini="true">
|
|
Cancel
|
|
</button>
|
|
</li>
|
|
|
|
</ul>
|
|
</form>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
$('.libraryFileOrganizerForm').off('submit', LibraryFileOrganizerPage.onSubmit).on('submit', LibraryFileOrganizerPage.onSubmit);
|
|
</script>
|
|
</div>
|
|
</body>
|
|
</html>
|