Login to download the latest version of Mint and your favorite Pepper, purchase additional licenses, or post in the Forum. Don't have an account? Create one!

In Partnership with Media Temple

Mint Peppermill

Mint

By Shaun Inman

Mint is an extensible web site analytics program. A basic installation—or ”Thin Mint” as it is affectionately called—comes with the Default and Backup/Restore Pepper. For additional functionality, check out the other official and community-developed Pepper.

Additional Info

Release Notes

Latest version
Version 2.19
  • updated abbr() method to improve extended character set support
  • added dbEngine() method to Mint to determine whether ENGINE or TYPE should be used when creating a new table (TYPE became deprecated around MySQL 4.x and unavailable around MySQL 5.5)
  • commented out mysql_close() in record/index.php to prevent crashing bug introduced in PHP 5.3
Version 2.18
  • added a default iPad webclip.png
  • updated JavaScript to prevent panes from disappearing when reorienting the iPad
  • added additional check to prevent potential dataloss
  • changed favicon.ico to favicon.png to enable transparency
  • updated auto.php to be a bit more discerning when ignoring pages that contain just the text ‘frameset’ rather than the tag
Version 2.17
  • fixed Safari 4 “Fix pane height and use scrollbars” bug
  • fixed an IE scrolling bug
  • updated abbr() to break on dashes and underscores
  • added charset=UTF-8 header
Version 2.16
  • Small change to the default Mint Chocolate and Vanilla Mint styles to fix text-shadow styles in Leopard
  • Updated the Default Pepper
  • Clarified activation error message when error is caused by a gateway connection issue
  • Added sanitizeUrl() Pepper method
  • Added ?recover query command to salvage Pepper data that was previously considered beyond repair
Version 2.15
  • Added a check to prevent the saving of partially-loaded and therefore incomplete Preferences
  • Clicking a pane title now scrolls that pane to the top of the window
  • Updated base.css and default styles with new comparison graph styles introduced in the Visits Diff Pepper
Version 2.14
  • Added the onInstall event handler to the Pepper API
  • Corrected charset
Version 2.13

Required update for all users of Till Krüss’ Downloads Pepper to eliminate the chances of unexpected Mint dataloss. Updating from Mint 2.12? Just replace your app/includes/head.php and app/lib/mint.php with the files included in this version.

  • Increased the cfg and data column size in the mint__config table to accomodate Pepper that store more data than is intended in their Pepper->data property
  • Changed charset to utf-8 for better international character support
Version 2.12
  • Reworked display/handling of Mint’s advanced preferences
  • Added an Ignore IPs advanced preference
Version 2.11
  • Fixed a bug in the Pepper->getInstalledVersion() method
  • Updated generateStyleOptions() to ignore cvs and svn directories
  • Includes Default Pepper 2.06 and Backup/Restore Pepper 2.01
Version 2.1

Updating from Mint 2.07-09? Just replace your /mint/app/lib/mint.php and /mint/app/paths/record/js.php with the ones included in this version.

  • Updated the record path to just use document.write('<script>') in IE PC (some imperceptibly different versions of IE PC were still choking on the previous <base> problem solution)
  • Updated the record path to prevent a potential display error on some sites in Safari introduced in Mint 2.09 (With the Real Estate Pepper installed, on pages with content less than one screen deep, the body element’s background color may not fill the entire window in some versions of Safari. This is due to a rendering bug in Safari. The Real Estate Pepper accesses the dimensions of the window before the page is completely loaded—content size has no bearing on window size so this is normally not a problem. document.write()ing an additional script element forces Safari to render the page content it has loaded but then fails to redraw the background once all the content has loaded. About as fringe as they come.)
Version 2.08

Updating from Mint 2.07? Just replace your /mint/app/lib/mint.php and /mint/app/paths/record/js.php with the ones included in this version.

  • Updated record path to accomodate unclosed <base> tags in the <head> tag in IE PC (the full fix didn’t make it into the previous release)
Version 2.07

