# Changelog
All notable changes to this project will be documented in this file.

## [1.1.5] - 2019-09-15
### Changed
- Do not perform cost calculations/joins if hide_cost_column is set

### Fixed
- Fixed 100% CPU usage on Chrome browser by upgrading jqPlot library
- Fixed footer on DEVEL version

## [1.1.4] - 2019-06-15
### Changed
- Change cost schema to allow for larger numbers than 99.9999
- Improve test email sending and reporting

### Fixed
- Create temp dir if not exist in admin-rates, to avoid errors when importing
rates
- Fix sheduled reports for groups with spaces in the grouop name

## [1.1.3] - 2019-03-20
### Added
- Allow grant groups to users, not only extensions
- Added SNEP compatibility
- Add source_field setup option and modify queries to use that parameter instead
of the stock cdr 'src' field
- Add ignore_short_billable_duration setting to ignore calls with short billable
durations
- Add exclude_destination_regexp parameter to exclude dst field by regular
expression, can be used to exclude calls to voicemail or similar feature codes

### Changed
- Faster queries if hide_cost_column is set

### Fixed
- Fix potential missing calls in detailed reports
- Trigger uses replace instead of insert to avoid fails on duplicate uniqueid

## [1.1.2] - 2018-05-23
### Added
- Audio playback via HTML5 wavesurfer instead of flash Tinywav

### Changed
- Set correct title for summary combined report
- Allow export to work on PHP < 5.2.0 by disabling the Excel class and using
CSV instead

### Fixed
- Fix setConfigDefault for smtp password in admin schedule that might produce
a warning
- Fix Makefile so it does not overwrite config.php on upgrade
- Fix upgrade table acdschedule to not give error if table already has the
field to be added
- Be sure to set config before checking for db_charset_collation
- Force collate to utf8_unicode_ci on channel and dstchannels for outbound,
inbound and combined queries

## [1.1.1] - 2018-02-28
### Added
- Add group filter for API/Scheduled reports
- Add db_charset_collation setting to force MySQL collation and avoid invalid
mix of collation error. Also take into account the port on API_URL if set
- Allow to request trial directly from registration form
- Added MySQL upgrade to make upgrade script
- Added MySQL trigger for non session channel insertion acdrunichan
- Add dbsetup options to create tables on upgrade if needed
- Add admin license page to handle license revoke/upgrades

### Changed
- Modify dashboard to use combined query instead of own query
- Update style for registration tabs page
- wordwrap on debug pre css change
- Update dbsetup to create acdrunichan table and populate it, and set time 
limit on script
- Be sure to create acdrunichan database and populated it from dbsetup.php, 
as populating data is conditional for the table not being already created, 
so we cannot do it from makefile or static sql files
- Update translations
- Use inverse channel for Local replacement/convert to SIP
- New trunk charts with Dynamic resize feature
- Updated style on scheduled reports page
- Updated styles using bootstrap3 on forms

### Fixed
- Update SQL queries to do collate convertion and move to main sql install the
creationg of split str function as it requires root
- Continue with sql even if error
- Make general functions-astdb better for pjsip conf where there might be more
than one repetition of a section
- Prevent datetime warnings
- Fix Makefile, we cannot have @ to supress ouptut if we have a previous one 
- Prefix table acdrcost for destination field on queries as some cdr tables 
could have a destination field setup already.
- Update dblib.php with table_exists, column_exists  and some other fixes
- Calculate timestamps using timezone configuration instead of utc, fixes 
wrong time axis on trunk charts

## [1.1.0] - 2017-09-01
### Added
- New "make upgrade" option for installer, to upgrade existing installations
- New feature: scheduled reports via email using new API and setup of cron job
- Insert custom javascript code at the end of page via variable $customscript
- New configugration parameter exclude_extension_range to exclude some
extensions/destinations from reports
- New api.php to extract reports programatically
- New configuration parameter hide_trunk_chart: hides chart on trunk page
- Make calldate field configurable via config.php so we can use it on MiRTA
- Ability to use variables %Y, %m and %d for recordings_path variables
- New configuration parameter hide_cost_column to setup 

### Changed
- Updated style on registration form
- Updated translations for new scheduled reports and other functions
- Updated russian translations
- config.php now includes API config variables: API_USER, API_PASS, API_HOST
- Convert Local/xxx- channels to SIP/xxx on queries, that way Followme type 
local construct  will be counted/shown
- Update functions-astdb.php to read configuration from multiple files,
including PJSIP and IAX2 
- Update trunks chart with yyyy-mm-dd dates as jqplot performs timezone 
offsets based on client timezone if we use unix timestamps
- Configuration parser more resilitent, accepts => for assignment

### Fixed
- Honour significant_channel_chars in all queries and functions
- Fix typo: multi select fields now shows selected values correctly
- Fix undefined warnings here and there

## [1.0.0] - 2016-07-18
- Initial Release
