mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-18 03:18:19 -07:00
a252b74db2
When a filename cannot be auto-matched to an existing series name, the organization must be performed manually. Unfortunately not just once, but again and again for each episode coming in. This change proposes a simple but solid method to optionally persist the matching condition from within the manual organization dialog. This approach will make Emby "learn" how to organize files in the future without user interaction.
184 lines
9.9 KiB
HTML
184 lines
9.9 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<title>${TitleAutoOrganize}</title>
|
|
</head>
|
|
<body>
|
|
<div id="libraryFileOrganizerPage" data-role="page" class="page type-interior organizePage" data-helpurl="https://github.com/MediaBrowser/Wiki/wiki/Auto-Organize" data-require="jqmtable,scripts/autoorganizetv,paper-input">
|
|
|
|
<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">${TabActivityLog}</a>
|
|
<a href="#" data-role="button" class="ui-btn-active">${TabTV}</a>
|
|
<a href="autoorganizesmart.html" data-role="button">${TabSmartMatch}</a>
|
|
</div>
|
|
|
|
<form class="libraryFileOrganizerForm">
|
|
|
|
<p>${AutoOrganizeHelp}</p>
|
|
|
|
<p>${AutoOrganizeTvHelp}</p>
|
|
<ul data-role="listview" class="ulForm" style="margin-bottom: 0!important;">
|
|
<li>
|
|
<input type="checkbox" id="chkEnableTvSorting" name="chkEnableTvSorting" />
|
|
<label for="chkEnableTvSorting">${OptionEnableEpisodeOrganization}</label>
|
|
</li>
|
|
<li>
|
|
<paper-input id="txtWatchFolder" label="${LabelWatchFolder}" style="width:85%;display:inline-block;"></paper-input>
|
|
<paper-icon-button id="btnSelectWatchFolder" icon="search"></paper-icon-button>
|
|
<div class="fieldDescription">
|
|
<div>${LabelWatchFolderHelp}</div>
|
|
</div>
|
|
<br />
|
|
</li>
|
|
<li>
|
|
<label for="txtMinFileSize">${LabelMinFileSizeForOrganize}</label>
|
|
<input type="number" id="txtMinFileSize" name="txtMinFileSize" pattern="[0-9]*" required="required" min="0" />
|
|
<div class="fieldDescription">${LabelMinFileSizeForOrganizeHelp}</div>
|
|
</li>
|
|
<li>
|
|
<label for="txtSeasonFolderPattern">${LabelSeasonFolderPattern}</label>
|
|
<input type="text" id="txtSeasonFolderPattern" name="txtSeasonFolderPattern" required="required" />
|
|
<div class="fieldDescription seasonFolderFieldDescription"></div>
|
|
</li>
|
|
<li>
|
|
<label for="txtSeasonZeroName">${LabelSeasonZeroFolderName}</label>
|
|
<input type="text" id="txtSeasonZeroName" name="txtSeasonZeroName" required="required" />
|
|
</li>
|
|
</ul>
|
|
<div data-role="collapsible">
|
|
<h3>${HeaderEpisodeFilePattern}</h3>
|
|
<div>
|
|
<br />
|
|
<div>
|
|
<label for="txtEpisodePattern">${LabelEpisodePattern}</label>
|
|
<input type="text" id="txtEpisodePattern" name="txtEpisodePattern" required="required" />
|
|
<div class="fieldDescription episodePatternDescription"></div>
|
|
</div>
|
|
<br />
|
|
<div>
|
|
<label for="txtMultiEpisodePattern">${LabelMultiEpisodePattern}</label>
|
|
<input type="text" id="txtMultiEpisodePattern" name="txtMultiEpisodePattern" required="required" />
|
|
<div class="fieldDescription multiEpisodePatternDescription"></div>
|
|
</div>
|
|
|
|
<br />
|
|
<p>${HeaderSupportedPatterns}</p>
|
|
|
|
<table data-role="table" id="movie-table" data-mode="reflow" class="ui-responsive">
|
|
<thead>
|
|
<tr>
|
|
<th>${HeaderTerm}</th>
|
|
<th>${HeaderPattern}</th>
|
|
<th>${HeaderResult}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>${LabelSeriesNamePlain}</td>
|
|
<td>%sn</td>
|
|
<td>${LabelSeriesNamePlain}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelSeriesNamePlain}</td>
|
|
<td>%s.n</td>
|
|
<td>${ValueSeriesNamePeriod}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelSeriesNamePlain}</td>
|
|
<td>%s_n</td>
|
|
<td>${ValueSeriesNameUnderscore}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelSeasonNumberPlain}</td>
|
|
<td>%s</td>
|
|
<td>1</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelSeasonNumberPlain}</td>
|
|
<td>%0s</td>
|
|
<td>01</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEpisodeNumberPlain}</td>
|
|
<td>%e</td>
|
|
<td>4</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEpisodeNumberPlain}</td>
|
|
<td>%0e</td>
|
|
<td>04</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEndingEpisodeNumberPlain}</td>
|
|
<td>%ed</td>
|
|
<td>5</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEndingEpisodeNumberPlain}</td>
|
|
<td>%0ed</td>
|
|
<td>05</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEpisodeNamePlain}</td>
|
|
<td>%en</td>
|
|
<td>${LabelEpisodeNamePlain}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEpisodeNamePlain}</td>
|
|
<td>%e.n</td>
|
|
<td>${ValueEpisodeNamePeriod}</td>
|
|
</tr>
|
|
<tr>
|
|
<td>${LabelEpisodeNamePlain}</td>
|
|
<td>%e_n</td>
|
|
<td>${ValueEpisodeNameUnderscore}</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
</div>
|
|
</div>
|
|
<br />
|
|
<ul data-role="listview" class="ulForm">
|
|
<li>
|
|
<label for="copyOrMoveFile">${LabelTransferMethod}</label>
|
|
<select id="copyOrMoveFile" data-mini="true">
|
|
<option value="true">${OptionCopy}</option>
|
|
<option value="false">${OptionMove}</option>
|
|
</select>
|
|
<div class="fieldDescription">${LabelTransferMethodHelp}</div>
|
|
</li>
|
|
<li>
|
|
<input type="checkbox" id="chkOverwriteExistingEpisodes" name="chkOverwriteExistingEpisodes" />
|
|
<label for="chkOverwriteExistingEpisodes">${OptionOverwriteExistingEpisodes}</label>
|
|
</li>
|
|
<li>
|
|
<label for="txtDeleteLeftOverFiles">${LabelDeleteLeftOverFiles}</label>
|
|
<input type="text" id="txtDeleteLeftOverFiles" name="txtDeleteLeftOverFiles" />
|
|
<div class="fieldDescription">${LabelDeleteLeftOverFilesHelp}</div>
|
|
</li>
|
|
<li>
|
|
<input type="checkbox" id="chkDeleteEmptyFolders" name="chkDeleteEmptyFolders" data-mini="true" />
|
|
<label for="chkDeleteEmptyFolders">${LabelDeleteEmptyFolders}</label>
|
|
<div class="fieldDescription">${LabelDeleteEmptyFoldersHelp}</div>
|
|
</li>
|
|
</ul>
|
|
|
|
<ul data-role="listview" class="ulForm">
|
|
<li>
|
|
<button type="submit" data-role="none" class="clearButton">
|
|
<paper-button raised class="submit block"><iron-icon icon="check"></iron-icon><span>${ButtonSave}</span></paper-button>
|
|
</button>
|
|
</li>
|
|
|
|
</ul>
|
|
</form>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|