Includes Default Pepper 2.03 and Backup/Restore Pepper 2.01.

  • Added an Overview to the “Update from a previous version of Mint 2” in the README.txt
  • Updated replacement in abbr() to prevent the valid domain www.hr (and similar) from being reduced to the invalid hr
  • Updated record path to accommodate <base> tag bug in older versions of IE PC (in depth exploration and explanation of the problem)
  • Refactored some code (abbr(), getTableSize())
Version 2.06

A bug fix release to address a potential drop in the total-to-unique Visits ratio and missing sessions in Crushes.

  • MintAcceptsCookies now lasts the duration of the session to prevent premature expiration of cookies (the original timeout was a tad unrealistic)
Version 2.05
  • Fixed pane resizing JavaScript error when the browser window is cinched up really small
  • Fixed a bug that could prevent you from updating to Mint 2.x directly from Mint 1.14
  • Added styles to support the new Search tab in Secret Crush 2.07
  • Added spinner styles and spinner-prefs.gif for Backup/Restore
  • Bumped key verification up to 10 seconds to reduce number of dropped hits due to sluggish network connections
  • Reverse detection order of cluster and forwarded IP addresses in getIP()
  • Fixed a reversed abbr() bug
  • Updated record method to use a second (non-deferred) script tag instead of an image (eliminates missed hits due to images being disabled, retains compatibility with sIFR in IE)
Version 2.04

Recommended update for all Mint 2 users. If you are updating from Mint 2.03 you only need to replace your /mint/app/ folder with the 2.04 version (using the usual rename process outlined in the README.txt).

  • Added additional security precautions
  • Updated record routine to address a handful of reports of inaccurate increases in unique visitors
  • Added 15 second timeout to MintAcceptsCookies so that tests for cookie availability are more accurate (someone can’t disable cookies in the middle of a session)
  • Fixed IE PC style issues introduced in Mint 2.03
