{"description":"The File Area List Module The built in file_area_list module provides a very flexible file listing UI.","headline":"File Area List","url":"/enigma-bbs/modding/file-area-list.html","dateModified":"2023-05-11T18:07:54+00:00","@type":"BlogPosting","datePublished":"2023-05-11T18:07:54+00:00","mainEntityOfPage":{"@type":"WebPage","@id":"/enigma-bbs/modding/file-area-list.html"},"publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"/enigma-bbs/assets/images/enigma-logo.png"}},"@context":"https://schema.org"}</script>
<li><codeclass="language-plaintext highlighter-rouge">art</code>: Sub-configuration block used to establish art files used for file browsing:
<ul>
<li><codeclass="language-plaintext highlighter-rouge">browse</code>: The main browse screen.</li>
<li><codeclass="language-plaintext highlighter-rouge">details</code>: The main file details screen.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsGeneral</code>: The “general” tab of the details page.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsNfo</code>: The “NFO” viewer tab of the detials page.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsFileList</code>: The file listing tab of the details page (ie: used for listing archive contents).</li>
<li><codeclass="language-plaintext highlighter-rouge">help</code>: The help page.</li>
</ul>
</li>
<li><codeclass="language-plaintext highlighter-rouge">hashTagsSep</code>: Separator for hash entries. Defaults to “, “.</li>
<li><codeclass="language-plaintext highlighter-rouge">isQueuedIndicator</code>: Indicator for items that are in the users download queue. Defaults to “Y”.</li>
<li><codeclass="language-plaintext highlighter-rouge">isNotQueuedIndicator</code>: Indicator for items that are <em>not</em> in the users download queue. Defaults to “N”.</li>
<li><codeclass="language-plaintext highlighter-rouge">userRatingTicked</code>: Indicator for a items current <em>n</em>/5 “star” rating. Defaults to “*”. <codeclass="language-plaintext highlighter-rouge">userRatingTicked</code> and <codeclass="language-plaintext highlighter-rouge">userRatingUnticked</code> are combined to build strings such as “***–” for 3/5 rating.</li>
<li><codeclass="language-plaintext highlighter-rouge">userRatingUnticked</code>: Indicator for missing “stars” in a items <em>n</em>/5 rating. Defaults to “-“. <codeclass="language-plaintext highlighter-rouge">userRatingTicked</code> and <codeclass="language-plaintext highlighter-rouge">userRatingUnticked</code> are combined to build strings such as “***–” for 3/5 rating.</li>
<li><codeclass="language-plaintext highlighter-rouge">webDlExpireTimeFormat</code>: Presents the expiration time of a web download URL. Defaults to current theme → system <codeclass="language-plaintext highlighter-rouge">short</code> date/time format.</li>
<li><codeclass="language-plaintext highlighter-rouge">webDlLinkNeedsGenerated</code>: Text to present when no web download link is yet generated. Defaults to “Not yet generated”.</li>
<li><codeclass="language-plaintext highlighter-rouge">webDlLinkNoWebserver</code>: Text to present when no web download is available (ie: webserver not enabled). Defaults to “Web server is not enabled”.</li>
<li><codeclass="language-plaintext highlighter-rouge">notAnArchiveFormat</code>: Presents text for the “archive type” field for non-archives. Defaults to “Not an archive”.</li>
<li><codeclass="language-plaintext highlighter-rouge">uploadTimestampFormat</code>: Timestamp format for <codeclass="language-plaintext highlighter-rouge">xxxxxxInfoFormat##</code>. Defaults to current theme → system <codeclass="language-plaintext highlighter-rouge">short</code> date format. See also <strong>Custom Info Formats</strong> below.</li>
</ul>
<p>Remember that entries such as <codeclass="language-plaintext highlighter-rouge">isQueuedIndicator</code> and <codeclass="language-plaintext highlighter-rouge">userRatingTicked</code> may contain pipe color codes!</p>
<h2id="custom-info-formats">Custom Info Formats</h2>
<p>Additional <codeclass="language-plaintext highlighter-rouge">config</code> block entries can set <codeclass="language-plaintext highlighter-rouge">xxxxxxInfoFormat##</code> formatting (where xxxxxx is the page name and ## is 10…99 such as <codeclass="language-plaintext highlighter-rouge">browseInfoFormat10</code>) for the various available pages:</p>
<ul>
<li><codeclass="language-plaintext highlighter-rouge">browseInfoFormat##</code> for the <codeclass="language-plaintext highlighter-rouge">browse</code> page. See <strong>Browse Page</strong> below.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsInfoFormat##</code> for the <codeclass="language-plaintext highlighter-rouge">details</code> page. See <strong>Details Page</strong> below.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsGeneralInfoFormat##</code> for the <codeclass="language-plaintext highlighter-rouge">detailsGeneral</code> tab. See <strong>Details Page - General Tab</strong> below.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsNfoInfoFormat##</code> for the <codeclass="language-plaintext highlighter-rouge">detialsNfo</code> tab. See <strong>Details Page - NFO/README Viewer Tab</strong> below.</li>
<li><codeclass="language-plaintext highlighter-rouge">detailsFileListInfoFormat##</code> for the <codeclass="language-plaintext highlighter-rouge">detailsFileList</code> tab. See <strong>Details Page - Archive/File Listing Tab</strong> below.</li>
</ul>
<h2id="theming">Theming</h2>
<h3id="browse-page">Browse Page</h3>
<p>The browse page uses the <codeclass="language-plaintext highlighter-rouge">browse</code> art described above. The following MCI codes are available:</p>
<li><codeclass="language-plaintext highlighter-rouge">{fileName}</code>: File name (long).</li>
<li><codeclass="language-plaintext highlighter-rouge">{desc}</code>: File short description (user entered, FILE_ID.DIZ, etc.).</li>
<li><codeclass="language-plaintext highlighter-rouge">{descLong}</code>: File’s long description (README.TXT, SOMEGROUP.NFO, etc.).</li>
<li><codeclass="language-plaintext highlighter-rouge">{uploadByUserName}</code>: User name of user that uploaded this file, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{uploadByUserId}</code>: User ID of user that uploaded this file, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{userRating}</code>: User rating of file as a number.</li>
<li><codeclass="language-plaintext highlighter-rouge">{userRatingString}</code>: User rating of this file as a string formatted with <codeclass="language-plaintext highlighter-rouge">userRatingTicked</code> and <codeclass="language-plaintext highlighter-rouge">userRatingUnticked</code> described above.</li>
<li><codeclass="language-plaintext highlighter-rouge">{areaTag}</code>: Area tag.</li>
<li><codeclass="language-plaintext highlighter-rouge">{areaName}</code>: Area name or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{areaDesc}</code>: Area description or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{fileSha256}</code>: File’s SHA-256 value in hex.</li>
<li><codeclass="language-plaintext highlighter-rouge">{fileMd5}</code>: File’s MD5 value in hex.</li>
<li><codeclass="language-plaintext highlighter-rouge">{fileSha1}</code>: File’s SHA1 value in hex.</li>
<li><codeclass="language-plaintext highlighter-rouge">{fileCrc32}</code>: File’s CRC-32 value in hex.</li>
<li><codeclass="language-plaintext highlighter-rouge">{estReleaseYear}</code>: Estimated release year of this file.</li>
<li><codeclass="language-plaintext highlighter-rouge">{dlCount}</code>: Number of times this file has been downloaded.</li>
<li><codeclass="language-plaintext highlighter-rouge">{byteSize}</code>: Size of this file in bytes.</li>
<li><codeclass="language-plaintext highlighter-rouge">{archiveType}</code>: Archive type of this file determined by system mappings, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{archiveTypeDesc}</code>: A more descriptive archive type based on system mappings, file extention, etc. or “N/A” if it cannot be determined.</li>
<li><codeclass="language-plaintext highlighter-rouge">{shortFileName}</code>: Short DOS style 8.3 name available for some scenarios such as TIC import, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{ticOrigin}</code>: Origin from TIC imported files “Origin” field, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{ticDesc}</code>: Description from TIC imported files “Desc” field, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{ticLDesc}</code>: Long description from TIC imported files “LDesc” field joined by a line feed, or “N/A”.</li>
<li><codeclass="language-plaintext highlighter-rouge">{uploadTimestamp}</code>: Upload timestamp formatted with <codeclass="language-plaintext highlighter-rouge">browseUploadTimestampFormat</code>.</li>
<li><codeclass="language-plaintext highlighter-rouge">{hashTags}</code>: A string of hash tags(s) separated by <codeclass="language-plaintext highlighter-rouge">hashTagsSep</code> described above. “(none)” if there are no tags.</li>
<li><codeclass="language-plaintext highlighter-rouge">{isQueued}</code>: Indicates if a item is currently in the user’s download queue presented as <codeclass="language-plaintext highlighter-rouge">isQueuedIndicator</code> or <codeclass="language-plaintext highlighter-rouge">isNotQueuedIndicator</code> described above.</li>
<li><codeclass="language-plaintext highlighter-rouge">{webDlLink}</code>: Web download link if generated else <codeclass="language-plaintext highlighter-rouge">webDlLinkNeedsGenerated</code> or <codeclass="language-plaintext highlighter-rouge">webDlLinkNoWebserver</code> described above.</li>
<li><codeclass="language-plaintext highlighter-rouge">{webDlExpire}</code>: Web download link expiration using <codeclass="language-plaintext highlighter-rouge">webDlExpireTimeFormat</code> described above.</li>
</ul>
</li>
</ul>
<h3id="details-page">Details Page</h3>
<p>The details page uses the <codeclass="language-plaintext highlighter-rouge">details</code> art described above. The following MCI codes are available:</p>
<li><codeclass="language-plaintext highlighter-rouge">%XY2</code>: Info area’s top X,Y position.</li>
<li><codeclass="language-plaintext highlighter-rouge">%XY3</code>: Info area’s bottom X,Y position.</li>
<li>MCI 10…99: Custom entries with the format options described above in <strong>Browse Page</strong> via the <codeclass="language-plaintext highlighter-rouge">detailsInfoFormat##</code><codeclass="language-plaintext highlighter-rouge">config</code> block entry.</li>
</ul>
<h3id="details-page---general-tab">Details Page - General Tab</h3>
<p>The details page general tab uses the <codeclass="language-plaintext highlighter-rouge">detailsGeneral</code> art described above. The following MCI codes are available:</p>
<ul>
<li>MCI 10…99: Custom entries with the format options described above in <strong>Browse Page</strong> via the <codeclass="language-plaintext highlighter-rouge">detailsGeneralInfoFormat##</code><codeclass="language-plaintext highlighter-rouge">config</code> block entry.</li>
<p>The details page nfo tab uses the <codeclass="language-plaintext highlighter-rouge">detailsNfo</code> art described above. The following MCI codes are available:</p>
<ul>
<li>MCI 1 (ie: <codeclass="language-plaintext highlighter-rouge">%MT1</code>): NFO/README viewer using the entries <codeclass="language-plaintext highlighter-rouge">longDesc</code>.</li>
<li>MCI 10…99: Custom entries with the format options described above in <strong>Browse Page</strong> via the <codeclass="language-plaintext highlighter-rouge">detailsNfoInfoFormat##</code><codeclass="language-plaintext highlighter-rouge">config</code> block entry.</li>
<p>The details page file list tab uses the <codeclass="language-plaintext highlighter-rouge">detailsFileList</code> art described above. The following MCI codes are available:</p>
<ul>
<li>MCI 1 (ie: <codeclass="language-plaintext highlighter-rouge">%VM1</code>): List of entries in archive. Entries are formatted using the standard <codeclass="language-plaintext highlighter-rouge">itemFormat</code> and <codeclass="language-plaintext highlighter-rouge">focusItemFormat</code> properties of the view and have all of the format options described above in <strong>Browse Page</strong>.</li>
<li>MCI 10…99: Custom entries with the format options described above in <strong>Browse Page</strong> via the <codeclass="language-plaintext highlighter-rouge">detailsFileListInfoFormat##</code><codeclass="language-plaintext highlighter-rouge">config</code> block entry.</li>