Attachment Browser

Started by shawnb61, May 09, 2022, 02:32:15 PM

Previous topic - Next topic

shawnb61

Link to the mod

Description:
The Attachment Browser lets you browse, filter & sort attachments, while honoring user access.

A simple tagging system is provided.  Categories of tags are supported.  Each tag belongs to a single category, and each tag may have one or more aliases. 

A form is also provided to allow users to add or remove tags from their attachments.  Admins may also update tags.  To update the tags on an attachment, click on the tags value when browsing.

Auto Tagging:
When an attachment is added to a post, the message subject and body are scanned for tags & their aliases.  The board and category names & descriptions are also scanned.  If found, the tags are associated with the attachment.

There is also a bulk Auto Tag admin feature, where all existing attachments can be auto-tagged.  You may choose to run this after you configure your tags so historical attachments are included.  The Auto Tag process can be re-run - tags found are added to the existing list.

For example, if you have different boards set up for different products in your forum, with tags that correspond to the products, you can easily filter by product.

Tag Filters:
When using the tags to filter the list of attachments, the search utilizes ANDs across tag categories, and ORs within tag categories.

A "Search Again" button is provided to allow the user to refine the filter.

Limitations:
 - Only 255 characters of tag info per attachment are supported.  You need to find the right level of categorization.
 - The focus is attachments - avatars & thumbnails are excluded.
 - Performance is a concern given the flexibility provided.  This mod may not be appropriate for extremely large forums.  In testing, for forums with less than 20K attachments, performance is sub-second.  For a forum with 500K attachments, performance is ~2-6 seconds per page. YMMV. The more filters used to narrow the result set, the better!

Releases:
 - v1.10 Added German translations
 - v1.9 Addresses array offset on null error
 - v1.8 Addresses undefined error
 - v1.7 Added Spanish translations
 - v1.6 Initial public release

Acknowledgements:
 - Thanks to Bugo for the Russian translation!
 - Thanks to @ rjen for the Dutch translation!
 - Thanks to -Rock Lee- for the Spanish translations!
 - Thanks to AllMassive for the German translations!
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

shawnb61

Probably the hardest thing about using this mod is figuring out what your tags and tag categories should be.

If your forum has categories & boards established in a hierarchical fashion, where categories & boards are dedicated to something specific & distinct from the other categories & boards, such as products, tv shows, characters, movies, toys, technologies, etc., then start there.

If your forum is more general purpose, it is possible this mod won't really help your users.

However, if folks are drawn to your forum in part for attachments (patches, songs, plans, diagrams, drawings, reviews, etc.), then this mod may be of benefit.
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

Antechinus

I can see this being very useful for some sites.

shawnb61

Quote from: Antechinus on May 09, 2022, 04:38:35 PMI can see this being very useful for some sites.

Yeah. Despite heroic efforts to structure our site, folks post patches all over the place.

It's nice to be able to find which ambient SY-1000 patches are most popular, in one list, no matter where they were posted:
You cannot view this attachment.
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

-Rock Lee-

I make my quick way over here to drop off the translation into Spanish es and latam ::).


Regards!
¡Regresando como cual Fenix! ~ Bomber Code
Ayudas - Aportes - Tutoriales - Y mucho mas!!!

shawnb61

Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

Gryzor

Works great as a list, it'd be nice to have a gallery mode too!

One question: how are download counts calculated? I run a pretty niche forum (for the Amstrad CPC range of 8-bit computers) and the top-downloaded attachment has over 14K downloads?! I doubt there are that many users of the CPC worldwide, so I don't know what to make of it :)

shawnb61

The mod is displaying SMF's download count, which increases every time someone clicks on a download link.

If the same user downloads a doc multiple times over the years, those are all counted. 

I see high download counts for reference materials - folks use the site as storage, & redownload docs every time they need them...
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

Gryzor

Yeah, I guess that's a SMF issue then - no way my top download has 15K+ legit downloads, we're talking about a version of a ROM file for an obscure OS someone designed in their spare time, whereas much more popular files like games have much lower counts...

shawnb61

v1.9 - New version uploaded that corrects a couple minor errors.
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

shawnb61

As an example of categories & tags, this is what we are using on our forum. 