Version 2.03
  • Added generateInfoRow() and related styles for use with expanded accordion views
  • Added optional paranoid config to Mint object (true|false) to disable all public utility and debug query commands (Please note that I cannot remotely troubleshoot a paranoid Mint installaiton, this config must be disabled in order to receive support)
  • Updated getIP() to detect the correct IP address when installed on a clustered server
  • Did what I could to resolve the “Fix pane height” alignment and filter offset issues
  • Updated Preferences form to retain the ?errors query command so that errors that occur during saving Preferences can be observed
  • Added getInstalledVersion() to the parent Pepper class to retrieve the installed version number during update()
  • Added onAfterDisplay() event handler to parent Pepper class (see source comments for usage)
  • Added $Mint->acceptsCookies property which is available during the Pepper->onRecord() event handler so that Pepper can react accordingly when the visitor isn’t accepting cookies
  • Moved custom /styles/ directory to the Mint directory to prevent overwriting custom styles when updating
  • Addressed bug where moderated tables weren’t being added to the expiry and maxSize arrays automatically
  • Logs all cookie setting to Benchmarks
  • Added ?live-debug query command to toggle the MintLiveDebug cookie (when live debugging every page acts as if #Mint:Debug appears in the url)
  • #Mint:Debug now opens in a new window (need to temproarily disable “Block Popups” in order to view)
  • Updated _save() to abort when a fatal error is encountered
  • Added “Check for Updates” button to Preferences
Version 2.02

If you are updating from Mint 2.01 you can just replace your /mint/app/lib/mint.php with the new one in the 2.02 zip file.

  • fixed ?uptodate query command
Version 2.01

Before updating it is highly recommended that you uninstall the third-party “XXX Strong Mint” Pepper if you have it installed. It has come to my attention that this Pepper operates in a way that can potentially corrupt your Mint config data and cause Mint and other Pepper to not record hits. I have been unable to contact the Pepper developer to address this issue.

  • Updated README.txt to warn against having the third-party “XXX Strong Mint” Pepper installed during the update
  • improved support for SSL and https
  • Clicking on the ‘Update(s) Available’ button dismisses it until the next time Mint checks for an update (1 week)
  • Added ?uptodate query command
  • Disabled verifyDomain() because it was causing problems for those with mirrored domains or with Mint hosted on a sub- or other domain
  • Reduced invisibilty of error messages in the alternate Mint Chocolate style
  • Fixed broken image “Uninstall” buttons that appear while updating if you forget to copy over existing Pepper from a previous version of Mint
  • update() now calls _refreshInstallPaths() before updating to prevent re-activation issues in installations that have been moved from their original locations
  • Updated Shaun Inman link in foorter of Mint (because I’m tired of missing support requests sent to my personal email), now points to haveamint.com/contact
Version 2.0

Mint 2 is a paid upgrade.

  • added getIP and getIPLong methods to Mint, uses HTTP_X_FORWARDED_FOR if available
  • Mint no longer tracks ips by default, Secret Crush takes ownership of the ip_long column and responsiblity for tracking it
  • Added ?preferences&advanced query command to reveal database info and other infrequently modified, occasionally difficult to understand, and often misconfigured preferences
  • Added getHTML_Graph to the Pepper class making it available to all Pepper (may revise $graphData array)
  • Fixed bug where Watched Pages with no external referrers would not display. Watched Pages again sorts by hits instead of number of referrers.
  • Added onRss method to Pepper class, completely rewrote how feeds are generated
  • Added “Collapse vertical whitespace between panes (approximates pane order)” preference
  • Added oddPanes array to the Pepper class to prevent special views like the two-column and graphs from breaking when “Fix height and…” is set
  • Restored the 1.2 update progress bar
  • Full IE support—6 and 7 (expletives removed)
  • Client mode is no more, the preference has been relabeled “Allow anyone to view Mint”
  • Updated pane names for clarity across most official Pepper
  • Now filters searches and Ignore Referrers from Watched pages (eliminates bloat from online feed readers)
  • Checking for updates now checks for updated Pepper in addition to an updated Mint (Clicking the link will bring you to a download page with all files you need to download in order to get your full installation up to date)
  • Added additional pepper developers array
  • Free Mint-managed moderation of Pepper-specific tables
  • Added support for alternate styles and the Mint Chocolate style
  • Added insig class to reduce the visual weight of % less than 5% (utilized by UA007 and WW)
  • Fix pane height styles
  • Added accordian-style referrer info to watched pages
  • Added staggered loading of panes (and preference)
  • Tidied up the Pepper Preference tabs
  • Disabled abbreviation in single-column mode
  • Added single column width preference
  • Added classes index to the tableData array accepted by generateTableRows() method
  • Added syncPepper() method to resynchronize Mint’s internal lookup for installed Pepper pane tabs
  • Clicking on a draggable pane now focuses its related Pepper Preference tab
Version 1.31

Recommended update for all Mint 1 users

  • Added additional security precautions
Version 1.3
  • Added preference to “Ignore available Mint 2 updates”
  • improved support for SSL and https
  • Disabled verifyDomain() because it was causing problems for those with mirrored domains or with Mint hosted on a sub- or other domain
  • Updated Shaun Inman link in foorter of Mint (because I’m tired of missing support requests sent to my personal email), now points to haveamint.com/contact
Version 1.29
  • Tightened up security around ?moved and the new ?import query commands
  • Updated Visits table CSS to align numbers right for more context when scanning
  • Updated _refreshInstallPaths() to check PHP_SELF, SCRIPT_NAME and SCRIPT_URL
  • Added verifyDomain() method to Mint to prevent others from inflating your stats by hotlinking your Mint JavaScript include
  • Added (non-standard) code to disable auto-complete on email/password settings in Preferences to prevent the browser unexpectedly changing your login info on you
  • Added ?import to import aggregate Total/Unique Visits from another Mint installation into your current Mint installation.
  • Updated Pepper class to benchmark individual queries made by Pepper (no updates required by Pepper developers)
  • Updated mint.css to squeeze a few more pixels out of each pane (shaved off 3px of each side of a pane td, dropping 36px total from the Visits pane)
  • Updated _tidySave() to ensure that old data is deleted from the right end of the visit table when tidying based on max database size
  • Mint now normalizes invalid data in the Site Domain(s) config/preference
  • Optimized offsetMakeGMT() and offsetDate() to eliminate overzealous compensation for creating a timestamp based on a local time (as opposed to server or gmt)
  • Fixed an oddity in relative date formatting (‘1 year ago’ was skipped jumping to ‘2 years ago’ after 78 weeks)
  • Updated dropError() with an optional argument, the error list is now searched for errors containing an optional string and drops them
  • Added optional config ‘gatewayOverride’ that accepts the values ‘curl’ or ‘socket’ (for when curl is installed but not working properly)
  • Moved public utility path before update and install to facilitate troubleshooting stalled updates and installs
  • Added ?gateway query command to test gateway connectivity (like having Step 4 of the Mint Server Compatibility Suite built-in)
Version 1.28
  • This update requires you to reenter your Activation Key. From Mint 1.28 forward the key will be stored in $Mint->cfg (in anticipation of one-click updates—provided I can work out the security/piracy implications) Your Activation Key can be found in your original purchase email or in the Mint Account Center
  • Reverted to the record/js.php from Mint 1.26 (A number of users have reported significant discrepancies in their total/uniques with 1.27, since I cannot reproduce the issue I am rolling back for now until I can isolate and resolve the problem)
  • Added compact privacy policy to convince IE PC to eat cookies in certain fringe instances
  • Add ?moved query command to remap the installVars after moving Mint to a new location on the server
Version 1.27
  • Modified js.php to correct incompatibilities with sIFR in IE PC and eliminate branching required for XHTML served as Content-type: application/xhtml+xml (which remains officially unsupported due to the absence of document.title, document.referrer, document.URL, etc)
  • Added the Mint: Visits Editor (?visits when logged in)
  • Silenced confusing MySQL error when Activation fails during installation
  • Removed some unexplained colspan="2"s from Preferences
  • Added a redundant check to $Mint->_save() to make sure that config and Pepper data isn’t obliterated by intermittent database failure
  • Removed antiquated tweak-visits.php and ?tweak command
  • Added a $pages array to /config/auto.php which allows Mint to ignore specified pages
  • Added trailing slash to Full Serve link in the html returned by $Mint->widget()
  • Tweaked installDir to accommodate sloppy mod_rewrite rules
Version 1.26
  • Added corrections for checksums on 64-bit architectures. Ssupport defaults to 32-bit (does not update existing checksums).
  • Fixed a subdomain pattern matching typo in Mint and the Default Pepper (v125) that could cause issues with subdomains that contains any number other than 0 and 9
  • Added fallback for html_entity_decode()
  • Changed #Mint:JavaScriptDebug to just #Mint:Debug and added &errors to the query string. Debug also now “observes” Mint.
  • Benchmarks now appear above Mint “observations”
Version 1.25
  • Reverted ?js to use the full Mint installation path (subdomains should now be tracked properly again)
  • Updated the “View Site” link generated for the widget() method (“View Site” link in Junior Mint should now link to the root of the install domain rather than the Mint installation)
Version 1.24
  • Determined that the cURL/OS X Server combo creates memory allocation problems. Updated _gateway() method to force this combo to use fsockopen()
  • Added #Mint:JavaScriptDebug to simplify troubleshooting on remote installs (added additional benchmarks in record() support methods)
  • Replaced _tidyDB() method with _tidySave() which saves (with updated lastOptimized and lastChecked configs) before performing any database maintenance to prevent redundant, concurrent OPTIMIZE and CHECK threads in MySQL
  • Mint now properly redirects to the Login page instead of loading the document inline when refreshing a pane after logging out (or having Client Mode disabled)
  • Updated ?js to not output any JavaScript if the MintIgnore cookie is set (also made the path variable smarter)
  • Updated SI.Mint.toggleFolder() JavaScript to detect the number of columns in the table so the “Loading…” state will span the entire table
  • During update to 1.2x Mint takes extra precautions to preserve an active cache of the old cfg and data properties to ensure a successful update
  • Removed closing PHP tag from config/db.php and wherever else appropriate (some editors add a newline/whitespace character to the end of a file when saving, if this occurs outside the closing PHP tag it can cause problems with headers, most noticeably in relation to cookies. See the note here.)
  • Added onTidy() to the Pepper API (see comments in the Pepper class file for more info)
  • Added ?errors to set the error reporting level to E_ALL
  • Added partial support for IE PC in Client Mode (Fixed Height is not supported. IE places scrollbars created by overflow: auto; outside the defined width which blows up the page. I refuse to hack around that. The Preferences screen will not be supported—clients may have an excuse, web developers do not.)
  • onWidget() now includes “Update Available” notices which will be displayed by Junior Mint (v026) (earlier versions will not display the notice)
  • Updated mint.css, the RSS button now displays in Firefox 1.5rc3 when “Fix pane height and use scrollbars” is checked
  • Added updated Mint logo and favicon
  • Removed language="javascript" from the Mint JavaScript include in config/auto.php (was already removed everywhere else)
Version 1.23
  • Updated Instructions to include the full url if Mint is installed at the root of a subdomain
  • Tweaked defaults to catch an existing but empty $_SERVER['PHP_SELF'] (this is just not funny anymore)
Version 1.22
  • The update from pre-1.2 versions of Mint is no longer destructive (old tables will have to be deletely manually after successful update, I will provide scripts to delete or recover these backups shortly)
  • Added ?tweak (allows you to manually edit your Past Year Visits data)
  • Added ?ignore (sets an “Ignore my visits” cookie)
Version 1.21
  • Added ?benchmark
  • Now requires Mint 1.14 when updating to eliminate unexpected complications
  • Updated _checkForUpdates() to fail silently (required addition of dropError() method)
  • Tested update process against missing or additional Pepper
  • Added Uninstall link to Preferences links
  • Added polished Uninstall interface
  • Added mysql_close() to the Record path to try to eliminate some sleeping MySQL threads that are popping up in certain installs (Mint no longer uses mysql_pconnect() so I am not sure how or why these connections are being left open)
  • Added ?observe to simplify troubleshooting on remote installs
  • Removed /lang/ and /app/lib/localization.php (I don’t want to give false hope. I’ve thought it over and I won’t be able to support localized installs and the added level of complexity will only make things more difficult for future development.)
  • Updated /pepper/shauninman/default/script.js
  • Updated CSS to correctly style only-child <th>s in one column data tables
  • Renamed the README.txt file
  • Reintroduced a Minted ?info to simplify troubleshooting on remote installs
  • Rewrote update from pre-1.2 versions of Mint to prevent script timeouts, added progress bar.
  • Updated $Mint->bakeCookie() to work when served from an IP address instead of a domain name
  • Restored Easter Egg
  • Updated Benchmark call in query() to trim queries to 24 characters to prevent “leaking” potentially sensitive information (only affected 1.2 beta)
Version 1.2
  • Added benchmarking functions and styles
  • Reintroduced “Auto-Mint”. Now resides in /mint/config/auto.php
  • Added smaller intervals (1, 2, 4, and 8 hours) to the Referrer window in Default Pepper
  • Updated Default Pepper and Local Searches to better handle quotes in search terms and referrers
  • Escaped Page url in inline Watch/Unwatch links in Default Pepper
  • Updated abbr() to insert <wbr /> tags before ? allowing Firefox to wrap like Safari (placing <wbr /> after the ? broke the normal wrapping behavior in Safari so Firefox wraps before the ? and Safari after)
  • Updated Default Pepper to properly handle extended encodings in search terms
  • Updated $Mint->uninstall() to use $Mint->manifest
  • Finished Backup/Restore Pepper
  • Pepper can now be uninstalled even if they are missing and no longer on the server
  • Mint now handles all installation/uninstall responsibilities thanks to the addition of a new manifest property of the Pepper class
  • Default Pepper can now handle title tags with linebreaks in them
  • Added Pepper-combatibility logic
  • The “Ignore specific domains” preference now applies to the Newest Uniques RSS feed
  • Added open, Client mode
  • Rewrote paneOrder logic so that installing Pepper with existing disabled panes doesn’t automatically disable the new Pepper’s panes
  • Default Pepper now installs first regardless of other Pepper installed at the same time as Mint
  • Added preference to Default Pepper to ignore specific domains in the Newest Unique Referrers tab
  • Mint now auto-focuses the Pepper Preference tab after installing a new Pepper
  • Linked up instructions from Preferences
  • Fixed incorrect detection of Flash 16 in UA007
  • Added ‘Just Now’ to relative time function for visits within the past 15 seconds
  • Rolled out new offset functions in Mint to nip the double-August bug
  • Added two new, robust date and time formatting functions that have a better grasp of timezone offsets (offsetMakeGMT() and offsetDate())
  • Added JavaScript timezone offset auto-detection to installation
  • Revised pages storage method (added indexed resource_checksum, used in queries and watched data array)
  • Revised referrer storage method (dropped domain column, added indexed referer_checksum and index referer_is_local to simplify queries)
  • Changed ip column VARCHAR(15) to ip_long INT(10) (signed) and added index of the same name
  • Removed htmlspecialchars() from $Mint->abbr()
  • Fully supports subdomains and improves support for mirrored domains
  • Mint now uninstalls each Pepper individually before uninstalling itself (to prevent Pepper created tables from lingering)
  • Cleaned up some CSS
  • Added Lycos to recognized Search Engines in Default
  • Mint now runs on localhost/127.0.0.1 (for development purposes)
  • Replaced all instances of setcookie() wtih $Mint->bakeCookie() which chooses the most compatible domain for the cookie
  • Added maximum database size preference and code to enforce it.
  • Added version numbers to Pepper names in Preferences
  • Added md5’d password to RSS feed query to serve as authorization
  • Complete revised directory structure, rewrote Pepper API, revised installation process
Version 1.14
  • Updated abbr() to insert <wbr /> tags before ? allowing Firefox to wrap like Safari (placing <wbr /> after the ? broke this behavior in Safari so Firefox wraps before the ? and Safari after)
  • Updated Default Pepper to properly handle extended encodings in search terms
  • Default Pepper can now handle title tags with linebreaks in them
  • Added -tweak-visits.php to /util/ (allows editing of monthly totals to make up for an ipso-flipso that occurred when updating from 1.12 to 1.13 with an early release of 1.13)
  • Added preference to Default Pepper to ignore specific domains in the Newest Unique Referrers tab
  • Fixed incorrect detection of Flash 16 in UA007
Version 1.13
  • Updated the way offsetDate() detects the number of days in a month to resolve the lingering double-August bug
Version 1.12
  • Added logic to update older Default Pepper Visits arrays (their bad timestamps resulted in the double-August bug going unnoticed for so long)
  • Added ‘Just Now’ to relative time function for visits within the past 15 seconds
  • Rolled in the new offset functions from 1.2 in Mint to nip the double-August bug
  • Added two new, robust date and time formatting functions that have a better grasp of timezone offsets (offsetMakeGMT() and offsetDate())
  • Updated mint.js.php to use document.write where available and only fall back to XMLHR if necessary
  • Added JavaScript timezone offset auto-detection to installation
  • Removed htmlspecialchars() from $Mint->abbr() (fixes encoded HTML entities showing up in Page Titles)
  • Cleaned up some CSS
  • Added Lycos to recognized Search Engines in Default
Version 1.11
  • Added $Mint->safeUnserialize() to try to repair broken serialized strings
  • Fixed the “ever” Uniuqe visit cookie (100 years in the future is beyond the range of unix time—y2k anyone?—set it to ten. Will need to update again in 2028.)
  • Removed MAX-CONCAT hack from Default Pepper (a week of test showed it was too expensive)
  • Updated time format in RSS to be a valid RFC822 date
  • Added second “Done” button to the top of the Preferences so those with extra Pepper don’t have to scroll to the bottom to commit changes.
  • Pane navigation now intelligently resizes depending on window width and number of panes
  • Added an IP override to auto.mint.php
  • Updated Default and Local Searches Pepper to trim all longer page titles and referrers
  • Trimmed port number off $Mint->cfg['cookie_domain']
  • Fixed handling of escaped characters in Site Name Preference (Need to remove \ entirely because they can björk the whole serialized $Mint->cfg array)
  • Updated Default Pepper to use most recent Referrer and Page data (MySQL was defaulting to the first entry for either. Used the MAX-CONCAT hack to return the expected results. Significantly increases the display time of Most Popular Pages on larger databases, eg. 30+ MB)
  • Fixed the apostrophe used in year abbreviations (Thanks to JG for catching this one)
Version 1.1
  • Added a fallback when mysql_real_escape_string() isn’t available
  • Updated error handling, the string $Mint->error is now deprecated in favor of the array $Mint->errors and the new $Mint->formatErrors()
  • Added some logic to $Mint->getFormattedVersion() to trim 1.x0 releases to 1.x
  • Switched from mysql_pconnect() to mysql_connect() (Those seeing a benefit from using pconnect are free to change it back. It was not offering any benefits in most instances and causing more trouble than it was worth in others.)
  • Added $Mint->getCfgValue() to insulate Pepper developers from subsequent changes to the $Mint->cfg array
  • Clarified placement of the Mint JavaScript include
  • Revised READ ME.txt to eliminate potential confusion when installing or updating
  • Revised the way Default Pepper determines uniques (Uniques now accurately reflect the specific timeframe indicated. Meaning the uniques for a given day are no longer the sum of the uniques in the hours of that day.)
  • Reformatted /defaultpepper/class.php to improve readability
Version 1.09
  • Fixed /util/-ignore-me.php (was setting the cookie but not with the value Mint was expecting on some hosts)
  • Fixed the Visits pane in Default Pepper so Past Week, Past Month, and Past Year visit counts don’t play peekaboo when you change your Local Time
  • Fixed some CSS font-size issues in the preferences
  • Changed all the double quotes in configuration.php to single quotes to prevent issues with passwords that have a $ in them
  • Modified $Mint->_tidyDB() so that DELETEs only happen once an hour (database sizes may creep a little at the end of the hour on larger traffic sites)
  • Added index to dt column on mint_visits table
  • Fixed CHECK and OPTIMIZE routine in $Mint->_tidyDB() (both were running on every hit because the last_x was being updated but not saved back to the database)
Version 1.08
  • Added -ignore-me.php to /util/ which provides the same functionality as the “Ignore my visits” preference but doesn’t require login
  • Reformatted functions.php and mint.css to improve readability (yikes)
  • Added database error reporting
  • Mint Logo is now a link that reloads the entire page
  • Reduced timeout on $Mint->_gateway() so that it doesn’t exceed the PHP parsing timeout and added some error reporting
  • Fixed drag and drop on scrolled pages (was a problem in Firefox)
  • Removed the XMLHTTPRequest object from mint.js.php (double hit in Safari was caused by modifying body.innerHTML in an older version of my site, should solve cross-site scripting limitations and improve subdomain support)
Version 1.07
  • Mint should now be able to differentiate between a failed install (due to database connectivity issues) and an invalid license
  • Added error checking to $Mint->_load() and $Mint->display() to prevent the dreaded “blank page” after update
  • Increased the timezone offsets to -12 to +14 (was -12 to 12, silly American)
  • Updated /util/-observer.php to display columns in the visits table (to confirm that Pepper have been installed)
Version 1.06
  • Fixed some typos
  • Unique Referrers RSS now encodes ampersands in links (revisit later)
  • Added -id-domain.php to /util/ to help those who may have registered the wrong domain identify the issue
  • Improved domain detection for virtual domains
  • Added =1 all query strings to improve support under rare server conditions
Version 1.05
  • Fixed $Mint->cfg['install_dir'] when $_SERVER['PHP_SELF'] is empty
Version 1.04
  • Added /mint/util/ directory with some troubleshooting scripts
  • Made $Mint->siteroot an optional config. Automatic detection wasn’t working out across a variety of server configurations
Version 1.03
  • Really, really added a fix for virtual domains where $_SERVER['DOCUMENT_ROOT'] may not be available. (not)
Version 1.02
  • Created $Mint->_gateway() which uses either cURL or fsockopen() depending on availability
  • Really added a fix for virtual domains where $_SERVER['DOCUMENT_ROOT'] may not be available. (not)
Version 1.01
  • Tweaked $Mint->getFormattedVersion() to display the sub minor version number
  • Added a fix for virtual domains where $_SERVER['DOCUMENT_ROOT'] may not be available. (not)
  • Added Mint JavaScript installation instructions to Preferences
  • Removed cURL requirement, now uses fsockopen() et al
Version 1.0

No notes were provided with this release.