Site updates October 2020
October 19th 2020
- Fix torrents_comments
- Fix comment link for torrents/collages
- Fix collage comment checking tool
- Fix torrent comment checking tool
- Fix tagmanager.js
- Fix tag manager Javascript tie-in
- Fix Javascript dererential loading
- Fix StyleName mapping
- Fix TPL function issues
- Final ChatPlugin fix
- Fix ChatPlugin
- Update torrent thanks
- Fix group cover image
- Update default database collation and character set
- Minor style tweak to feeds
- Fix latest forum posts layout
- Convert chat.php into Luminance Plugin
- Fix reported title addendum
- Fix layout of stats links on home page
- Add forums to stats and fix graph background rendering
- Move split_tags() to main_functions
- Better error handling in SetupPlugin
- Convert tag synonym to entity
- Make developer entity generation a little more robust
- Fix global typo of synomyn
- Fix typo in disabled_hits PM
- Convert user IP search query to prepared statement
- Fix torrent edit unlock
- Fix post counting for forum
- Fix donation address querying
- Remove old dead code from Repository class
- More fixes for readyToResend
- Harden ORM methods to throw better errors when data is passed incorrectly
- Fix display issues on security page
- Add webp to list of image extensions
- Add safety code for email history
- Safety code for column renames
- Even more cleanup for details page
- Fix thanks migration
- More cleanup to details page
- More cleanup of the torrent details page
- Modify styles to collect some common CSS code
- Reset BanReason when an account is enabled
- Add secure function to TPL service
- Fix access leak in staffpm tag
- Fix preview rendering restrictions
- Template torrent_username function
- Create Torrent and TorrentGroup Entities
- Fix username rendering on details page
- Cleanup details page
- Fix report comment restriction
- Migrate collages and torrents onto new comment system
- Change 'default' => 'NULL' to 'default' => null in entities
- Fix torrent comments
- Add comment restriction to requests too
- Fix holes in the restirction system for torrent and collage comments
- Add commenting restriction
- Move userpage template
- Minor fixes for torrent details page template
- Fix review status display on details page
- Add some logging to user inactivity disable in scheduler
- Tweak Plugins\SetupPlugin::updateStyles()
- Fix README typo
- Template torrent details page
- Fix bug in Stylesheet repo
- Remove redundant UFL function
- Update stylesheet system
- Create ORM Repository and Entity for bonus_shop_items
- Fix more SQL typos in scheduler
- Fix SQL typo in scheduler
- Fix potential apcu clash
- Increase top tags/contributors in collages from 5 to 10
- Fix bug in SetupPlugin::update()
- Remove unnecessary DB queries from thread moderation
- Fix forum thread title handling during split/merge
- Fix bug in Services/Cache::enable()
- Fix some Javascript issues
- Perfromance fix for userpage loading as a regular user
- Improve debug tools
- Add TPL::static() method to access static members from templates
- Better template debugging
- Fix debug flags
- Add links to Security Logs and Disabled Hits tools
- Fixup references to users_history_ips
- Slightly better implementation for dupe limit
- Fix bug in main_functions.php:getStaffPMSubject()
- Upgrade IP history table and migrate data
- Remove errant space from new post(s) text
- Improve PHP ParseError error logs
- Fix bug in Forum enitity
- Fix forum management category dropdown
- Add capability to enforce unique torrents
- Cleanup tools page generation
- Fix prune tables
- A few more IP history fixes for linked functions
- Fix bugs in IP history queries
- Fix IP history recording
- Minor bugfixes
- Fix a couple of typos in entities
- Fix bug in configure for settings
- Fix permissions for presentation cloning
- Better error messages for repository errors
- Fix TagList parsing during presentation clone
- Allow staff to clone torrents
- Add ability for uploader to clone presentation
- Filter out radiance rejections form the logs
- Add user_info.AdminComment to URL rewriter fields
- Add extra debug to Core\Repository::save()
- Update Entity: rintState() to return string rather than output directly
- Fix IP history bug for 2FA users
- Fix column sorting in notifications page
- Improve DB error message
- Add a cast to array to avoid warning in main_functions.php::display_array()
- Big cleanup in scheduler
- Extend forum token timeouts to 24 hours (default)
- Fix a couple of minor warnings
- Remove Legacy table definition for invite_tree
- Fix stupid bug in Entities where circular virtual attributes would crash the system
- Fix result index in Legacy InviteTree
- Fix pagination on invite trees
- Another little tweak there
- Minor HTML tweak for invite tree
- Paginate invite tree
- Skip users already in the tree
- A few improvements to the InviteTree generation
- Clarify cover image error message
- Update invite tree render logic
- Fix bug in invite tree generation
- Correct rebuilding of invite trees and invite tree management
- Also include the actual fix for those null attributes
- Prevent entities from locally caching null attributes
- Remove unnecessary repositories
- Introduce Entities/InviteTree
- Cleanup DeveloperPlugin a little
- Cleanup automagic attributes in Entities\User
- Smarter entity handling
- Some more cache handling
- Remove dead code from Core/Repository::loadFromCache()
- Fix display of user flow graph in StatsPlugin
- Remove error.php Legacy endpoint
- Better path checking in LegacyPlugin
- Small tweaks to ForumPlugin
- Fix log parsing
- Better cache key for invites
- Fix issue in InviteManager
- Fix another bug in client repo
- Fix bug in client repo
- Add user dropdown to inbox
- Fix styling issue in Sarandafl theme
- Fix styling issue in Hempornium theme
- Add error catching to automatic IP range bans
- Fix styling issue in Rochelle theme
- Fix more caching issues
- Fix a bunch of caching issues
- Fix typo in Auth service
- Fix caching for new users
- Migrate old constant to new Luminance setting
- Tweak StaffPM styling
- Trying to fix user dropdown in PMs
- Fix afterdark colors in user dropdown
- Wrap post preview just as the actual content would be
- Fix comment history arrow text
- Fix comment history clickable arrow
- Fix readability of New! in Post History
- Fix Subscribe/Unsubscribe links in post history.
- Fix donation page styling
- Fix post edit/revert logic for Forums
- Fix email repository->get caching
- Fix empornium style
- Migrate post editing and reverting to Luminance Forum Plugin
- Set a cache expiry in Core/Repository::get()
- Fix another typo in Core/Repository.php
- Update styles ready for new forum post control HTML
- Define $user variable before accessing it in ForumPlugin
- Fix getUserName() common function
- Fix typo in Core/Repository.php
- Fix catchup logic
- Slight performance improvement for forum unread logic
- Cleanup some language in Forum templates
- Refine the unread post count logic
- Remove automatic query caching
- Avoid loading a stupid number for forum posts to get the unread count
- Meh, probably a better solution, but ugly!
- Yuk!
- Make New! green for modern style as well.
- Clarify post icons with hasUnread() function
- Slight performance boost
- Reintroduce the (New!) tag to forum post histories
- Fix staff multi-voting
- Fix post history viewing for users and thread subscriptions from post history page
- Add option to delete poll
- Migrate poll moderation to Luminance Forum plugin
- Migrate change vote function to Luminance Forum plugin
- Migrate add/remove poll option to Luminance Forum plugin
- Migrate poll voting to Luminance Forum plugin
- Fix poll indexes
- Fix dupechecker's reference to known file types datastructure
- Move staff_poll template into forum snippets
- Update forum rules edit link
- Use cache when loading thread details for rules
- Migrate forum rule to Luminance Forum Plugin
- Add tooltips to filetypes
- Fix ebup file typo
- Remove '.ogg' from list of video file extensions
- Silence HIBP errors for now
- Migrate filetypes to new system with SVG icons
- Cleanup subscriptions a bit
- Migrate post history to TWIG template
- Remove unnecessary loop in forum search
- Rewrite URLs for the recent forum posts tool
- Improve query performance for recent forum posts tool
- Also link to thread from all forum posts
- Migrate recent forum posts to Luminance Forum Plugin
- Refuse to accept uploads with hidden files/folders in the root
- Migrate forum management tool to Luminance
- Fix version of the link rewriter... I hope
- Update link rewriters a little
- Update unread posts links
- Extend token acceptance time to 2 hours for new threads and replies
- Fix stats pages
- Whoops, PHP doesn't use TWIG syntax... obviously
- Fix layout issue on subscriptions page
- Rework post merging
- Final two check_perms instances
- Refactor TWIG templates to use auth.isAllowed instead of legacy check_perms
- Trim dead code from takereport.php
- Ensure we can resolve ASNs in AuthenticationPlugin
- Get lastRead status directly from repository in ForumPlugin
- Fix links on forum subscriptions page
- Restyle subscriptions page a little more
- Restyle forum subscriptions some more
- Fix CSS classes on hidden forum subscription posts
- Migrate forum subscriptions to TWIG template
- Improve BBCode cleanup function and remove dead Legacy forum endpoints
- Migrate forum reply to Luminance
- Fix BBCode table transparency in rochelle theme
- Ensure IPs are handled correctly and checked for existence by the security repo
- Migrate a bunch of old service/repo accesses to native
- Add cache service to AuthenticationPlugin
- Rework forum subscription SQL
- Disable scheduled tag recount for now
- Derp
- Cleanup some leftover quotes in the upload logic
- Filter dupecheck on non zero unique matches instead of non empty dupelist
- Add easier link to MFD reason editor
- Fix the username filter on the userpage too
- Remove username filtering from moderation endpoint
- Normalize line endings during edit as well as upload
- Place tag auto-complete hover div vertically on caret
- Ensure that errors thrown during post deletion are rendered as JSON
- Fix BBCode error rendering
- Fix time functions
- Fix association of blank vote to the correct radial select
- Upgrade the decode filter for TWIG
- Well dammit that was stupid
- Okay, straight conversion won't work... need to decode
- Catch numeric entities in the title conversion as well
- Convert forum thread titles
- Fix ratiowatch message on userpage
- Fix forum post deletion bug
- Whooopsies
- Add site option to control automatic post timelock
- Tweak thread/forum HTML layout
- Fix afterdark CSS issue
- Fix cache bug in public requests
- Fix pinned posts
- Use a different strategy for normalizing line endings
- Migrate forum post delete to Luminance function
- Remove remnants of StickyPostID DB column
- God dammit, spoke too soon... Another final fix for sticky post migration
- Final fix for sticky post migration
- Add pernament version index to torrents_files
- Actually start recording the torrent file version
- Fix sticky post migration queries
- Migrate forum sticky posts to Luminance Flag
- Even better message length control
- Remove extra space from reportv2 announce message
- Allow code inside automatic codeblocks to wrap
- Fix promotions to *NOT* promote warned users
- Automatically handle code blocks correctly
- Update prism to 1.20.0
- Fix typo: had an extra space in the regex
- Remove extra space from report announce message
- Slight code layout tweak
- Limit IRC announce taglist to 256 characters
- Use corrected tags for torrent announcements
- Fix autodl regex typo for size
- Integrate previous regex cleanup from autodl upstream
- Fix a minor typo in the luminance.tracker file
- Update announce pattern
- Remove the unnecessary space after 'anon'
- Add Irker announce for other reports
- Add Irker announce for torrent reports
- Fix anon username handling for staff uploads (shouldn't be happening, but for completeness)
- Prevent Irker errors from halting the upload process
- Fix dupe reports
- Fix stupid bug in Legacy forum code
- Remove almost all references to db_string from legacy forum code
- Fix code style in Articles plugin
- Minor tweak to irker options text
- Fix tag uses count regeneration query
- Minor tweaks to tracker and irker services
- Fix tag count recalculation batch query
- Migrate irker config to site options
- Fix 6 digit unicode characters in the DB class functions
- First cut of Irker integration
- Require both username and email address for account reactivation.
- Fix public page CSS for next version of Chrome
- Add reactivate to login watch filter
- Fix linked panel link/unlink
- Cleanup SQL in badge award scheduler
- Fix mass award bug
- Switch tracker comms to cURL
- Fix user dupes comment autoescapeing
- Fix warning status in username template
- Fix performance info display
- Fix page layout on the user search page
- Catch SystemError from failed peer history migration
- Modify the way exceptions are handled in the DB Service
- Update the bbCode replacement columns
- Fix broken references to Secretary::getHttpRemoteFile()
- Fix Secretary::checkRemoteUpdate()
- Extend public request checking to summoned status
- Fix SQL error in main_functions.php::getForwardedPostData()
- Fix scheduler performance issue
- Migrate Password and Passkey histories into IPv6 capable entities
- Fix imagehost whitelist links
- Migrate some Legacy tables to Entities
- Extend deduplication checker to unique indexes
- Forgot to add public request users to the tracker... ooops
- A few IP bans tweaks
- Use the cached repository version of imagehost whitelist everywhere
- Fix Automated ban "Reason"
- Reduce IPv4 range bans from /16 to /24
- A few fixes in the scheduler
- Add unique index to ips
- Add ip table deduplication
- Fix automated IP range bans and extend to cover IPv6
- Even better IP ban searching
- Fix IP ban search
- Fix Summary.txt for bookmark collector function
- Fix disabled hits message format
- Fix broken reference to Entities\IP::getRange()
- Update GeoPHP to a better fork and fix distance calculation
- More SQL filtering for IP migration
- Fix iterating on empty array rather than null object
- Improve IP migration queries
- Add legacy IP migration to SetupPlugin
- Fix broken references to IPRepository::getOrNew()
- Fix last activity in public request manager
- Update the request flood system to include reactivations
- Add Text class work-around to Articles plugin
- Fix broken references on user security page
- Why did that JS end up using tabs instead of spaces? Silly editor.
- Maybe a better jQuery work around
- Fix broken references to Restriction::isWarning()
- Fix request pagination layout
- Add pagination to public requests
- Make reports per page configurable
- Reverse order of old public requests
- Add public requests stats
- Add Summon option to reactivation requests
- Someone forgot to add a WHERE condition in that query... tut, tut, tut.
- Fix broken referneces to RestrictionRepository::checkUser()
- Fix broken references to Restriction::getRestrictions()
- Fix dupe linking in public requests manager
- Fix cache handling for public request count
- Fix poll label associations
- Fix errors if geoip cannot be resolved to a location
- Add public reactivation request
- Fix articles pretty links generation
- Add articles link rewriter
- Move user dupes to a less shitty place
- Move articles endpoint to articles/view
- Add inactivity exception to users being enabled
- Fix SQL type in main_functions.php
- Minor formatting fix in Entities::GeoLite.php
- Minor JS formatting fix
- Fix auto subscribe on new thread creation
- Update some DB queries is main_functions.php
- Fix main_functions.php::delete_torrent()
- Fix broken reference to InviteRepository::diableCache()
- Fix broken reference to EmailManager::sendConfirmation()
- Fix broken reference to Auth::twofactorEnable
- Fix broken reference to Auth::twofactorDisable()
- Fix broken references to Render::forumSelect()
- Update site options
- Fix legacy redirects
- Fix slot machine print_payout_table()
- Fix the slotmachine... fucking global variables!
- Fix typo in main_functions::update_site_options()
- Fix broken reference to Auth::twofactorCreateSecret() and Auth::checkPassword()
- Fix broken reference to Auth::setPassword()
- Fix broken reference to Stlesheet::getFilename()
- Fix broken reference to Guardian::logReset()
- Rewrite most of poll_mod.php
- Fix forum post delete
- An even better fix
- Fix bug in thread moderation
- Fix broken references to sendEmail()
- Fix src for default avatar on subscriptions page
- Fix broken reference to Guardian::logDisabled()
- Fix broken reference to ORM::getTableSpecification()
- Fix broken reference to RestrictionRepository::checkRestricted()
- Fix broken references to Guardian::logAttempt()
- Fix references to heavyInfo()
- Fix two factor authentication
- Fix broken class member reference
- Rename twofactor templates
- Ninja patches from live site
- Fix email blacklist check
- Huge code cleanup for legacy globals
- Some cleanup from PHPSTAN
- Cache per-user invite status
- Fix header check in Core\Request::setHttpHeaders()
- Even more caching in the forum magic access members
- Fix forums and improve performance
- Fix calls to UserRepository::getByUsername and EmailRepository::getByAddress
- Fix Secretary::createClient()
- SteupPlugin improvements and fixes
- Fix table migration PDOException
- Fix ORM typo
- Enormous code cleanup + torrent edit history
- Rename plotly fetch to update
- Move tools out of Render service into plugins
- Fix coding violations in the Articles Plugin
- Minor updates to tracker stats tool
- Article management functions moved to Article Plugin
- Better regex for dynamic image resizing
- Fixes for user poll display and some improvements to staff polls (still not ready, may delete)
- Add check in getStaffPMSubject that a StaffPM was actually loaded
- Even stronger protections on the upload_handle Legacy endpoint
- Only log tracker errors if debug mode is off
- Add tracker connection timeout and better log messages
- Update tracker stats tool
- Fix missing define in Legacy secton userhistory/ip_history_raw.php
- Fix tools menu order
- Update tools links with new Articles tool URL
- Add getClassByLevel() function to PermissionsRepository
- Fix help search and remove Legacy articles.php endpoint
- Move articles manager tool into ArticlesPlugin
- Update a bunch of legacy queries in main_functions.php
- Update reports code a bit
- Replace newlines in SQL with CHAR() function calls
- Fix potential math error in collages/add_torrent
- Filter out blank tags
- Fix potential array access error in Services/Render
- Fix potential array out of bounds issue in Validation class
- Convert articles section into a Luminance Plugin
- Change key from forums to forum for forum opensearch
- Extend AutoIncrement ID column for xbt_snatched and xbt_peers_history tables to 64bit integer
- Fix missing include for InputError in Crypto service
- Improve error log messages for failed DB queries
- Remove unnecessary included response types from SandBoxPlugin
- Clean up the layout in ForumPlugin a little
- Enhance entity generation from Developer plugin
- Enable anonymous repositories
- A better, more programatic way to build the regex filter list
- Escape smileys before regex filtering
- Convert User sandbox to a Luminance plugin
- Fix basic search rate limit exemption for Staff
- Minor refinements in getStaffPMSubject()
- Also allow users to see the pretty links if it's their StaffPM
- Minor tidy-up in the poll vote code
- Add StaffPM pretty links
- Forum poll votes is getting cleared somehow
- Fix the Dupe PM AGAIN!
- Tweak CSS to prevent signatures stretching posts out
- Fix featured poll logic
- Fix thread layout for polled threads
- Fix show votes logic in forum polls
- Fix taglist overflow wrapping
- Fix list margins
- Tweak poll vote logic to handle cache clearing better
- Fix forum search SQL bug
- Another long line CSS tweak
- Tweak overflow behavior for long lines
- Small tweak to light theme
- Fix list dot centering
- Tweak afterdark unread PM background color
- I derped the signature validation
- Fix minor bug in MFD message
- Fix invite display in advanced search
- Fix post link for unread posts page
- Some template tweaks for unread posts page
- Some tweaks to the unread posts page
- Old Gazelle cookie class is probably not needed anymore. Can't find where it was being used...
- Remove vestigial google chart
- Fix dupecheck to ensure it doesn't confuse filenames with filesizes
- Fix torrent report anti-ninja
- Fix dupe report PM SQL error
- Rework IP ban editing
- Refine the SQL query in user/linkedfunction.php::user_dupes_table()
- Minor cosmetic changes to the user settings page
- Enforce max signature and torrent signature weight
- Derp
- Add divide by zero protection to display_dupes.php
- Add checks for output of parse_url in main_functions.php::validate_imageurl()
- Catch RangeError thrown by DCrypto library
- Well, users can quote so that tag is probably useless.
- Fix unquoted constant in mod_thread.php
- Fix extraneous escape characters in auto-filled torrent title (from folder)
- Fix unsafe foreach in UserRank.php
- Fix unquoted constant
- Remove unnecessary function
- Fix total size header on user torrent pages
- Fix catcup link on unread forums page
- Fix the bitstamp ticker URL for BTC/EUR
- Fixup the donation page a little more
- Fix uninitialized variable warning in Text class
- Add some error checking code to the donations page
- BitcoinAverage now wants an API key... fuck that
- Do not silence tracker communication errors
- Rework the freeleech logic a bit to avoid type warnings
- Minor tweak to BBCode parser
- Collapse all output buffers before starting a ZipStream download
- Update URL validation regex
- Fix minor bug after BBCode parser redesign
- Fix PHP non-object warning on a new install's configuration
- Major refactor of the BBCode parser's inline regex logic
- Fix the thread renaming when trashing... shouldn't be forum title at all
- Fix trashing bug in forums
- Fix last read bug
- Fix dupe mass PM wording
- Fix anon username issue
- Fix bug in mod_thread when moving locked threads
- Cleanup some assumptions
- Rework the sitewide freeleech/doubleseed controls
- Extend the permissible length of URLs (bytesize), for some reason mb_strlen isn't working here
- Better URL parsing error messages from the text class
- Extend PFL/PDS options to include 4 weeks
- Add DocBlock for returnJSON() error function
- Fix missing variable in Text class
- Rearrange Error messages for exceptions
- Even better error messages... maybe
- Update error handling a little
- Fix never logged in users not being disabled
- Increase size of restriction comment
- Improve restriction notes
- Fix performance issue in forum subscriptions page
- Fix improper generic exception handling
- Rework the Legacy error integration a bit
- Fix the make default query string logic... wow, that's been broken a long time. :\
- Fix smileys
- Fix Gazelle error rendering
- Fix torrent data inspection pages
- Fix torrent comment quoting
- Convert Gazelle users calls to Luminance in Legacy Text class
- Fix torrent stats tool
- Update torrent stats tool
- Fix the clear new issue
- Some cleanups
- Fix legacy login issues
- Fix login redirect for unlogged users
- Fix error handling for legacy pages
- Fix subscription cache handling
- Tweak escaping for the updated create_thread function
Discuss this post here