Our forum (https://vguitarforums.com) is for users of guitar synthesizers and modelers.  These are effects boxes that make your guitar rig sound like other guitars/amps/instruments. 

The categories we have setup are:

Effect - Delay, distortion, reverb, etc.
Instrument - What are you trying to emulate?  A sax?  A Gibson 335?  A 12-string acoustic guitar?  The early GR-300 guitar synth?  A piano?
Model - What gear are you using?  Variax?  Boss SY-1000?  Roland VG-99?
Qualities - This is a bit more squishy, and generally refers to a list of artists (Adrian Belew, Pat Metheny), amps (1959, tweed), and styles (blues, prog, acid, worship).

You cannot view this attachment.
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

dodos26


shawnb61

Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

AllMassive

seems i'm too dumb to find the way to attach a file to this post - heres the german translation.

$txt['attbr_list'] = 'Liste der Anhänge';
$txt['attbr_browse'] = 'Dateien durchsuchen';
$txt['attbr_filter'] = 'Filtern nach';
$txt['attbr_search'] = 'Suche nach Anhängen';
$txt['attbr_editattachtags'] = 'Tags der Anhänge bearbeiten';
$txt['attbr_desc'] = 'Wartung der im Attachment Browser verwendeten Tags durchführen';

$txt['attbr_tags'] = 'Tags des Anhangs';
$txt['attbr_tagmaint'] = 'Wartung der Tags';

$txt['attbr_add_tag'] = 'Tag hinzufügen/ändern';
$txt['attbr_category'] = 'K';
$txt['attbr_category_desc'] = 'Gruppe von Tags (max. 25 Zeichen)';
$txt['attbr_tag'] = 'Tag';
$txt['attbr_tag_desc'] = 'Tags sind alphanumerisch und dürfen keine für URLs reservierten Zeichen enthalten (max. 25 Zeichen)';
$txt['attbr_aliases'] = 'Aliasnamen';
$txt['attbr_aliases_desc'] = 'Kommaseparierte Liste von Tag-Aliasen (max. 50 Zeichen)';

$txt['attbr_delete_tag'] = 'Tag löschen';

$txt['attbr_bad_tag'] = 'Ungültiger Wert für den Tag';
$txt['attbr_bad_aliases'] = 'Ungültige Alias-Liste';
$txt['attbr_bad_cat'] = 'Ungültiger Wert für Kategorie';
$txt['attbr_too_many'] = 'Zu viele Tags ausgewählt';
$txt['attbr_too_long'] = 'Zu viele Tags für Anhang %1$s';

$txt['attbr_autotag'] = 'Auto-Tag';
$txt['attbr_autotag_desc'] = 'Mit dieser Funktion werden alle Anhänge automatisch getaggt';
$txt['attbr_start'] = 'Start';
$txt['attbr_resume'] = 'Fortsetzen'; 
$txt['attbr_complete'] = 'Fertig';
$txt['attbr_continue'] = 'Weiter';

$txt['viewing_attachs'] = 'Anzeigen der Anhänge von %1$s bis %2$s';
$txt['of_total_attachs'] = 'von insgesamt %1$s Anhängen';

shawnb61

Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

shawnb61

@AllMassive - did you have translations for the first set of entries, or were you using the English translations for those?
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

AllMassive

@shawnb61 : sorry - missed some lines :/

$txt['filename'] = 'Dateiname';
$txt['poster_name'] = 'Beitrag von';
$txt['fileext'] = 'Erweiterung';
$txt['fileext_long'] = 'Dateierweiterung';
$txt['filesize'] = 'Dateigrösse';
$txt['tags'] = 'Tags';
$txt['submit'] = 'Senden';
$txt['return'] = 'Zurück';

$txt['attbr_list'] = 'Liste der Anhänge';
$txt['attbr_browse'] = 'Dateien durchsuchen';
$txt['attbr_filter'] = 'Filtern nach';
$txt['attbr_search'] = 'Suche nach Anhängen';
$txt['attbr_editattachtags'] = 'Tags der Anhänge bearbeiten';
$txt['attbr_desc'] = 'Wartung der im Attachment Browser verwendeten Tags durchführen';

$txt['attbr_tags'] = 'Tags des Anhangs';
$txt['attbr_tagmaint'] = 'Wartung der Tags';

$txt['attbr_add_tag'] = 'Tag hinzufügen/ändern';
$txt['attbr_category'] = 'Kategorie';
$txt['attbr_category_desc'] = 'Gruppe von Tags (max. 25 Zeichen)';
$txt['attbr_tag'] = 'Tag';
$txt['attbr_tag_desc'] = 'Tags sind alphanumerisch und dürfen keine für URLs reservierten Zeichen enthalten (max. 25 Zeichen)';
$txt['attbr_aliases'] = 'Aliasnamen';
$txt['attbr_aliases_desc'] = 'Kommaseparierte Liste von Tag-Aliasen (max. 50 Zeichen)';

$txt['attbr_delete_tag'] = 'Tag löschen';

$txt['attbr_bad_tag'] = 'Ungültiger Wert für den Tag';
$txt['attbr_bad_aliases'] = 'Ungültige Alias-Liste';
$txt['attbr_bad_cat'] = 'Ungültiger Wert für Kategorie';
$txt['attbr_too_many'] = 'Zu viele Tags ausgewählt';
$txt['attbr_too_long'] = 'Zu viele Tags für Anhang %1$s';

$txt['attbr_autotag'] = 'Auto-Tag';
$txt['attbr_autotag_desc'] = 'Mit dieser Funktion werden alle Anhänge automatisch getaggt';
$txt['attbr_start'] = 'Start';
$txt['attbr_resume'] = 'Fortsetzen';
$txt['attbr_complete'] = 'Fertig';
$txt['attbr_continue'] = 'Weiter';

$txt['viewing_attachs'] = 'Anzeigen der Anhänge von %1$s bis %2$s';
$txt['of_total_attachs'] = 'von insgesamt %1$s Anhängen';

shawnb61

Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

shawnb61

v1.10 - New version uploaded that adds the German translations.
Address the process rather than the outcome.  Then, the outcome becomes more likely.   - Fripp

brunog14

Good morning,
Great Mod!! THANKS...

I took the liberty of doing a French translation.

Excellent day.

Advertisement: