$Id$

version 28-git (????-??-??):

  - improvement: 'phpui.call_phone_url' support in ticket view form [chilan]
  - improvement: implemented 'all suspended' for assignment filter [chilan]
  - enhancement: ticket watching support [interduo]
  - devel/cleanup: removed support for 'invoices.show_expired_balance' as it's logically replaced
    by 'invoices.show_balance_summary' [chilan]
  - enhancement: allow to search nodes by creation date period [chilan]
  - improvement: show total debt value for customers with debt collection status [chilan]
  - improvement: changed default value of variable rt.auto_open to true [interduo]
  - enhancement: 'get_supported_actions' hook used in lms-notify.php allows plugins to inform core
    about correct custom action syntax [chilan]
  - enhancement: added csv export of operation history report [chilan]
  - enhancement: new '%commented_balance' symbol support added in lms-notify.php backend script,
    send invoice process and messageadd form [chilan]
  - improvement: --force parameter of lms-gps.php script allows to determine gps coordinates
    for network resources event if they already have non-empty coords [chilan]
  - enhancement: implemented validity period support for promotions and promotion schemas [chilan]
  - enhancement: new customer search filter - cutoffstop date interval [chilan]
  - enhancement: userpanel: added status selection of customers allowed to login [chilan]
  - enhancement: 'suspend' button in customer assignment box allows to suspend all assignment
    with single operation [chilan]
  - enhancement: optional ticket comment details inclusion in extended ticket list report [chilan]
  - improvement: 'phpui.legal_person_required_properties' and 'phpui.natural_person_required_properties'
    control which customer identifiers are required in add customer form [chilan]
  - enhancement: added smarty '{day_selection ...}' functions which allows to easily set
    now +X days date into controlled form elements [chilan]
  - enhancement: 'phpui.message_send_interval' controls interval between sent mails measured
    in milliseconds [chilan]
  - new 'phpui.unsecure_pin_validty' configuration variable controls secure pin storage and time validity
    for temporary pins [chilan]
  - enhancement: secure customer pin storage support - pins are hashed with crypt() function [chilan]
  - improvement: moved userpanel session storage from file to database [chilan]
  - enhancement: allow to select payment expiration by days used for 'overdue receivable'
    customer status selection [chilan]
  - enhancement: added 'phpui.timetable_distant_event_day_trigger' counted in days ('0' by default
    which means no trigger) specifies restriction trigger for newly created events with
    too distant begin date [chilan]
  - enhancement: added 'phpui.timetable_distant_event_restriction' with selection from 'none' (default),
    'error' and 'warning' values allows to choose restriction type for newly created events with
    too distant begin date [chilan]
  - enhancement: 'phpui.timetable_hide_deleted_users' with default value of 'false' allow to hide
    deleted users in user selection list element of event list boxes [chilan]
  - improvement: lms-ui-multiselect: 'data-blend' attribute of option element causes presentation
    of corresponding multi select option with blend color [chilan]
  - enhancement: 'phpui.helpdesk_hide_deleted_users' controls visibility of deleted users in helpdesk
    forms (default value 'false' means they are visible) [chilan]
  - improvement: 'tcnew.ignore_assignment_suspensions' with default 'false' value allows to enable/disable
    all assignment suspension and dedicated suspension assignment flag to be ignored in traffic shaper
    configuration generator [chilan]
  - improvement: 'phpui.promotion_schema_name_limit' with default value of '40' allows to control how
    long schema name can be in schema selection list [chilan]
  - improvement: use {customerlist} smarty element in invoice list form [interduo]
  - enhancement: 'phpui.document_password' supports substitution symbols %ssn and %pin which is replaced
    (respectively) by customer SSN and PIN [chilan]
  - enhancement: 'phpui.document_protection_command' with default value of
    'qpdf --encrypt %password %password 256 -- %in-file -' allows to specify system command which handles
    pdf file encryption with password defined in 'phpui.document_password' configuration variable [chilan]
  - enhancement: optional possibility of sending documents to customers after he confirmed document
    in userpanel [chilan]
  - improvement: pagination support for netnodelist [chilan]
  - improvement: 'phpui.netnodelist_pagelimit' controls how many network nodes are displayed on single
    page (unlimited by default) [chilan]
  - enhancement: added 'node-group' action support in lms-notify.php backend script [chilan]
  - enhancement: implemented smarty function '{reset_to_defaults}' which corresponds to button clearing
    value of all elements pointed by target parameter [chilan]
  - enhancement: allow plugins to attach specific contents in rtticketview module
    ('rtticketview_before_display' plugin hook introduced) [chilan]
  - improvement: more flexible result returned by SendSMS() function [chilan]
  - enhancement: customer ten filter in invoice report box [chilan]
  - enhancement: allow to view uploaded files different than image in modal dialog [chilan/interduo]
  - enhancement: lms-payments.php can generate financial charges basing on tariff which have assigned
    specified tariff tags [chilan]
  - enhancement: optional document template file attachments can have initial checkbox state
    specified [chilan]
  - enhancement: allow search helpdesk tickets by source [chilan]
  - enhancement: 'documents.allow_past_date' ('true' by default) control if past date are allowed
    in date picker fields of document generator and add document forms [chilan]
  - enhancement: 'voip.account_login_regexp' with default value '^[_a-z0-9-]+$' controls format
    of voip account login [chilan]
  - enhancement: 'voip.account_password_regexp' with default value '^[_a-z0-9-@%]+$' controls format
    of voip account password [chilan]
  - enhancement: 'voip.account_password_max_length' with default value '32' controls maximum
    allowed length of voip account password [chilan]
  - enhancement: 'phpui.promotion_force_at_next_day' with default value 'false' allows to force 'at' day
    calculation such way that it's always next day for activation and settlement of start period [chilan]
  - enhancement: added 'cancelled' and 'bounced' message statuses [chilan]
  - enhancement: '%body' symbol is replaces by ticket messages in queue configured notifications [chilan]
  - improvement: message status color marking description hint in customer messages box [chilan]
  - improvement: show last NAS/BRAS info obtained for latest node session [chilan]
  - enhancement: radius disconnect send support from within node info view [chilan]
  - enhancement: 'phpui.default_radius_secret' with empty default value controls what radius secret is used
    when network device corresponding nas ip address is not defined [chilan]
  - enhancement: 'phpui.radius_disconnect_command' with 'Framed-IP-Address=\"%ip%\"' |radclient %nasip%:3799
    disconnect '%secret%'' as default value defines default radius disconnect command which is used during
    node session disconnect request [chilan]
  - enhancement: added new ticket source 'call center' [chilan]
  - improvement: 'phpui.default_node_auth_types' allow to pre-check selected auth types in node add form
    (empty default value) [chilan]
  - devel/improvement: switched from 'crypt()' usage to 'password_*()' [chilan]
  - improvement: web browser multi-tab history support [chilan]
  - improvement: switched customer address selection ui control to 'lms-ui-advanced-select' [chilan]
  - enhancement: 'mail.message_template', 'mail.text_message_template' and 'mail.html_message_template'
    configuration variables allow to globally format messages sent to customers in web browser "New message"
    form ('%body' is default value) [chilan]
  - enhancement/devel: 'database.auto_update' ('false' by default) controls if db schema update attempt
    is taken during launch in web browser [chilan]
  - enhancement: 'rt.message_template', 'rt.text_message_template' and 'rt.html_message_template'
    configuration variables allow to globally format messages sent to customers in web browser
    helpdesk forms ('%body' is default value) [chilan]
  - improvement: 'phpui.allowed_document_scan_mime_types' configuration variable with default value
    'application/pdf, image/jpeg,image/jpg,image/png' allows to limit acceptable scan file
    mime types [chilan]
  - improvement: userpanel/documents: limit allowed file types to pdf, jpg and png [chilan]
  - improvement: helpdesk: added 'rt.default_message_reply_content_type' configuration variable
    support ('text' as default value) which controls default visual editor state during reply to
    or quoting ticket message [chilan]
  - enhancement: 'invoices.show_memo' ('true' by default) allows to disable document memo
    customer property presentation on invoices [chilan]
  - enhancement: added 'phpui.default_customer_phone_flags' and 'phpui.default_customer_email_flags'
    configuration variable allow to initially check corresponding contact type flags [chilan]
  - enhancement: 'phpui.gps_coordinate_providers' supports 'osm' provider; changed default value
    of mentioned configuration variable to 'google,siis,osm' [chilan]
  - improvement: support cashimport mailbox filtering by sender email ('cashimport.sender_email'
    configuration variable without default value) [chilan]
  - enhancement: new configuration variable 'invoices.default_author'
    (default value: 'user_issuer,user_name,division_author') controls order of expositor name
    determination [chilan]
  - improvement: lms-gps.php script uses 'phpui.gps_coordinate_providers' configuration
    variable if --sources nor --providers parameter was not specified during launch [chilan]
  - improvement: lms-gps.php script can use implicit network resource address locations to determine
    gps coordinates [chilan]
  - improvement: allow to optionally hide customer SSN on invoice report [chilan]
  - enhancement: 'vhosts' property in document template definition ('engine' variable) allows
    to overwrite 'engine' properites basing on http vhost name [chilan]
  - enhancement: allow to search tickets by requestor email and phone number [chilan]
  - improvement: cash import parser: if 'pinvoice_number' or 'pinvoice_month' or 'pinvoice_year'
    is empty then treat 'invoice_regexp' property as regular expression which matches to full number
    of invoice or correction note [chilan]
  - enhancement: implemented 'year' filter in invoice and balance lists [chilan]
  - enhancement: negation option in customer group filter of customer search form [chilan]
  - enhancement: 'timetable.use_event_assignments_for_privacy_flag' ('false' by default) allows to find
    private events by event user assignments [chilan]
  - improvement: document template can enable use trade documents as their reference documents [chilan]
  - enhancement: added phone billing customer consent support [chilan]
  - enhancement: auto-generate billing documents with invoices issued to phone services [chilan]
  - improvement: show mac vendors on node session lists [chilan]
  - devel/cleanup: renamed 'phpui.timetable_working_hours_interval' and 'phpui.timetable_working_hours'
    to 'timetable.work_time_step' and 'timetable.work_time_hours' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_allow_past_events' to 'timetable.allow_past_events' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_overdue_events' to 'timetable.show_delayed_events' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_user_row_limit' to 'timetable.row_user_limit' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_days_forward' to 'timetable.default_forward_day_limit' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_distant_event_day_trigger'
    and 'phpui.timetable_distant_event_restriction' to 'timetable.distant_event_day_trigger'
    and 'timetable.distant_event_restriction' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_hide_disabled_users' and 'phpui.timetable_hide_deleted_users'
    to 'timetable.hide_disabled_users' and 'timetable.hide_deleted_users' [chilan]
  - devel/cleanup: renamed 'phpui.timetable_hide_description' to 'timetable.hide_description' [chilan]
  - devel/cleanup: renamed 'phpui.event_time_step' to 'timetable.event_time_step' [chilan]
  - devel/cleanup: renamed 'phpui.event_user_required' to 'timetable.event_user_required' [chilan]
  - devel/cleanup: renamed 'phpui.event_overlap_warning' to 'timetable.event_overlap_warning' [chilan]
  - devel/cleanup: reanmed 'phpui.event_max_userlist_size' to 'timetable.event_max_userlist_size' [chilan]
  - devel/cleanup: renamed 'phpui.event_usergroup_selection_type'
    to 'timetable.event_usergroup_selection_type' [chilan]
  - devel/cleanup: renamed 'phpui.customer_event_limit' to 'timetable.customer_event_limit' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_hide_deleted_users' and 'phpui.helpdesk_hide_disabled_users'
    to 'rt.hide_deleted_users' and 'rt.hide_disabled_users' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_allow_empty_categories'
    and 'phpui.helpdesk_empty_category_warning' to 'rt.allow_empty_categories'
    and 'rt.empty_category_warning' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_customer_notify' to 'rt.customer_notify' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_sender_name' and 'phpui.helpdesk_sender_email'
    to 'rt.sender_name' and 'rt.sender_email' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_notification_attachments'
    to 'rt.notification_attachments' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_author_notify' to 'rt.author_notify' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_additional_user_permission_checks'
    to 'rt.additional_user_permission_checks' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_allow_all_users_modify_deadline'
    to 'rt.allow_all_users_modify_deadline' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_allow_change_ticket_state_from_open_to_new'
    to 'rt.allow_change_ticket_state_from_open_to_new' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_backend_mode' to 'rt.backend_mode' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_block_ticket_close_with_open_events'
    to 'rt.block_ticket_close_with_open_events' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_check_owner_verifier_conflict'
    to 'rt.check_owner_verifier_conflict' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_notify' to 'rt.notify' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_reply_body' to 'rt.quote_body' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_notification_mail_subject',
    'phpui.helpdesk_notification_mail_body' and 'phpui.helpdesk_notification_sms_body'
    to 'rt.notification_mail_subject', 'rt.notification_mail_body' and 'rt.notification_sms_body'
    [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_customerinfo_mail_body'
    and 'phpui.helpdesk_customerinfo_sms_body' to 'rt.notification_mail_body_customerinfo_format'
    and 'rt.notification_sms_body_customerinfo_format' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_customerinfo' to 'rt.notification_customerinfo' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_stats' to 'rt.show_stats' [chilan]
  - devel/cleanup: renamed 'phpui.newticket_notify' to 'rt.new_ticket_notify' [chilan]
  - devel/cleanup: renamed 'phpui.helpdesk_customer_notification_mail_subject'
    to 'rt.customer_notification_mail_subject' [chilan]
  - devel/cleanup: renamed 'phpui.default_show_closed_tickets'
    to 'rt.default_show_closed_tickets' [chilan]
  - devel/cleanup: renamed 'phpui.category_adjustments_in_ticketedit'
    to 'rt.category_adjustments_in_ticketedit' [chilan]
  - devel/cleanup: renamed 'phpui.ticket_property_change_notify'
    to 'rt.ticket_property_change_notify' [chilan]
  - devel/cleanup: renamed 'phpui.ticket_template_file' to 'rt.ticket_template_file' [chilan]
  - devel/cleanup: renamed 'phpui.ticketlist_pagelimit', 'phpui.ticketlist_priority'
    and 'phpui.ticketlist_status' to 'rt.ticketlist_pagelimit', 'rt.ticketlist_priority'
    and 'rt.ticketlist_status' [chilan]
  - devel/cleanup: renamed 'phpui.allow_modify_closed_events_newer_than'
    to 'timetable.allow_modify_closed_events_newer_than' [chilan]
  - devel/cleanup: renamed 'phpui.default_show_closed_events'
    to 'timetable.default_show_closed_events' [chilan]
  - improvement: lms-notify.php: added '%cid' and '%customername' substitution symbols in generated
    firewall rules [chilan]
  - improvement: 'cashimport.autocommit' also applies to cash source files loaded from
    frontend [chilan]
  - enhancement: userpanel/documents: multiple email addresses can be entered in operator
    notification address list settings and special symbol '%creatoremail%' support [chilan]
  - enhancement: added 'deleted tickets' filter in rtqueuelist module [chilan]
  - enhancement: implemented multi node group selection in customerlist and messageadd
    modules [chilan]
  - improvement: 'invoices.pdf_version' (default: '1.7') and 'invoices.pdf_font'
    (default: 'liberationsans') allow to customize generated version of pdf file and used
    font respectively [chilan]
  - enhancement: phone billing type basing on customer subconsents support added [chilan]
  - enhancement: impelemented document/assignment expiration filters in new message form [chilan]
  - enhancement: added info property to voip numbers [chilan]
  - enhancement: new LMSFpdiBackend allows to easily merge/unite many PDF contents [chilan]
  - enhancement: added 'payments.billing_invoice_separate_fractions' support with 'false'
    as default value [chilan]
  - enhancement: added %call_count and %call_fraction support to
    'payments.invoice_billing_description' configuration variable [chilan]
  - improvement: 'phpui.ignore_deleted_customers' ('false' by default) allows to hide deleted
    customers from lists by default [chilan]
  - improvement: 'phpui.show_due_balance' (with 'false' as default value) enables
    presentation of due/expired balance in customer info box [chilan]
  - enhancement: search network devices by their mac addresses [chilan]
  - improvement: network device status presentation using different icons in quick search
    suggestion popup [chilan]
  - enhancement: lms-notify.php: implemented event type selection for which customer and user
    notifications should be generated [chilan]
  - enhancement: added default flag to cash import sources [chilan]
  - enhancement: added 'trunk' flag for voip accounts [chilan]
  - improvement: export: added %VALUEx symbol support which represents invoice position gross value
    separated for all tax rates [chilan]
  - improvement: added '%call_time' subsctitution support in 'payments.invoice_billing_description'
    configuration variable - it's replaced by total call time in minutes rounded upper
    to full minutes [chilan]
  - enhancement: customer list: added customer group logical operator selection connecting selected
    customer groups [chilan]
  - devel/cleanup: renamed 'phpui.document_type' to 'documents.type' [chilan]
  - devel/cleanup: renamed 'phpui.document_margins' to 'documents.margins' [chilan]
  - devel/cleanup: renamed 'phpui.cache_documents' to 'documents.cache' [chilan]
  - enhancement: introduced alternative name for customer
    (important for brands/shortnames/casual names) [interduo]
  - improvement: '@' prefix in customer quick search field means force searching
    by altname [chilan]
  - improvement: day preselection for cutoffstop dates [chilan]
  - enhancement: added 'voip_billing_preparation' hook to allow plugins obtains billing records from
    external sources and store them in local database [chilan]
  - enhancement: new user permission 'hide_customer_sensitive_data' hides customer ssn
    and icn properties [chilan]
  - enhancement: added service start date in new document form - it has impact on
    "from" date of newly created assignments [chilan]
  - enhancement: added billing record type support (call, sms, mms, data transfer) [chilan]
  - enhancement: duration presentation format for billing records depends on their types [chilan]
  - enhancement: 'invoices.qr2pay_comment' specifies format of QR2Pay comment on tcpdf invoices
    with translatable 'QR Payment for Internet Invoice no. %number' as default value [chilan]
  - improvement: allow to narrow city search in choose location window to selected state
    and district [chilan]
  - enhancement: 'phpui.default_address_state', 'phpui.default_billing_address_state',
    'phpui.default_postal_address_state' and 'phpui.default_location_address_state'
    control state preselection in location boxes and terit address popup window [chilan]
  - devel/cleanup: renamed 'phpui.document_password' and 'phpui.document_protection_command'
    to 'documents.protection_password' and 'documents.protection_command' [chilan]
  - enhancement: allow to assign events with netnodes and netdevices [interduo]
  - enhancement: implement {network_device_selection} & {network_node_selection} smarty
    function [interduo]
  - enhancement: added paytime/deadline property to assignments [chilan]
  - enhancement: 'helpdesk' flag of email and mobile contacts controls if helpdesk notifications
    are sent to customer [chilan]
  - enhancement: customer search by popular assignment properties [chilan]
  - improvement: 'promotions.force_current_period_settlement_at_same_day' configuration variable
    with 'false' as default value controls accounting day of current period settlement
    assignment [chilan]
  - devel/cleanup: renamed 'phpui.promotion_activation_at_next_day'
    to 'promotions.activation_at_next_day' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_activation_at_same_day'
    to 'promotions.activation_at_same_day' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_allow_modify_values_for_privileged_user'
    to 'promotions.allow_modify_values_for_privileged_user' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_force_at_next_day'
    to 'promotions.force_at_next_day' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_preserve_at_day'
    to 'promotions.preserve_at_day' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_schema_all_terminal_check'
    to 'promotions.schema_all_terminal_check' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_schema_name_limit'
    to 'promotions.schema_name_limit' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_show_period_values'
    to 'promotions.show_period_values' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_tariff_duplicates'
    to 'promotions.tariff_duplicates' [chilan]
  - devel/cleanup: renamed 'phpui.promotion_use_discounts'
    to 'promotions.use_discounts' [chilan]
  - enhancement: 'phpui.node_password_required_for_auth_type' controls which authentication/access types
    set for nodes require node password to be specified ('all' as default value) [chilan]
  - improvement: some invoice item visibility depends on invoice pay type [chilan]
  - enhancement: lms-sendinvoices.php backend script supports --single-file parameter which causes making
    backup to single 'output.pdf' file in directory specified with --output-directory parameter [chilan]
  - improvement: document html/pdf attachments are merged (optionally) before printing in document lists
    and document add form (handle pdf and html attachment merging) [chilan]
  - enhancement: invoices with 'barter', 'cash', 'compensation', 'paid' and 'card' auto auto-paid
    in lms-payments.php script [chilan]
  - improvement: 'documents.default_all_attachments' configuration variable with 'false' as default value
    controls if document is printed by default with all attachments [chilan]
  - improvement: 'phpui.default_taxlabel' (without default value) allows to preselect tax rate basing
    on label; it takes precedence before 'phpui.default_taxrate' [chilan]
  - enhancement: added promotion and promotionschema attachments support; file can be selected
    from new document form [chilan]
  - improvement: 'customercalls.utc_datetime' with 'false' as default value controls if date time
    encoded in customer call file name is stored in UTC and thus should be converted to local time [chilan]
  - improvement: 'customercalls.operator_number_pattern' without default value controls if source
    or destination number is matched by this regular expression to determine if it's outgoing or incoming
    call [chilan]
  - improvement: network forms: public network overlaps generate warning instead error [chilan]
  - enhancement: 'phpui.zipcode_provider' supports multi provider specification (providers are separated
    by white characters or commas); added 'prg' provider support [chilan]
  - enhancement: 'documents.attachment_filename' configuration variable with '%filename' as default value
    allows to tweak main attachment file name sent to customer [chilan]
  - improvement: 'phpui.gps_coordinate_url' allows to customize URL of geographic coordinate point
    (default: 'https://www.google.com/maps/search/?api=1&query=%latitude%2C%longitude') [chilan]
  - improvement: 'phpui.geo_location_url' allows to customize URL of geographic location point
    (default: 'https://www.google.com/maps/place/%location') [chilan]
  - improvement: 'payments.auto_payments' with default value 'false' controls if invoices with pay type
    of 'cash', 'paid', 'barter' and 'compensation' trigger oposite finascial operations (usually payments)
    automation [chilan]
  - improvement: 'phpui.netrangelist_pagelimit' with default value '100' controls limit of network ranges
    on single page [chilan]
  - enhancement: implemented SIDUSIS report support [chilan]
  - enhancement: added customer group filter in invoice report export form [chilan]
  - enhancement: added 'notes.customer_credentials_format' suuport - it is very similar in behaviour
    to 'invoices.customer_credentials_format' [chilan]
  - enhancement: export: added '%BALANCE' symbol support [chilan]
  - improvement: 'phpui.teryt_street_address_format' with default value '%type% %street1% %street2%'
    describes street address format when generating its textual representation basing on territ
    identifiers [chilan]
  - enhancement: added 'with term contracts' and 'with active term contracts' selection in status
    filter of customer search form [chilan]
  - enhancement: '--omit-free-days' parameter of bin/lms-notify.php and bin/lms-sendinvoices.php backend
    scripts blocks sending notification and invoices on weekends and holidays [chilan]
  - enhancement: implemented 'negation' flag for node group selection in customer search form [chilan]
  - enhancement: added link button which opens point with gps coordinates on external map [chilan]
  - improvement: added sms message in customer message box related to sent sms auth code used during
    customer document confirmation in userpanel [chilan]
  - improvement: helpdesk quicksearch use 2-level logical operators - normal attributes are combined
    with 'OR' operator, but 'unresolved only' is combined with 'AND' operator' [chilan]
  - enhancement: added JPK_FA (4) support [chilan]
  - improvement: 'logs.message_limit' with default value of '11' allows to control how many transaction
    messages are decoded and displayed in transaction lists [chilan]
  - improvement/cleanup: renamed 'phpui.logging' configuration variable to 'logs.enabled' [chilan]
  - improvement: network device name maximum length changed from 32 to 100 [chilan]
  - enhancement: non-empty 'phpui.node_empty_mac' value allows to disable mac requirement specification
    for nodes; mac address from this setting specifies fake-mac stored in database for nodes
    without any assigned macs (setting has no default value what means mac addresses are required
    for node) [chilan]
  - enhancement: user 'trusted hosts' property allows to define IP address/network list from which
    two factor authentication mechanism is bypassed [chilan]
  - enhancement: new action on customer search results - customer status change [chilan]
  - enhancement: implemented instant payment transfer between customers [chilan]
  - enhancement: allow to filter transactions by module name [chilan]
  - improvement: set 'payments.use_comment_for_liabilities' to 'true' if want to handle liabilities
    the same way as tariff assignments (using 'payments.comment' configuration variable) [chilan]
  - enhancement: handle MDN reports from o2.pl/wp.pl/onet.pl [chilan]
  - enhancement: added smarty function '{image_data}' to ease embedding image content
    in html templates [chilan]
  - improvement: updated 'domains' table structure to match PowerDNS 4.7 [chilan]
  - enhancement: userpanel/document: present confirmation type and date in document list [chilan]
  - enhancement: date interval selection in message list [chilan]
  - enhancement: lms-sms2rt.php script handles many incoming sms files scenario [chilan]
  - enhancement: 'documents.pdf_merge_backend' with default value of 'fpdi' allows to selected used
    pdf merge backend helpful for bulk multi document prints (one other supported value is 'pdfunite'
    which means pdfunite command line tool is used to merge many pdf documents - this tool has to be
    installed on serwer) [chilan]
  - enhancement: 'documents.protected_document_types' specifies which types of documents are protected
    with password when sending to customers (default empty value means all document types) [chilan]
  - enhancement: added tariff flag filter and presentation them on list near tariff name [chilan]
  - improvement: new mac format with colons and lower case hex digits [chilan]
  - enhancement: uke/pit: updated network node type and link technology dictionaries [chilan]
  - improvement: uke/pit: changed network node type to lms-ui-advanced-select with two groups - building
    objects (SIIS) and infrastructure elements (PIT) [chilan]
  - enhancement: added network node quick search customisation [chilan]
  - enhancement: allow to quick search network devices by description [chilan]
  - enhancement: add support for tariff price variants [ravvar]
  - improvement/cleanup: renamed 'siis' gps coordinate provider pointed in 'phpui.gps_coordinate_providers'
    to 'prg' [chilan]
  - enhancement: added route/duct type and line count properties for network links [chilan]
  - enhancement: implemented UKE/PIT reports [chilan]
  - enhancement: added operator and customer notification support when document is commited
    from within LMS - new configuration variables in 'documents' section: 'notification_mail_dsn_address',
    'notification_mail_mdn_address', 'notification_mail_sender_name', 'notification_mail_sender_address',
    'notification_mail_reply_address', 'approval_operator_notification_mail_recipient',
    'approval_operator_notification_mail_format', 'approval_operator_notification_mail_subject',
    'approval_operator_notification_mail_body', 'approval_customer_notification_mail_format',
    'approval_customer_notification_mail_subject', 'approval_customer_notification_mail_body'
    and 'approval_customer_notification_attachments' [chilan]
  - enhancement: lms-notify.php: '%bankaccount' can be replaced optionally by customer alternative
    bank accounts - 'use_all_accounts' and 'use_only_alternative_accounts' control replacement
    behavior [chilan]
  - enhancement: messageadd form: '%bankaccount' can be replaced optionally by customer alternative
    bank accounts - 'messages.use_all_accounts' and 'messages.use_only_alternative_accounts' control
    replacement behavior [chilan]
  - devel/cleanup: renamed 'phpui.message_send_interval' to 'messages.send_interval' [chilan]
  - devel/cleanup: renamed 'phpui.message_sender_email' to 'messages.sender_email' [chilan]
  - devel/cleanup: renamed 'phpui.send_message_confirm_threshold'
    to 'messages.send_confirm_threshold' [chilan]
  - devel/cleanup: renamed 'phpui.send_message_limit_violation_type'
    to 'messages.send_limit_violation_type' [chilan]
  - devel/cleanup: renamed 'phpui.send_message_to_sender_checkbox'
    to 'messages.send_to_sender_checkbox' [chilan]
  - enhancement: messageadd form: '%bankaccount' can be replaced optionally by customer alternative
    bank accounts - 'sendinvoices.use_all_accounts' and 'sendinvoices.use_only_alternative_accounts'
    control replacement behavior [chilan]
  - enhancement: 'assignments.force_current_period_settlement_at_same_day' configuration variable
    with 'false' as default value causes current period settlement assignment generation with
    current day or date from property as accounting day (when set to 'true' value) [chilan]
  - devel/cleanup: renamed 'phpui.assignment_presentation_format' to
    'assignments.presentation_format' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_align_periods' to
    'assignments.default_align_periods' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_at' to
    'assignments.default_at' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_discount_type' to
    'assignments.default_discount_type' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_invoice' to
    'assignments.default_document_type' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_last_settlement' to
    'assignments.default_end_period_settlement' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_list_dataset' to
    'assignments.default_list_dataset' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_period' to
    'assignments.default_period' [chilan]
  - devel/cleanup: renamed 'phpui.default_assignment_settlement' to
    'assignments.default_begin_period_settlement' [chilan]
  - devel/cleanup: renamed 'phpui.default_existing_assignment_operation' to
    'assignments.default_existing_operation' [chilan]
  - devel/cleanup: renamed 'phpui.default_show_approved_assignments_only' to
    'assignments.default_show_approved_only' [chilan]
  - devel/cleanup: renamed 'phpui.default_show_expired_assignments' to
    'assignments.default_show_expired' [chilan]
  - devel/cleanup: renamed 'phpui.default_show_period_assignments' to
    'assignments.default_show_period' [chilan]
  - devel/cleanup: renamed 'phpui.node_assignment_warning' to
    'assignments.missed_node_warning' [chilan]
  - devel/cleanup: renamed 'phpui.default_liability_type' to
    'assignments.default_liability_type' [chilan]
  - improvement: lms-payments.php script support --section|-s parameter which allows to specify
    configuration section which should be used to obtain configuration settings [chilan]
  - enhancement: added 'documents.operator_approval_notification_document_types'
    and 'documents.customer_approval_notification_document_types' with empty default
    values (which means all document types) controls which document type commitment triggers
    operator and customer notifications [chilan]
  - enhancement: 'phpui.node_gps_coordinates_required' and 'phpui.netdev_gps_coordinates_required'
    (with default value of 'none' for both) control gps coordinates validation process for nodes
    and network devices [chilan]
  - enhancement: uke/pit: network link multi point support [chilan]
  - enhancement: add customer external IDs managment panel [ravvar]
  - enhancement: search nodes by address origin (explicit/implicit/ignore) [chilan]
  - enhancement: uke/pit: optional customer services aggregation for 'customer services'
    report type [chilan]
  - devel/cleanup: moved all configuration variables from section 'tarifftypes' to variables
    in 'assignments' section and prefixed with 'type_' [chilan]
  - enhancement: configuration section 'assignments' variables prefixed with 'billing_period_'
    phrase allow to control replacement of symbol '%billing_period' during financial operation
    descriptions generated by lms-payments.php backend script [chilan]
  - enhancement: added {barcode} smarty function support to ease barcode/qrcore generation
    in html templates [chilan]
  - enhancement: implemented 'hide customer SSN' option in customer search form [chilan]
  - improvement: lms-notify.php 'contracts' type notifications: ignore archived documents [chilan]
  - enhancement: added period selection in liability report form [chilan]
  - improvement: use 'phpui.default_link*' configuration variables for newly connected nodes
    to network devices [chilan]
  - enhancement: lms-rtparser.php: configuration section from which settings are obtained is configurable
    with --section launch parameter; --silent|-s renamed to --quiet|-q [chilan]
  - enhancement: uke-pit: division selection for 'customer services' report type [chilan]
  - enhancement: configuration variable 'teryt.show_numeric_identifiers' with 'false' as default allows
    to enable numeric TERYT identifier presentation near customer addresses [chilan]
  - enhancement: qr2pay code support for debit notes [chilan]
  - improvement: some unification of invoice and debit note look ('notes.use_alert_color',
    notes.show_only_alternative_accounts', 'notes.show_all_accounts', 'notes.customer_bankaccount',
    'notes.post_address', 'notes.hide_ssn', 'notes.customer_credentials', 'notes.hide_in_words',
    'notes.show_balance', 'notes.show_expired_balance', 'notes.qr2pay', 'notes.show_balance_summary',
    'notes.hide_payment_type', 'notes.hide_expositor', 'notes.header_image',
    'notes.customer_balance_in_form', 'notes.qr2pay_comment', 'notes.default_author' support
    added) [chilan]
  - enhancement: separate 'without explicit TERYT' and 'without TERYT' filters for nodes [chilan]
  - enhancement: added paytype support for debit notes [chilan]
  - enhancement: added jpk flag filter to sale report form [chilan]
  - improvement: show network node names in network device selection list to be connected
    to current network device [chilan]
  - enhancement: show assigned network device count on network node list [chilan]
  - enhancement: show network node info in rows which represent connected network devices [chilan]
  - enhancement: 'without start date' assignment filter added in customer search form [chilan]
  - improvement: show customer id for addresses in 'merge' mode lms-teryt.php script [chilan]
  - enhancement: added division property to network devices [chilan]
  - improvement: show source name in imported operation list pending for confirmation [chilan]
  - improvement/devel: 'get_customer_sms_options' plugin hook introduced which allows to collect
    specific sms-like section configuration variable names [chilan]
  - improvement: send document confirm notifications if document is created with 'closed'
    status [chilan]
  - enhancement: teryt: two different building base providers are supported - 'gugik' and 'sidusis'
    (--building-base-provider parameter of bin/lms-teryt.php script chooses which provider should be
    used) [chilan]
  - enhancement: 'teryt.building_base_provider' with 'gugik' as default value allows to permanently
    specify building base provider which should be used [chilan]
  - enhancement: 'phpui.allowed_link_technologies' and 'sidusis.allowed_link_technologies' with default
    empty values allow to limit link technology selection lists in user interface [chilan]
  - enhancement: added estimated completion date property to investment projects [chilan]
  - enhancement: uke/sidusis: implemented investment project csv export [chilan]
  - enhancement: added operation date and operation external id to cash import records [chilan]
  - enhancement: added --customer-types input parameter for bin/lms-notify.php script - notified
    customer types can be specified with symboli names 'company' and 'private' separated
    by colons [chilan]
  - enhancement: implemented inline customer note modifications [chilan]
  - improvement: '%number' symbol support in 'invoices.payment_title' configuration variable [chilan]
  - enhancement: 'notification-type_recipients' configuration variable used by lms-notify.php script
    allow to select notification recipient categories - 'users' and 'customers' are supported
    currently only for 'events' notifications [chilan]
  - enhancement: added preliminary en_GB localisation support [chilan]
  - improvement: 'invoices.qr2pay_comment' configuration variable supports %cid substitution
    symbol [chilan]
  - enhancement: multi network selection in new message form [chilan]
  - enhancement: allow to quick search customers by different extids depending on selected
    service providers [chilan]
  - enhancement: added new actions 'customer deletion' and 'customer restoration' for customer
    search result list [chilan]
  - enhancement: show link properties (type and technology) in node details popup of openlayers
    map [chilan]
  - improvement: close openlayer map popups after mouse double click on them [chilan]
  - enhancement: quick search network devices by location address [chilan]
  - improvement: multi customer group selection in balance list report [chilan]
  - improvement: balance list report: allow to customise visibility of customer id, ssn, ten
    and address [chilan]
  - improvement: balance list report: show only form selected value columns in table [chilan]
  - enhancement: added click-triggered popup as hint icon near network name of customer nodes box/panel
    in which VLAN id and network notes are displayed [chilan]
  - improvement: added 'technical verification' event type [chilan]
  - improvement: event types are ordered by localised label in user interface [chilan]
  - improvement: 'rt.parser_default_queue' does not take it default value from 'rt.default_queue'
    as this behavior was problematic [chilan]
  - improvement: 'phpui.node_link_technology_required' with default value of 'error' controls if node
    link technology is required, recommended [chilan]
  - improvement: 'report other duct type as' form option which instructs how to transform 'other duct type'
    to uke well-known duct types ('uke.pit_report_other_duct_type_as' controls default value of new form
    option with default empty value preserving other duct type) [chilan]
  - devel/cleanup: renamed 'sidusis.operator_offer_url', 'sidusis.operator_project_email',
    'sidusis.operator_project_phone', 'siis.header' to 'uke.sidusis_operator_offer_url',
    'uke.sidusis_operator_project_email', 'uke.sidusis_operator_project_phone', 'uke.siis_header' [chilan]
  - devel/cleanup: renamed 'sidusis.allowed_link_technologies' to 'uke.sidusis_allowed_link_technologies' [chilan]
  - enhancement: implemented --scope/--scopes script parameter support which allows to specify if customers,
    users or both should be notified (handled only by selected notification types) [chilan]
  - improvement: unified (customer and user) special symbol support in events-type notification message
    and subject configuration [chilan]
  - enhancement: 'documents.default_type' configuraton variable controls what document type is pre-selected
    in documentadd and documentgen forms [chilan]
  - enhancement: added some new useful substitution symbols support for 'events' type notifications [chilan]
  - improvement: allow to check/uncheck all user resource permission to be copied
    from selected user with single click [chilan]
  - enhancement: show Geoportal Maps and NetStorkWeb Maps links near gps coordinates and customer
    addresses [interduo/chilan]
  - enhancement: 'netstork.map_url' (without default value) and 'netstork.default_map_zoom' (with default
    value of '18') [interduo/chilan]
  - enhancement: implemented validity intervals for numbering plans [chilan]
  - enhancement: don't show customer sensible data for regular users and store all requested sensible data views
    in transaction log; new permission 'customer_sensitive_data_view' allows to disable this mechanism
    for selected users [chilan]
  - enhancement: added new option to 'sale registry' report which allows to check matches between document
    content service types and service type form filter [chilan]
  - enhancement: 'commited'/'not commited' assignment filter in customer search form [chilan]
  - improvement: show warning when changing privacy status flag
    (configuration variable: timetable.privacy_status_change_warning, default:false) [interduo]
  - improvement: multi customer group selection is possible in document generation form [chilan]
  - improvement: allow to search for node sessions using mac address fragment [chilan]
  - enhancement: added SIDUSIS Maps link type, added variables:
    'uke.sidusis_map_url' and 'uke.sidusis_default_map_zoom' (default: 20) [interduo]
  - improvement: '%title' symbol is replaced by document title during document send via mail [chilan]
  - enhancement: added new indicator - outdated tickets [interduo]
  - enhancement: lms-sidusis.php script for reporting ranges and importing internet
    demands as a tickets [interduo]
  - improvement: 'phpui.node_access_change_allowed_customer_statuses' configuration variable
    with 'connected' as default value, allows to specify for customer with which status node access flag
    change is allowed [chilan]
  - improvement: added support for %author in ticket notify templates [interduo]
  - enhancement: added support of number plan to customer type relations [chilan]
  - improvement: introduced smarty {user_selection} component [interduo]
  - enhancement: add assignment note field, user assignment description [interduo]
  - enhancement: added division filter in new message form [chilan]
  - enhancement: added office address, url and userpanel url properties to divisions [chilan]
  - enhancement: move tickets to favorite queues with single click ('rt.favorite_queues' configuration variable
    with empty default value) [interduo]
  - enhancement: added recipient selection by customer contact flags/options in new message form [chilan]
  - enhancement: quick search customers by alternative bank accounts [chilan]
  - improvement: added 'active, without document' assignment filter in customer search form [chilan]
  - improvement: some new substitution symbols support added  in mail body (%customer_name,
    %division_name, %division_address, %division_zip, %division_city) of message with attached invoice
    sent to customer [chilan]
  - improvement: 'phpui.login_form_logo' with default value of 'img/logo.png' controls which image file
    is presented in login, one-time password forms [chilan]
  - devel/cleanup: move configuration variable 'suspension_percentage' from 'finances' to 'payments' section [ravvar]
  - enhancement: 'sms.customer_message_template' configuration variable with default value '%body' allows
    to format sms message sent to customer containing helpdesk ticket message entered in new ticket message
    form [chilan]
  - improvement: single 'replace' button in customer group panel/box allows to replace selected group assignments
    by newly selected groups [chilan]
  - improvement: added sort criterion selection in cash report form [chilan]
  - improvement: 'phpui.default_customer_type' with 'private' as default value allows to preselect customer type during
    add customer form initialisation [chilan]
  - improvement: 'phpui.default_customer_flags' with empty default value allows to preselect customer flags during
    add customer form initialisation [chilan]
  - enhancement: added offline status selection in node search form [chilan]
  - improvement: new configuraton variable 'phpui.shortcut_icon' with default value of 'img/lms-net.gif'
    changes 'favicon' in web browser [chilan]
  - improvement: 'carbon-copy' e-mail address presentation in reply/quote ticket message add form, but checked
    by default only if original message was recognised as one from registered customer e-mail contact [chilan]
  - improvement: added '- without technology -' selection in link technology filter
    of customer search form [chilan]
  - improvement: separated help queue rights for sms and e-mail notices [chilan]
  - improvement: uke/pit: new form option 'verify feeding network nodes of flexibility points' checked
    by default [chilan]
  - enhancement: assignment option 'separate document position' allows to force disabling items aggregation
    to single document position [chilan]
  - improvement: 'assignments.default_net_account' with default value of 'false' controls default state
    of net account flag option in customer assignment forms [chilan]
  - improvement: allow to select many customer groups in customer add form [chilan]
  - enhancement: allow to manipulate of voip account service providerid property from web interface [chilan]
  - enhancement: search customers by finish date property of documents using type and date interval
    form filters [chilan]
  - enhancement: added service provider selection in voip account search and list forms [chilan]
  - enhancement: allow to set assignment discount entering target value [chilan]
  - enhancement: teryt backend script: --allowed-building-operations allows to limit allowed operations
    on building base during load it from external provider [chilan]
  - enhancement: lms-sendinvoices.php --extra-file option allows to send all regular files from specified
    directory [chilan]
  - enhancement: 'sendinvoices.extra_file' configuration variable can be used as alternative to --extra-file
    script option [chilan]
  - enhancement: allow to resolve many helpdesk tickets quickly with dedicated button [chilan]
  - improvement: 'payments.reward_penalty_period_start_check' configuration variable with default value of 'true'
    controls if expired balance is checked during financial analysis of previous period start [chilan]
  - improvement: new status filter selection in document list form: waiting for customer
    action (expired) [chilan]
  - improvement: implemented session timeout clearing after any mouse pointer move, any key press or scroll
    in window [chilan]
  - login timeout specific for current user (hacky code but should work) [chilan]
  - enhancement: new helpdesk queue rights: ticket watcher SMS and e-mail notifications [chilan]
  - improvement: 'phpui.network_all_addresses_assignable' with 'false' as default value allows to assign network
    and broadcast addresses to nodes and network devices; similar new property for networks
    controls it more specific [chilan]
  - enhancement: 'sendinvoices.blind_notify_email' allow to set 'Bcc' mail headers in posts with attached
    invoices [chilan]
  - improvement: new tariff/network/node flags - LLU service and BSA service [chilan]
  - improvement: 'expired' assignments filter selection in customer search form [chilan]
  - enhancement: uke/sidusis: implement foreign entity property for network ranges - new configuration
    variable 'uke.sidusis_foreign_entities' allows to define foreign entity dictionary [chilan]
  - enhancement: uke/pit: implemented network node flags and services support (used among others
    for BSA and LLU flaging) [chilan]
  - enhancement: expired identity card filter in customer search form [chilan]
  - enhancement: quick search customer by his document memo property [chilan]
  - enhancement: document separation group for assignments [chilan]
  - improvement: 'default_info', 'default_notes', 'default_message' and 'default_documentmemo' configuration variable
    in 'customers' section allow to initialise corresponding customer properties with specific value on add customer
    form start [chilan]
  - improvement: netnode and netdevices addresses can have empty street and building components if longitude and latitude
    were specified (this behavior is active when corresponding configuration variables 'teryt.allow_empty_streets'
    and 'teryt.allow_empty_building_numbers' are set to 'true' - their default values) [chilan]
  - enhancement: customer external ID and PIN authentication to userpanel support added with option of service
    provider selection [chilan]
  - enhancement: 'origin' property of customers and documents [chilan]
  - enhancement: 'customers.origin_check' configuration variable with 'none' as default value control if origin
    selection is required or recommended in new customer form [chilan]
  - enhancement: support of reference related document numbering [chilan]
  - enhancement: added new privilege/permission 'assignment managament' which is dedicated to assignments [chilan]
  - improvement: copy customer email and phone contacts to clipboard with single button click [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.add_customer_group_required'
    to 'customers.groups_required_on_add' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.capitalize_customer_names'
    to 'customers.capitalize_names' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_event_limit' to 'customers.event_limit' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_identity_card_expiration_check'
    to 'customers.identity_card_expiration_check' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_invoice_notice_consent_check'
    to 'customers.invoice_notice_consent_check' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_karma_change_interval'
    to 'customers.karma_change_interval' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_ssn_existence_check'
    to 'customers.ssn_existence_check' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_ssn_existence_scope'
    to 'customers.ssn_existence_scope' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_ten_existence_check'
    to 'customers.ten_existence_check' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customer_ten_existence_scope'
    to 'customers.ten_existence_scope' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_customer_consents'
    to 'customers.default_consents' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_customer_document_memo'
    to 'customers.default_document_memo' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_customer_email_flags'
    to 'customers.default_email_flags' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_customer_flags'
    to 'customers.default_flags' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_customer_phone_flags'
    to 'customers.default_phone_flags' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_customer_type' to 'customers.default_type' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.delete_related_customer_resources'
    to 'customers.delete_related_resources' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.disable_contacts_during_customer_delete'
    to 'customers.disable_contacts_on_delete' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_access_change_allowed_customer_statuses'
    to 'customers.node_access_change_allowed_on_statuses' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.reuse_customer_id' to 'customers.reuse_id' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.show_customer_due_balance'
    to 'customers.show_due_balance' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.show_customer_expired_balance'
    to 'customers.show_expired_balance' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.supported_customer_contact_types'
    to 'customers.supported_contact_types' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_divisionid' to 'customers.default_divisionid' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.call_phone_url'
    to 'customers.call_phone_url' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_billing_address_state'
    to 'customers.default_billing_address_state' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_location_address_state'
    to 'customers.default_location_address_state' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_postal_address_state'
    to 'customers.default_postal_address_state' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_status'
    to 'customers.default_status' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.ignore_deleted_customers'
    to 'customers.ignore_deleted' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.legal_person_required_properties'
    to 'customers.legal_person_required_properties' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.natural_person_required_properties'
    to 'customers.natural_person_required_properties' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.pin_allowed_characters'
    to 'customers.pin_allowed_characters' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.pin_max_size'
    to 'customers.pin_min_length' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.pin_max_size'
    to 'customers.pin_max_length' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.pin_restriction_description'
    to 'customers.pin_restriction_description' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.unsecure_pin_validity'
    to 'customers.unsecure_pin_validity' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.validate_changed_pin'
    to 'customers.validate_changed_pin' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customerlist_pagelimit'
    to 'customers.list_page_limit' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.customerlist_default_order'
    to 'customers.list_default_order' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.nodelist_pagelimit'
    to 'nodes.list_page_limit' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.capitalize_node_names'
    to 'nodes.capitalize_names' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_node_auth_types'
    to 'nodes.default_auth_types' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.default_node_check_mac'
    to 'nodes.default_check_mac' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.disable_active_links_in_nodeinfo'
    to 'nodes.disable_active_links_in_info' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_empty_mac'
    to 'nodes.empty_mac' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_gps_coordinates_required'
    to 'nodes.gps_coordinates_required' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_link_technology_required'
    to 'nodes.link_technology_required' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_login_required'
    to 'nodes.login_required' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_login_regexp'
    to 'nodes.login_regexp' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_to_network_device_connection_required'
    to 'nodes.network_device_connection_required' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_name_regexp'
    to 'nodes.name_regexp' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_password_allowed_characters'
    to 'nodes.password_allowed_characters' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_password_length'
    to 'nodes.password_length' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_password_required'
    to 'nodes.password_required' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_password_required_for_auth_types'
    to 'nodes.password_required_for_auth_types' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.node_multi_tariff_restriction'
    to 'nodes.multi_tariff_restriction' [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.public_ip'
    to 'nodes.public_ip' [chilan]
  - enhancement: new 'show sensitive data' userpanel info module option [chilan]
  - improvement: allow to change 'suspended' flag during assignment create/edit [chilan]
  - improvement: 'assignments.default_suspended' configuration variable with 'false' as default
    value allow to set default state of 'suspended' check option in new assignment form [chilan]
  - improvement: allow to manually set document consent/create date (users with 'full_access'
    or 'document_consent_date' privilleges are allowed to do that) [chilan]
  - enhancement: userpanel: '%extid' substitution symbol support in credential reminders [chilan]
  - enhacement: 'customers.show_timetable_event_notes' with 'false' as default value allows to enable
    event note presentation in customer events box (when set to 'true' value) [chilan]
  - enhancement: show node MAC address from last session [chilan]
  - enhancement: 'all without end date' selection in 'assignments' filter of customer search form [chilan]
  - improvement/devel: core prepares some document template variables in add document
    and document generator forms [chilan]
  - enhancement: '%qr2pay' symbol support in 'debtors' and 'reminder' notifications [chilan]
  - enhancement: node passwords can have 256 characters maximum length; 'nodes.password_max_length' with
    default value '32' controls how long passwords are accepted by user interface [chilan]
  - enhancement: 'documents.default_header' and 'documents.default_footer' configuration variables
    (with empty defaults) allowed to define default header and footer for all document templates
    where can be used as (respectively) 'header' and 'footer' smarty variables in template [chilan]
  - improvement: show total time in event search result form [chilan]
  - improvement: store creation date of data changes proposed via userpanel by customer [chilan]
  - enhancement: support of tax net accounted tariffs in promotion schemas [chilan]
  - enhancement: allow to attach files to messages sent to userpanel [chilan]
  - enhancement: allow to send mail messages from www message add form in scheduled date/time [chilan]
  - enhancement: 'messages.default_send_attempts' with default value of '3' allows to control how many
    send retries are made in case of send errors [chilan]
  - enhancement: allow to search for customers without email and phone contacts assigned [chilan]
  - enhancement: added 'notes' field to tariffs - text entered in this field will not be visible
    on customer documents such as contracts, annexes, etc. [chilan]
  - improvement: show status summary in message info form [chilan]
  - improvement: allow to delete found customers permanently [chilan]
  - enhancement: new customer consents: telephone marketing with 'phone_marketing' and direct marketing
    with 'direct_marketing' as system/logical names [chilan]
  - improvement: customer consent groups support [chilan]
  - improvement/devel: new plugin hooks 'customersearch_before_display' and 'get_customer_list_prepare_conditions'
    added [chilan]
  - improvement: added 'suspended, current' selection in 'assignments' filter of customer search form [chilan]
  - improvement: new customer consent: telephone service info with 'phone_service_info' as system/logical
    name [chilan]
  - improvement: allow to select multiple event types in search form [chilan]
  - improvement: show total calendar time summary in event search results [chilan]
  - enhancement: added 'reminder' type event to timetable [chilan]
  - enhancement: dynamic period document support - create assignments/liabilities during document commit;
  - enhancement: 'documents.default_dynamic_period' configuration variable with default value of 'false'
    controls if dynamic period option is checked when new document form starts [chilan]
  - improvement: added 'donthypenate' smarty modifier and block support [chilan]
  - enhancement: document external ID storage added [chilan]
  - enhancement: %extid symbol in invoice header and footer is replaced by invoice external id [chilan]
  - improvement: non-empty 'customers.groups_required_on_add'/'phpui.add_customer_group_required' configuration
    variable with value different than 'false' means if customer group selection is required and if value
    is different than 'true' then it is handled as pre-selected customer groups [chilan]
  - enhancement: 'customer-consent-selection' property in document template 'info.php' file controls
    if customer consent panel/tab/box is supported for given document template [chilan]
  - enhancement: new third party marketing and complaint information customer consents added [chilan]
  - improvement: supported customer consents can be limited to those specified by
    'customers.supported_consents' configuration variable (by default all consents
    are supported) [chilan]
  - enhancement: 'document external ID' option in sale report form [chilan]
  - enhancement: added new customer consent 'suspension of a fiber optic line over
    the customer plot' [chilan]
  - improvement: allow to transfer cash with any value between two customers [chilan]
  - enhancement: new customer consents 'service provision before withdrawal period expires',
    'userpanel marketing', 'userpanel 3rd party marketing', 'userpanel service information'
    and 'userpanel complaints' [chilan]
  - enhancement: added 'service phone' property to divisions [chilan]
  - enhancement: 'dont create assignments' option in promotion schema selection panel of new document form
    allows to create document without related assignments [chilan]
  - enhancement: new customer consent 'contract_signed_outside_company_premises' [chilan]
  - improvement: 'phpui.remember_date_in_customerbalancebox' with 'false' as default controls
    if operation date is remembered between form submits [chilan]
  - improvement: bin/lms-sms2rt.php is able to detect if received message is MMS (if 'mms_detect_regexp'
    configuration variable is not empty) and then properly send auto reply message (if 'customer_mms_auto_reply_body'
    configuration variable is not empty) [chilan]
  - improvement: bin/lms-sms2rt.php is able to detect if received message is unanswered voice call
    (if 'voicecall_detect_regexp' configuration variable is not empty) and then properly send auto
    reply message (if 'customer_voicecall_auto_reply_body' configuration variable is not empty) [chilan]
  - improvement: userpanel: #remind, #remind-phone, #remind-sms, #remind-email local anchors in URL login
    form allow to auto-activate corresponding credential reminder subforms [chilan]
  - enhancement: node report allows to export data to CSV file [chilan]
  - improvement/enhancement: grouped userpanel customer consents and added new customer consent
    with system name 'digital_content_use_results_in_loss_of_contract_withdrawal_possibility' [chilan]
  - enhancement: added customer legal personality filter in document generator form [chilan]
  - enhancement: 'customers' resource type support for 'bin/lms-cleanup.php' backend script [chilan]
  - enhancement: 'documentadd_prepare_data' hook allows plugin to prepare data required
    for document content generation [chilan]
  - improvement: templates/default/document/template.html is generic document template which can be used
    in all specific document templates [chilan]
  - enhancement: 'documents.company_logo', 'documents.company_logo_width' and 'documents.project_logo'
    allow to specify image files which should be used as all document logos [chilan]
  - improvement: 'documents.default_reuse' configuration variable with 'false' as default value
    allows to check corresponding documentadd form option with first start of this form [chilan]
  - enhancement: 'send to customer email' option added in new document form [chilan]
  - improvement: 'documents.location_address_preselection' configuration variable with 'false' as default value
    provides ability to enable automatic schema location address selection according to default customer address
    determination procedure [chilan]
  - enhancement: userpanel: optional two factor authentication mechanism using SMS-es sent to customer
    phone numbers [chilan]
  - enhancement: finances/report/invoices: option which toggles transfer forms on invoices [chilan]
  - improvement: configuration variable 'invoices.transfer_form_on_separate_page' with default
    value of 'false' allows to force transfer form presentation of invoices generated using TCPDF PHP library
    on separate page [chilan]
  - enhancement: new dedicated user permission to userpanel customer data change affirmation [chilan]
  - enhancement: allow to send SMS messages from www message add form in scheduled date/time [chilan]
  - enhancement: allow to cancel message awaiting for send [chilan]
  - improvement: node lock edit support added [chilan]
  - enhancement: userpanel: node lock management support [chilan]
  - enhancement: optgroup support for lms-ui-multiselect [chilan]
  - improvement: capacity settings for phone tariffs are enabled [chilan]
  - enhancement: userpanel can use extra style sheet specified in its global configuration [chilan]
  - enhancement: when customer is not selected in receipt add form then allow to select division in dedicated
    form field to avoid empty seller data presentation on generated receipt [chilan]
  - improvement: 'timetable.default_show_closed_events' or 'phpui.default_show_closed_events' configuration
    variables apply to eventlist and eventschedule forms [chilan]
  - enhancement: added location column to node session lists [chilan]
  - improvement: 'invoices.receipt_option_warning' configuration variable with 'false' as its default value
    enables warning popup presentation after 'receipt' option check click [chilan]
  - enhancement: added helpdesk ticket custom create and resolve time properties [chilan]
  - improvement: '%node_login' substitution symbol support in message add form [chilan]
  - improvement: 'rt.hide_disabled_users/phpui.helpdesk_hide_disabled_users' configuration variable applies
    to user list permissions in helpdesk queue/category forms [chilan]
  - improvement: 'documents.hide_disabled_users' (default value: false) and 'documents.hide_deleted_users'
    (default value: false) configuration variables control if users are visible on lists in document forms
    depending on user access and deleted properties [chilan]
  - improvement: 'finances.hide_disabled_users' (default value: false) and 'finances.hide_deleted_users'
    (default value: false) configuration variables control if users are visible on lists in cash registry forms
    depending on user access and deleted properties [chilan]
  - enhancement: added operation type and cash source filters in balance list form [chilan]
  - enhancement: allow to use substitution symbols in subject field of message add form [chilan]
  - improvement: 'ignore_deleted_customers' pattern property allows to disable matching of imported
    bank payments to deleted customers [chilan]
  - improvement: symbol '%note' support in 'payments.comment' configuration variable [chilan]
  - enhancement: allow to search customers with specified network device relation [chilan]
  - enhancement: all document file attachments can be sent to customer as single zip archive - new configuration
    variables 'documents.send_zip_filename' (empty default value means feature is diabled)
    and 'documents.send_zip_protection_password' (empty default value means no password protection) specify zip
    archive file name format and password which protects main file document attachment [chilan]
  - improvement: 'documents.send_zip_protection_algorithm' controls what encrypt method is used during
    zip-archived document creation (empty default value means EM_TRAD_PKWARE) [chilan]
  - improvement: show last error, success and delivery dates in messages info form [chilan]
  - improvement: 'documents-<document-type-alias-name>' sections can override configuration setting variables
    from 'documents' sections for specific document types (for now only 'mail_body' and 'mail_subject'
    are handled only) [chilan]
  - enhancement: new message item state 'ready to send' to mark items as handled by backend scripts
    and as sent to physical device [chilan]
  - improvement: more fine granular user permissions/rights to messaging actions [chilan]
  - improvement: allow to define countries in database for which customer property validation is disabled
    by default [chilan]
  - enhancement: added promotion schema filter in invoice / sale registry report [chilan]
  - enhancement: promotion schema filter in customer search form [chilan]
  - improvement: show group labels in lms-ui-multiselect and lms-ui-advanced-select ui controls - corresponding
    data-show-group-labels attribute and show-group-labels class control if group labels are visible [chilan]
  - improvement: %customer_name symbol support in 'documents*.mail_body' configuration variables [chilan]
  - enhancement: allow to optionally send reference document via email to customer [chilan]
  - improvement: optional document and reference document attachment aggregation attempts are possible
    depending of 'documents.aggregate_reference_document_email' configuration variable stable with 'false'
    as its default value [chilan]
  - improvement: bin/lms-teryt.php: --building-base-archived-filename-pattern allows to specify alternative
    regular expression to which file names in teryt directory are matched to use them as PRG database
    files [chilan]
  - enhancement: random user password generator in user/password forms; 'users.default_password_length'
    configuration variable with default value of '14' controls default length of generated random password [chilan]
  - enhancement: bulk grant/revoke users permissions to modify prices of promotion schema tariffs/assignments
    in promotion schema data subform [chilan]
  - improvement: 'assignments.default_dont_create_assignments' configuration variable with 'false' as default value
    controls starting state of 'dont create assignment' option of promotion schema selection panel
    in new document form [chilan]
  - enhancement: new document customer consent list conent depends on 'supported-customer-consents' property
    of document template definition in info.php file [chilan]
  - improvement: --margins parameter of bin/lms-html2pdf.js allows to set generated pdf document margins [chilan]
  - improvement: invoice item description/name field converted from text input to textarea [chilan]
  - enhancement: new positions can be added on issued correction invoices [chilan]
  - bugfix/improvement: use jquery-ui 'autocomplete' widget for lms-ui-autocomplete classed html elements
    (useful for textarea's) [chilan]
  - enhancement: new configuration variables which control validation type and customer statuses during required
    customer property validation: 'customers.natural_person_required_property_validation_error',
    'customers.legal_person_required_property_validation_error' (with 'true' as default value for both)
    and 'customers.natural_person_required_property_validation_customer_statuses',
    'customers.legal_person_required_property_validation_customer_statuses' (with 'connected,debt-collection'
    as default value for both) [chilan]
  - enhancement: added voip summary reports (especially usefull for UKE reports) [chilan]
  - enhancement: added subsection support which names are formatted as pattern
    '<section-name>-<subsection-type>:<subsection-name>' [chilan]
  - enhancement: new configuration variable 'netdevices.ip_name_regexp' with default value of '^[_a-z0-9\-\.]+$' controls
    what characters are allowed in network device ip host name [chilan]
  - improvement: use 'mail' section 'smtp_*' configuration settings/variables as fallback [chilan]
  - enhancement: new node session search criterion: location [chilan]
  - improvement: customer quick search 'notes' property takes dedicated customer notes tab/panel
    into consideration [chilan]
  - improvement: configuration variable 'sendinvoices.financial_history_reverse_order' ('true' as default value)
    and 'sendinvoices.financial_history_item_description_format' ('%comment' as default value) controls the way
    in which last N financial history table is generated during invoice send [chilan]
  - improvement: '%cid' and '%pin' substitution symbols are supported in 'documents.mail_body'
    configuration variable [chilan]
  - enhancement: CC, BCC and Reply-To e-mail addresses can be specified in message add form [chilan]
  - enhancement: added legal personality filter item in customer list form [chilan]
  - enhancement: 'exact match' of customer group filter in customer search form added [chilan]
  - improvement: use 'mail' section 'smtp_*' configuration settings/variables as fallback (document send) [chilan]
  - improvement: 'notify customer' option in add receipt form, new balance form and customer balance box/panel;
    'receipts.customer_notify', 'finances.customer_notify', 'cashimport.customer_notify' configuration variables
    with 'true' as default values control default state of related option of these forms [chilan]
  - enhancement: customer group assignment date can be specified in dedicated form field in customer
    search form [chilan]
  - enhancement: search customers by non-empty icn or ssn [chilan]
  - enhancement: 'default' property of template info.php configuration file support allows to pre-select given
    template in document forms [chilan]
  - improvement: 'assignments.default_target_discounted_price' configuration variable with 'false' as default
    value allows to check target discounted price option during new customer assignment form start [chilan]
  - enhancement: search customers by empty ten, icn or ssn [chilan]
  - improvement: new 'invoices.proforma_conversion_paytype' configuration variable with undefined value controls
    which payment type is set to invoice created from pro forma invoices (undefined value means presevation of payment
    type from pro forma invoice) [chilan]
  - enhancement: more flexible way of protecting document sent to customers - new configuration variables
    'documents.protection_password_authcode_source' (default: 'random8')
    and 'documents.protection_password_authcode_message' (default: '%authcode') [chilan]
  - enhancement: allow to search/filter network devices by network link technologies which they have assigned [chilan]
  - enhancement: added used and available fibers/lines properties to netlinks [chilan]
  - improvement: 'rt.body_date_regexp_match' configuration variable allows to specify regular expression by which
    received mail body is being searched for incoming message date [chilan]
  - enhancement: 'rt.subject_template' and 'rt.body_template' configuration variable (both with empty default value)
    control format of subject and body of created helpdesk ticket depending on selected properties of incoming
    e-mail message [chilan]
  - improvement: 'rt.ignore_sender_email' configuration variable with 'false' as default value allows to avoid
    setting requestor e-mail address in created helpdesk ticket (useful when incoming posts are originated
    from PBX) [chilan]
  - enhancement: added export cash registry operations to csv file [chilan]
  - enhancement: 'documents.office2pdf_command' configuration variable with empty default value allows to enable
    mechanism of office to PDF file conversion [chilan]
  - enhancement: office document attachments can be merge with other documents attachments if office2pdf mechanism
    is configured/enabled [chilan]
  - enhancement: support many filled-in files for document templates [chilan]
  - improvement: ticket add and edit forms: requestor phone and mail fields are selection list updated accordingly
    to current customer to ticket assignment while entering value outside list are still possible [chilan]
  - improvement: 'customers.financial_operation_list_default_limit' with default value of '10' controls how many
    financial operations in customer balance box are presented on single page by default [chilan]
  - enhancement: many promotion schema tariff assignments can be deleted in single action [chilan]
  - enhancement: bin/lms-proforma-transform.php backend script supports --customer parameter/option [chilan]
  - enhancement: user group filter allows to narrow user selection filter items in event list and schedule
    forms [chilan]
  - enhancement: message templates can have specified their content types explicitly [chilan]
  - enhancement: message template file attachment support [chilan]
  - improvement: bin/lms-rtparser.php can send html formatted auto-replies after setting 'rt.autoreply_format'
    to 'html' value ('text' is default value of this newly added configuration variable) [chilan]
  - improvement: '%rusername' support added in message template configuration variables [chilan]
  - improvement: added longitude and latitude properties of nodes to csv list export file [chilan]
  - enhancement: 'customers.restrictive_sensitive_data_access' configuration variable with 'false' as default value
    allows to enable checking related customer sensitive data user permissions/rights even for users with 'full access'
    permission/right assigned [chilan]
  - enhancement: new user permission/right introduced: 'customer_view' [chilan]
  - enhancement: added network device type filter in customer search form [chilan]
  - enhancement: 'rt.default_notified_email_sources' with undefined default value allows to specify which customer
    e-mail addresses are checked by default depending of source/origin of these addresses; undefined default value
    means that only addresses originated from customer e-mail contacts are checked during helpdesk ticket new message
    form start [chilan]
  - enhancement: 'phpui.welcome_visible_panels' controls what welcome module panels/boxes are visible (it has
    undefined value by default what means to show all supported panels/boxes) [chilan]
  - improvement/devel: userpanel modules with 'null' priority are not visible in userpanel tab/menu bar [chilan]
  - enhancement: userpanel credential reminder form can take customer division userpanel url while matching
    customer by phone number/e-mail/ten/ssn [chilan]
  - enhancement: added 'division' property to events [chilan]
  - enhancement: new customer search filter - modification date interval [chilan]
  - enhancement: new node search filter - modification date interval [chilan]
  - enhancement: new timetable event types: 'technical problem' and 'service implementation' [chilan]
  - improvement: 'customer' filter in customer list form changed to lms-ui-multiselect ui control [chilan]
  - enhancement: search node form: auth type filter added [chilan]
  - improvement: uke/pit: new form option 'report cable lines shorter than 1 meter' which is unchecked
    by default [chilan]
  - enhancement: 'lms-zipcodes.php' backend script allows to bulkly determine zip codes for customer
    addresses, network devices and network nodes [chilan]
  - improvement: 'rt.from_header_email_is_customer_contact_check' configuration variable with default 'true'
    value allows to disable checking if 'from' header e-mail address is customer contact during ticket message
    reply form startup [chilan]
  - improvement: use email addresses from 'To' headers to notify customers during new helpdesk ticket
    message creation [chilan]
  - improvement: bin/lms-teryt.php: try to use address postoffice property as borough name for 'merge'
    mode [chilan]
  - enhancement: new configuration variable 'documents.allow_unapproved_document_archiving' with 'false'
    as default value allows to enable document archiving event they are not approved [chilan]
  - enhancement: new node search status filter: 'no active and future assignments' [chilan]
  - enhancement: added optional node assigned bandwidth properties to node list csv export [chilan]
  - improvement: allow to customise which node properties are exported to CSV file in print node list form [chilan]
  - improvement: 'customers.unsecure_pin_min_length', 'customers.unsecure_pin_max_length',
    'customers.unsecure_pin_allowed_characters' and 'customers.unsecure_pin_restriction_description' configuration
    variables control unsecure customer PIN validation and generation rules [chilan]
  - enhancement: dedicated user permission 'network_map_edit' after assigning to user allows him to edit network
    link points [chilan]
  - improvement: external message id support for sms messages received by bin/lms-sms2rt.php backend script [chilan]
  - improvement: 'documents.send_zip_protect_all_attachments' configuration variable with 'false' as default allows
    to enable password protection of all attachments included in ZIP archive containing document file
    attachments [chilan]
  - improvement: emit error when trying to send document while encryption password should be sent to customer mobile
    phones via sms, but customer has not any assigned mobile phones [chilan]
  - improvement: create customer message which stores document encryption password sent via SMS message
    to customer [chilan]
  - enhancement: 'netdevices.empty_mac' configuration variable with empty default value allows to enable possibility
    of adding ip address to network devices without specifing MAC addresses [chilan]
  - enhancement: new customer consent 'balance_on_documents' added which is set for all customers by default [chilan]
  - improvement: new configuration variable 'assignments.tariff_tag_filter_all_required' with 'false' as default
    value controls if all selected tariff tags should be assigned to given tariff if this tariff should be visible
    in tariff selection list of customer assignment forms [chilan]
  - improvement: configuration variable 'uke.pit_empty_building_number_pattern' with empty default value
    allows to specify pattern to which matching builing numbers are treated as empty building numbers [chilan]
  - improvement: openlayer network map: more readable vertices during network link edit [chilan]
  - improvement: configuration variable 'map.create_new_point_after_link_edit_start' with 'false' as default
    allows to enable OpenLayers map mechanism which insert new vertex/point after start of network link edit in
    position when mouse button had been clicked [chilan]
  - devel/cleanup: renamed configuration variable 'phpui.map_type' to 'map.type' [chilan]
  - enhancement: added new customer flag 'consumer' usefull for legal persons treated as a consumers [chilan]
  - improvement: 'payments.*comment_<service-type>' configuration variable support added with values specific for
    different service types [chilan]
  - enhancement/improvement: division unique key changed from 'shortname' to 'shortname+label' [chilan]
  - enhancement: 'payments.reward_penalty_last_deadline_check_only' configuration variable with 'false'
    as default value allows to enable more user-friendly mechanism for activating rewards and penalties
    for customers [chilan]
  - enhancement: added service provider and external id properties for tariffs [chilan]
  - enhancement: uke/pit: 'uke.pit_foreign_entities' configuration variable allows to define list
    of foreign entities [chilan]
  - enhancement: added network link 'foreign entity' property [chilan]
  - enhancement: added customer owned infrastructure toggle visible and foreign entity owned network link
    toggle visibility toolbar buttons on openlayers-based network map [chilan]
  - enhancement: openlayers-based network map: added network link edit mode toolbar button [chilan]
  - improvement: openlayers-based network mapfont: awesome icon on toolbar buttons [chilan]
  - improvement: 'financial_history_reverse_order' (default: 'true')
    and 'financial_history_item_description_format' (default '%comment') configuration variables support
    added in lms-notify.php backend script [chilan]
  - improvement: 'finances.history_reverse_order' (default: 'true')
    and 'finances.history_item_description_format' (default: '%comment') configuration variables support
    added as default values for invoice send and notification specific configuration variables [chilan]
  - enhancement: 'with recipient address' customer assignment filter added [chilan]
  - improvement: 'nodes.default_info' with empty default value specifies info field value of node add
    form during its start [chilan]
  - enhancement: 'nodes.session_state_helper' (empty default value) controls if session state info button
    is visible near node last nas session info [chilan]
  - enhancement: qr-code icon buttons near phone numers and e-mail addresses to ease their uses
    in mobile devices [chilan]
  - enhancement: configuration variable 'messages.allowed_customer_status' with default all statuses
    allowed limits customers to which messages are sent from messageadd form [chilan]
  - enhancement: configuration variable 'nodes.auto_get_first_free_address' with 'false' as default allows
    to enable auto first free addresse determination if ip address field had not been changed earlier [chilan]
  - improvement: 'documents.office2pdf_document_types' with no default value (it means all document types supported
    by system) allows to select which office suite document attachments are processed by office2pdf mechanism
    (basing on document types to which file attachments are assigned) [chilan]
  - improvement: dedicated recipient TEN can be set for invoices and correction notes in customer location
    addresses [chilan]
  - enhancement: added 'budgetary unit' customer flag [chilan]
  - enhancement: added uke income report budgetary unit optional category [chilan]
  - improvement: 'database.debug' configuration variable can be set to 'time' and 'details' besides of
    so far supported 'true' and 'false' values [chilan]
  - improvement: '%username' and '%rusername' substitution symbol support added for 'documents.sender_name'
    and 'documents.mail_body' configuration variables [chilan]
  - enhancement: 'timetable.location_required' and 'rt.location_required' configuration variables (both
    with 'false' as default value) control if location selection is required if customer is selected
    in timetable events and helpdesk tickets [chilan]
  - improvement: configuration variable 'rt.queue_change_notify_all' with 'false' as default value allows
    to enable all user notifications in target queue during ticket move between queues (after value change
    to 'true') [chilan/naszasiec]
  - improvement: auto-check 'notify users' option when queue changes and 'rt.notify_auto_check_on_queue_change'
    is set to 'true' (its default value is 'false') [chilan/naszasiec]
  - improvement: bin/lms-sendinvoices.php script support --section|-s parameter which allows to specify
    configuration section which should be used to obtain configuration settings [chilan]
  - improvement: bin/lms-sendinvoices.php: --type (invoice|cnote|dnote) parameter allows to send documents
    of selected type [chilan]
  - enhancement: bin/lms-makedhcpconf: 'filename_pattern' configuration variable support which formats
    filename directive value in host block [chilan]
  - improvement: added more link speeds (2.5 Gbit/s, 5 Gbit/s, 20 Gbit/s) [chilan]
  - enhancement: added 'submission to KSeF' customer consent support [chilan]
  - enhancement: KSeF: configuration variable 'ksef.offline_suport' with 'false' as default value controls
    if QR code is presented on invoices already sent to KSeF for which there is no KSeF number assigned
    yet [chilan]
  - enhancement: KSeF: bin/lms-sendinvoices.php/lms-notify.php: %ksef-number, %ksef-url and %ksef-qr-code
    symbols support [chilan]
  - enhancement: KSeF: bin/lms-sendinvoices.php/lms-notify.php: --ksef, --ksef-offline, --without-ksef launch
    options/parameters support [chilan]
  - enhancement: KSeF: invoice send from webui: %ksef-number, %ksef-url and %ksef-qr-code symbols
    support [chilan]
  - enhancement: KSeF: JPK V7M (3) 1-0E support added [chilan]
  - enhancement: KSeF: UPO download and view support added [chilan]
  - improvement: 'error' or 'warning' values can be assign to configuration variable
    'phpui.teryt_required' [chilan]
  - improvement: GUS REGON API can be used for division forms [chilan]
  - enhancement: added '%doctype', '%docnumber' and '%docdate' substitution symbols for 'payments.*comment'
    configuration variables [chilan]
  - improvement: added smarty block plugin '{nobr}...{/nobr}' [chilan]
  - enhancement: added new customer consent 'traffic data use' with system name
    'traffic_data_use_for_marketing' [chilan]
  - enhancement: document templates support 'default-customer-consents' properties [chilan]
  - enhancement: KSeF: implemented purchase invoice import (export from KSeF perspective) [chilan]
  - enhancement: clicking 'resend' button in message info form opens popup window where we choose recipient
    selection [chilan]
  - improvement: modernized message sending mechanism - it's more interactive from now [chilan]
  - enhancement: when creating new message basing on other existing message, file attachments assigned
    to this second one message are automatically assigned to new created messages with possibility with
    exluding them from web form [chilan]
  - improvement: multi division selection in sale registry form/report [chilan]
  - improvement: 'phpui.network_all_addresses_assignable' configuration variable and 'all assignable' property
    of network control if gateway addresses can be assigned to nodes or network devices [chilan]
  - enhancement: added 'cause' filter in rtqueueview form [chilan]
  - improvement: added new session/auth type - IPoE [chilan]
  - enhancement: new customer consent 'postal delivery' for service info added [chilan]
  - enhancement: 'recipient TEN' property can be used in customer quick search input field [chilan]
  - improvement: 'ksef.purchase_invoice_default_order' with default value 'issue-date asc' determines default
    order of purchase invoice list [chilan]
  - enhancement: added 'customer ID' option in additional properties of node list print form [chilan]
  - enhancement: KSeF: added new recipient role: employee (8) [chilan]
  - enhancement: KSeF: 'ksef.all_consumers' configration variable with 'false' as default value allows
    to enable ksef consent globally for all consumer-type customers [chilan]
  - enhancement: KSeF: add purchase invoices to JPK-V7M(3) xml files [chilan]
  - improvement: KSeF: 'ksef.show_balance_summary' with 'false' as default value disables <Rozliczenia>
    inclusion in xml output file [chilan]
  - improvement: customer consent list toggle button added [chilan]
  - improvement: bin/lms-sendinvoices.php: '--part-number auto' support added [chilan]
  - improvement: 'unknown' status filter added to node search form [chilan]
  - improvement/bugfix: voip cdr records can be loaded to database with long delay,
    so we have to be able to store their creation dates and then issue them in invoices basing on there
    creation dates [chilan]
  - improvement: base date selection (between draw-up date and sale date) in invoice/JPK report form [chilan]
  - enhancement: added additional recipient address support for assignments and invoices [chilan]
  - improvement: show recipient count in message list form [chilan]

version 27.0 (2021-08-20):

  - enhancement: require user selection in event(add/edit) forms,
    (variable: phpui.event_user_required, default: not set) [interduo]
  - enhancement: allow to choose identity type for customer [ravvar]
  - improvement: 'invoices.hide_ssn' support for debit notes [chilan]
  - improvement: introduce 'phpui.default_show_closed_events' config variable i.e. it allows
    to control events displaying in customer timetable [ravvar]
  - improvement: improvement: add support to scheduler form filter which allows
    display only events which are simultaneously assigned to many users [ravvar]
  - enhancement: add possibility to switch via button between timetable and scheduler
    with preserved filter settings [ravvar]
  - enhancement: allow to control period alignment for assignment bulk creation basing on promotion
    schema - 'phpui.default_assignment_align_periods' configuration variable control this mechanism
    ('true' by default to mimic previous behavior) [chilan]
  - improvement: 'invoices.customer_credentials_format' specifies userpanel credentials format
    presented on TCPDF invoices [chilan]
  - improvement: MD5 encrypted user password support - this allows to use password imported
    from external systems such as Pyxis4SQL [chilan]
  - improvement: add support for filtering events in timetable and schedule
    that are assigned to users which are deleted or have no access [ravvar]
  - improvement: change the management of assigned users in the event
    for disabled or deleted users [ravvar]
  - improvement: allow to change recipient address during invoice note create or edit [chilan]
  - enhancement: allow to search customers by different consent states [chilan]
  - improvement: logo and name on top menu panel points to default LMS module [chilan]
  - enhancement: implemented expired debt by more than 30 and 60 days in new message filter [chilan]
  - enhancement: 'mail.smime_certificate', 'mail.smime_key', 'mail.smime_ca_chain'
    and 'mail.smime_sender_email' configuration settings control S/MIME mailing signing [chilan]
  - improvement: allow to hide system messages in ticket message history; 'rt.default_hide_system_messages'
    configuration variable controls default state of this option ('false' by default) [chilan]
  - enhancement: allow to tie vlans with netnodes [interduo]
  - improvement: 'phpui.nodepassword_allowed_characters' controls allowed character set in generated
    node password [chilan]
  - improvement: implemented 'with active tariffless liabilities' and 'with tariffless liabilities'
    customer filters [chilan]
  - improvement: 'phpui.ui_lang' setting allow to force UI language selection [chilan]
  - improvement: changed default value of 'phpui.promotion_preserve_at_day' from 'false'
    to 'true' [chilan]
  - improvement: allow to check/uncheck all consent checkboxes with single click [chilan]
  - improvement: 'phpui.nodepassword_required' allows to make password required
    or recommended ('false' by default) [chilan]
  - enhancement: allow to change ports in network link properties popup [chilan]
  - enhancement: introduce support for customer email address properties to support EPIX MdO [ravvar]
  - enhancement: number plan user assignment support [chilan]
  - enhancement: 'rt.detect_customer_location_address' controls location address automatic detection
    of newly created helpdesk ticket ('false' by default) [chilan]
  - enhancement: more customer balance substitution symbol support in add message form [chilan]
  - improvement: 'invoices.default_printpage' default value changed to 'original' [chilan]
  - improvement: changed default value of 'payments.delete_old_assignments_after_days' from '30'
    to '0' [chilan]
  - improvement: date period selector added in voip billing record list [chilan]
  - improvement: separate configuration import function to dedicated form in main menu [ravvar]
  - improvement: 'phpui.default_show_approved_assignments_only' controls if only approved assignments are presented
    by default (default value: 'true') [chilan]
  - improvement: 'phpui.default_show_expired_assignments' controls if expired assignments are presented
    by default (default value: 'false') [chilan]
  - improvement: changed default value of 'phpui.newticket_notify' from 'false' to 'true' [chilan]
  - enhancement: new node list filter - nodes with locks [chilan]
  - improvement: show lock icon on node list when given node has active lock in schedule [chilan]
  - improvement: add 'phpui.supported_currencies' setting that specifies the list of available currencies
    identified by ISO symbols [ravvar]
  - improvement: added source filter on queue content view [chilan]
  - enhancement: source accounts are stored in cash import records; customers can be matched by earlier
    cash import record source customers accounts during source file parsing process [chilan]
  - enhancement: 'cashimport.source_account_match_threshold_days' (default '0' value) controls how many
    days in cash import history are taken into account to match customer [chilan]
  - enhancement: allow to instantly switch user or login as different user ('admin#targetuser' in login form
    and button click on user list or user info) [chilan]
  - improvement: enabled visual editor for userpanel help topic bodies [chilan]
  - improvement: customer templated notifications don't depend on user notifications [chilan]
  - improvement: 'invoices.force_telecom_service_flag' has also impact on default state of telecom
    service checkbox in new invoice form [chilan]
  - enhancement/devel: new 'transgus_data_prepare' hook allows plugins to prepare data used in transgus
    report [chilan]
  - enhancement: lms-gus-regon.php backend scripts allows to bulkly update properties of customers
    with legal entity status [chilan]
  - enhancement: login field added to nodes [chilan]
  - enhancement: 'phpui.node_login_required' ('none' by default) enables non-empty login
    requirement [chilan]
  - enhancement: 'phpui.node_login_regexp' ('^[_a-z0-9-.]+$' by default) controls node login
    format [chilan]
  - enhancement: added period filter in customer assignment tab/box [chilan]
  - enhancement: added support to store mac addresses in network device [ravvar]
  - enhancement: add support for configuration export to sql file [ravvar]
  - enhancement: added 'without group' value in node list group filter [chilan]
  - improvement: '--customerid' parameter support in lms-notify.php backend script [chilan]
  - improvement: 'phpui.customerlist_default_order' allows to set default sort order on customer list;
    default sort order is by customername [chilan]
  - enhancement: 'phpui.timetable_allow_past_events' control if added events can have start and end
    date time in the past (default: 'true') [chilan]
  - enhancement: customer types can be changed bulkly [chilan]
  - enhancement: invoice/debit note send via mail multi division frontend support [chilan]
  - enhancement: show address type (icon-based) in location selection of promotion schema based version of
    assignment panel [chilan]
  - improvement: %date-y, %date-m, %date-d symbol support in message add form [chilan]
  - improvement: automatically select customer in ticket add form when we move to this from from network
    device which is owned by customer [chilan]
  - improvement: added supplier flag for customer - can be usefull for warehouse [chilan]
  - improvement: customer flag filter in customer list form [chilan]
  - bugfix: approximate quite well customer link count in uke income report when selected period is
    different than monthly [chilan]
  - enhancement: action on event generates technical message in assigned ticket [interduo]
  - enhancement: added support for minibilling printing in userpanel voip module [chilan]
  - improvement: don't show fiancial operation related ui elements in customer balance box if user has not
    assigned required permissions [chilan]
  - enhancement: new 'finances_view' user permission allows to grant view financial documents view
    for given user [chilan]
  - enhancement: more comprehensive filtering in billinglist (divide one voipaccount
    filter into two filters: customer,voipaccount) [interduo]
  - improvement: date period selector added in node session list filter [chilan]
  - improvement: date period selector in traffic filter form [chilan]
  - enhancement: 'ignore_contact_flags' allows to ignore customer contact notification flag
    in lms-notify.php [chilan]
  - enhancement: added service type property to cash records - it will allow to make financial reported
    categorized by service type more efficiently [chilan]
  - enhancement: userpanel: introduced new 'finances' module option which controls visibility of all
    assignments (even those which will start in future) [chilan]
  - improvement: show customer phone contacts in event info views [chilan]
  - enhancement: added service type selection in invoice report [chilan]
  - improvement: allow to search nodes using status criterion [chilan]
  - enhancement: --block-prechecks and --unclock-prechecks lms-notify.php parameters allow to specify
    which type of checks are applied before executing actions [chilan]
  - enhancement: userpanel:finance module, allow to control visibility of columns discount
    and invoice [interduo]
  - enhancement: lms-payments.php support new optional --issue-date parameter which gives possibility
    to change issue date stored in generated cash and documents records [chilan]
  - enhancement: userpanel:finance module, allow to control type of value shown
    to the customer - with discount included or without (default) [interduo]
  - enhancement: network properties can be selected in quick search field [chilan]
  - improvement: added expire in 60, 90 and indicated number of days values in customer assignment
    filters [chilan]
  - improvement: %tid in ticket notifications is replaced by number without leading zeroes; if you want
    to restore previous behavior you have to use digit prefix - ex. %6tid [chilan]
  - improvement: 'rt.ticket_subject_remove_reply_prefix' controls if "Re:" or "Odp:" prefixes are removed
    from ticket/message subject [chilan]
  - enhancement: change the way liabilities data are displayed [ravvar]
  - enhancement: introduce 'phpui.default_assignment_list_dataset' configuration variable to set default dataset
    in liabilities list ('gross' by default) [ravvar]
  - enhancement: lms-notify.php backend script allows to notify customers (and operator) about expiring document
    pending action date [chilan]
  - enhancement: added new customer consents - e-mail marketing and sms marketing [chilan]
  - enhancement: new reward/penalty tariff flags: electronic invoice, e-mail marketing and sms marketing [chilan]
  - improvement: allow to search customers by starting with phrase in customer name [chilan]
  - enhancement: user issuer property allow to mask issuer name on documents [chilan]
  - improvement: if GUS-REGON api returns many matched entities for single company identifier then allow
    to select it from modal dialog [chilan]
  - enhancement: waiting assignments filter in customer search form [chilan]
  - improvement: 'payments.reward_penalty_deadline_grace_days' allows to be more polite for customers while
    checking if they apply to reward/penalty for on-time payments (default: 0) [chilan]
  - enhancement: uke income report can take customer group assignment history into account [chilan]
  - enhancement: 'phpui.promotion_activation_at_same_day' allows to force the same day of activation
    payment ('false' by default) [chilan]
  - improvement: new 'active, without nodes' and 'waiting, without nodes' assignment filter selection
    in customer search form [chilan]
  - enhancement: allow to mark division as natural person (usefull for JPK reports) [chilan]
  - enhancement: support for /31 networks [chilan]
  - enhancement: implemented helpdesk category cloning [chilan]
  - enhancement: 'dhcp.range_format' with default 'range %start% %end%;' allows to define expected
    subnetwork range format [chilan]
  - enhancement: implemented transaction log support for voip account management [chilan]
  - enhancement: 'dhcp.network_begin' allows to define default subnetwork configuration fragment
    (empty by default) [chilan]
  - enhancement: implemented JPK-V7M declaration section generation as it is required by some external
    financial software [chilan]
  - enhancement: implemented --interval, --part-number, part-size parameter support with corresponding configuration
    variables in lms-notify.php backend script [chilan]
  - enhancement: added 'not sent to email' filter on invoice list [chilan]
  - enhancement: lms-ui-tooltip-rollover allows to easily define element with toolips which are closed after
    click out of them or mouse enter to them and then mouse leave [chilan]
  - enhancement: lms-ui-tooltip-toggle elements toggle tooltip after click [chilan]
  - enhancement: new smarty function 'hint' allows to conveniently embed hint buttons (supported modes
    are 'toggle' and 'rollover') [chilan]
  - enhancement: lms-notify.php support new action 'node-warning' which uses node warning flag [chilan]
  - improvement: more notification symbols to use for ticket mail notification [interduo]
  - improvement: 'mail.debug_level' can be applied when 'mail.debug_email' is not specified [chilan]
  - improvement: changed default value of 'mail.backend' from 'pear' to 'phpmailer' [chilan]
  - enhancement: added 'without location address' status filter in customerlist and customersearch forms [chilan]
  - enhancement: implemented new group action on ticket list 'mark as read' [chilan]
  - enhancement: allow to limit visible document types in userpanel documents tab [chilan]
  - enhancement: implemented document approval operator notifications [chilan]
  - enhancement: added '--division' parameter support in lms-notify.php backend script [chilan]
  - improvement: 'invoices.show_balance_summary' enables friendlier customer balance presentation
    on invoices [chilan]
  - enhancement: new tickets panel in customerinfo form [interduo]
  - enhancement: implemented user network password support especially useful for radius
    authentication [chilan]
  - enhancement: '{speech_recognition}' smarty function allows to easily insert speech recognition
    buttons into forms [chilan]
  - devel: added 'storage' directory which will contain different file resources [chilan]
  - enhancement: customer call archive support [chilan]
  - improvement: lms-notify.php: 'customer-status' action handles customer status parameter [chilan]
  - enhancement: added support for liabilities, tariffs and invoices in net terms [chilan/ravvar]
  - enhancement: removed support for 'invoices.credit_note_relation_to_invoice' configuration variable
    for invoice correction [ravvar]
  - enhancement: added 'invoices.show_pricing_method' configuration variable which allows display information
    about pricing method on invoice or invoice correction print ('true' by default) [ravvar]
  - enhancement: implemented identity document expiration date [chilan]
  - enhancement: multi-division support in message add form ('phpui.message_sender_email' allows to specify
    per division sender email addresses explicitily) [chilan]
  - improvement: 'invoices.default_net_account' changes default behavior of net account flag for newly
    created invoices (default 'false' value means gross account usage) [chilan]
  - improvement: customer modification conflict detection support [chilan]
  - improvement: added 'phpui.customer_event_limit' configuration variable support which controls
    limit of displayed events in customer event box ('10' by default; '-1' means no limit) [chilan]
  - improvement: logical conjunction selection for customer group selection in search form [chilan]
  - enhancement: lms-notify.php 'events' type notifications support formatting of subject and message
    contents ('%title' and '%description' symbols are supported for now) [chilan]
  - improvement: change presentation of the number plans in document forms [ravvar]
  - improvement: changed default invoice generation backend from 'html' to 'pdf' [chilan]
  - improvement: 'invoices.cnote_template_file' inherits its default value
    from 'invoices.template_file' [chilan]
  - improvement: hide resolved tickets in customer tickets panel
    (variable: phpui.default_show_closed_tickets, default: false) [interduo]
  - enhancement: 'phpui.send_message_limit_violation_type' with 'warning' as default value specifies
    reaction on recipient limit overrun in send message form [chilan]

version 26.0 (2020-12-15):

  - enhancement: 'invoices.proforma_conversion_comment_format' allows to define comment format
    in invoice created from pro forma invoice [chilan]
  - improvement: pro forma invoices which were transformed to regular invoice present description
    with line-though [chilan]
  - improvement: big performance boost in invoice report and jpk generation - LMS::GetInvoiceContent()
    gets detail level parameter support which allows to restrict returned data [chilan]
  - improvement: 'phpui.location_autosuggest_max_length' specified maximum matched location items
    visible in suggestion popup [chilan]
  - improvement: customer balance box: in aggregate document mode show document comment for invoice
    transformed from pro forma [chilan]
  - improvement: allow to manipulate ticket categories during new note add [chilan]
  - improvement: 'phpui.delete_related_customer_resources' configuration variable allows to specify
    which customer related resources are removed during not-permanent customer delete process
    ('assignments,customergroups,nodegroups,nodes,userpanel' by default) [chilan]
  - improvement: show all receipt positions on receipt list [chilan]
  - improvement: max download and max upload in customer traffic reports [chilan]
  - improvement: allow to enable/disable speed column presentation on traffic report [chilan]
  - enhancement: userpanel SSN/TEN and PIN authenication method support added [chilan]
  - improvement: minor visual improvements of panel/tab/card interface - larger vertical distances
    and different background color [chilan]
  - improvement: use native color selector input element for helpdesk ticket category look
    definition [chilan]
  - improvement: voip account password generation link near password form field [chilan]
  - enhancement: implemented visibility toggle of customer/node panels/tabs/boxes [chilan]
  - improvement: allow to use ticket filter owner option 'no owner' together with
    selected user in helpdesk [interduo]
  - improvement: enable/disable related ticket list selector based on parent ticket
    definition [chilan]
  - improvement: don't allow to edit used tariffs unless user has appropriate privilege
    ('used_tariff_edit' permission introduced) [chilan]
  - improvement: added dedicated looked up property customisation button inside quick search
    input fields [chilan]
  - improvement: lms-cashimport.php script generates import report on output [chilan]
  - enhancement: userpanel startup module can be defined from user interface [interduo]
  - improvement: new customer can get first free identifier when 'phpui.reuse_customer_id'
    is set to 'true' [chilan]
  - improvement: added phpui.timetable_hide_disabled_users setting
    in eventmodify/eventlistfilter [interduo]
  - enhancement: allow to disable state changes new->open when adding note to ticket - now
    it depends on variable rt.change_ticket_state_to_open_after_note_add_interval
    (default: 0, which keeps current behaviour) [interduo]
  - improvement: allow to quickly resend existing message [chilan]
  - enhancement: implemeneted main menu item visibility toggle basing on user permissions [chilan]
  - improvement: allow to hide createtime in ticket row (variable:
    rt.hide_ticket_row_create_time, default: 0) [interduo]
  - enhancement: hosting: added support for ALIAS and ANAME record types - they are used
    by github pages [chilan]
  - enhancement: allow to quickly clone existing invoice [chilan]
  - enhancement: implemented true responsive menu popups [chilan]
  - enhancement: implemented bulk operations on customer contact flags in customer search
    result [chilan]
  - enhancement: implemented true responsive lms-ui-multiselect control [chilan]
  - enhancement: 'payments.prefer_netto' allows to enable netto value usage produced by plugins
    ('false' by default) [televoice]
  - enhancement: separate the Tcpdf transfer form into a separate class [ravvar]
  - enhancement: responsive version of layout implemented [chilan]
  - improvement: 'phpui.promotion_activation_at_next_day' configuration variable support new 'business'
    value which causes next business day usage for activation [chilan]
  - enhancement: 'phpui.promotion_use_discounts' configuration variable allows to force
    value discounts usage in assignments created basing on promotion schemas [chilan]
  - improvement: replace the transfer form from HTML to Tcpdf [ravvar]
  - enhancement: allow to show the transfer form on the invoice for selected customers [ravvar]
  - devel/improvement: localisation support moved to separate class - symultaneous multi-localisation
    support [chilan]
  - devel/refactoring: moved currency configuration to Localisation class [chilan]
  - improvement: separate smarty function for paytype selection - items are sorted by name
    in accordance with current ui locale [chilan]
  - improvement: customer identifiers are validated with billing address country in mind [chilan]
  - enhancement: 'phpui.uploaded_image_max_size' allows to resize images uploaded to server on web
    browser side to specified size (default '0' value means disabled) [chilan]
  - bugfix: postgresql: connect through IP instead of socket when localhost is set
    in lms.ini [interduo]
  - enhancement: if uploaded image scaling is enable allow to disable scaling using optional
    checkbox [chilan]
  - improvement: don't show quick search fields when current user has no permissions to related
    part of system [chilan]
  - improvement: added 'phpui.send_message_confirm_threshold' configuration variable which control
    how many potential message recipients trigger confirmation dialog ('50' by default) [milek]
  - enhancement: configuration variable 'rt.allow_modify_resolved_tickets_newer_than' allows
    to prevent old ticket re-open (default '86400') [interduo]
  - enhancement: allow to select different lms.ini file using its name containing http
    server port [chilan]
  - enhancement: additional selection level in assignment and promotion tariff definition - service
    type [chilan]
  - improvement: implemented clear button in lms-ui-multiselect ui controls [chilan]
  - enhancement: customer group selection support added in lms-notify.php [chilan]
  - enhancement: implemented user permissions for companies and global division context selection.
    Configuration variable 'phpui.force_global_division_context' ('false' by default)
    allows to force division contex [ravvar]
  - improvement: converted customer group selection in customer search form to multiple
    selection [chilan]
  - enhancement: added the ability to copy user divisions between users [ravvar]
  - enhancement: customer notes support in dedicated tab [chilan]
  - enhancement: divided mailing notice consent to separate mail and sms delivery consents [chilan]
  - enhancement: sms and mailing notice consent support for lms-notify.php backend script
    ('ignore_customer_consents' script configuration variable set to 'true' allows to imitate previous
    behavior) [chilan]
  - improvement: transaction log tab content is loaded in background and on-demand [chilan]
  - enhancement: lms-notify.php supports customer 'birthday' type notifications [chilan]
  - improvement: 'phpui.default_node_check_mac' allows to enable mac checking automatically
    during new node creation ('false' by default) [chilan]
  - improvement: new customer group input parameter parser allows for much more group
    assignment combination tests [chilan]
  - improvement: implemented user group assignment management from user forms [chilan]
  - improvement: 'phpui.touch_device_tooltips' configuration variable allows to disable globally
    tooltips/hints on touch devices (default 'false' value means disabled) [chilan]
  - enhancement: added transaction tab/box into netdevinfo/netdevedit views [chilan]
  - improvement: allow to use assignments with backward period accounting - 'payments.backward_comment'
    and 'payments.settlement_backward_comment' configuration variables control format of generated cash
    operation content [chilan]
  - enhancement: added the ability to hide fortunes on the Welcome page by setting configuration
    variable 'phpui.hide_fortunes' ('false' by default) [awbnet]
  - enhancement: variable phpui.allow_modify_closed_events_newer_than allows to prevent modify
    old events (default '604800') [interduo]
  - enhancement: added support for many persistent filters in single module [chilan]
  - improvement: allow to force quick search by resource id prepending numeric value with hash
    character [chilan]
  - improvement: allow to click in auto suggestion description to open resource
    in new window/tab [chilan]
  - improvement: don't require territ flag for addresses which have selected province
    from outside territ database province list [chilan]
  - enhancement: 'phpui.node_to_network_device_connection_required' (default: 'false') configuration
    variable controls if network device connection is required for added/edit node [chilan]
  - enhancement: 'phpui.teryt_required' support for voip account localisations [chilan]
  - improvement: allow to include cash source file name in cash import record cash
    calculation [chilan]
  - improvement: changed default value for 'phpui.datables_max_records' from '300' to '0' [chilan]
  - enhancement: introduce configuration per division (UI) [ravvar, chilan]
  - enhancement: implemented 'customer-group' action in lms-notify.php [chilan]
  - enhancement: new user permission 'financial_operations' disallows access to financial
    record lists [chilan]
  - enhancement: new configuration variable 'sms.message_template' allows to reformat
    message before sending it [chilan]
  - improvement: lms-rtparser.php backend script is able to scale down image according
    to 'phpui.uploaded_image_max_size' [chilan]
  - enhancement: added separate receipt/bill sale flag for invoices [chilan]
  - enhancement: resolve ticket by new action button in queueview list [interduo]
  - improvement: changed TCPDF/HTML debit note to use correspondence address as
    shipping address (if 'invoices.post_address' is set to true) [awbnet]
  - improvement: added issuer's signature field to debit note (TCPDF/HTML)
    (visible if 'notes.issuer_signature' is set to true, default: 'false') [awbnet]
  - improvement: made TCPDF debit note version look like TCPDF invoice [awbnet]
  - improvement: new default values for 'phpui.multiselect_popup_on_bottom' (change from 'false'
    to 'true') and 'phpui.multiselect_max_visible' (change from '0' to '5') [chilan]
  - enhancement: added routed network support [chilan]
  - improvement: 'invoices.show_tax_category' configuration variable ('false' by default) controls
    tax category column visibility on invoices [chilan]
  - enhancement: added territ city type property support [chilan]
  - enhancement: implemented JPK new 'EE' flag support for invoices [chilan]
  - improvement: added 'with discount' customer state filter [chilan]
  - enhancement: add support for multilevel cloning of the configuration variables [ravvar]
  - improvement: added 'with receipt' filter on invoice list [chilan]
  - improvement: added service type property in tariffless liabilities [chilan]
  - improvement: 'phpui.default_liability_type' ('-1' by default) controls liability type
    property for newly created tariffless assignments [chilan]
  - improvement: 'phpui.default_tariff_type' ('-1' by default) controls type property
    for newly created tariffs [chilan]
  - improvement: added split payment and telecommunication service filter on invoice list [chilan]
  - improvement: 'invoices.allow_negative_values' ('false' by default) allows to enable negative
    value invoice position use [chilan]
  - enhancement: added customer flags - for now it is used for JPK TP purpose [chilan]
  - improvement: 'phpui.default_assignment_discount_type' controls preselected discount type
    in new customer assignment form ('percentage' by default) [chilan]
  - enhancement: lms-notify.php support action parameter for 'assignment-invoice' which
    specifies target document type [chilan]
  - enhancement: allow send message instatly to customers which were found in customer search
    form [chilan]
  - devel/improvement: bumped used serwersms API from v1 to v2 [chilan]
  - enhancement: 'phpui.timetable_user_row_limit' (default: '4') configuration variable to hide
    assigned users to event when there is too many user assigned [interduo]
  - enhancement: added text label property to divisions which is presented in user interface
    in division selection list [chilan]
  - enhancement: added some new customer search status filters - expiring/expired/without
    and active (unarchived) document flags [chilan]
  - improvement: lms-maketcnew.php support --host parameter which allows to limit selected
    networks to those assigned to specified host [chilan]
  - enhancement: implemented document scan upload with automatic document number recognition
    basing on bar code placed on document [chilan]
  - improvement: document number bar code generation for all document templates [chilan]
  - improvement: invoices: show iban bank accounts with country codes if seller and buyer are
    from different countries [chilan]
  - enhancement: added new 'VAT payer' customer flag [chilan]
  - enhancement: lms-vat-payers.php backend script allows to update VAT payer customer flag
    using public VIES webapi and MF.GOV.PL REST api [chilan]
  - enhancement: present VAR reg. no. (TEN's) in full format with country code when invoice
    is export document [chilan]
  - enhancement: 'invoices.check_customer_vat_payer_flag_for_telecom_service' configuration variable
    with default 'false' value controls if invoices issued for telecom services are flagged
    as JPK-EE for customers which are not active VAT payers [chilan]
  - improvement: added customer flag filter in customer search form [chilan]
  - enhancement: lms-sms2rt.php backend script can be launched from within http server and handle
    incoming sms callback made from external device [chilan]
  - devel/cleanup: serwersms.pl, sms.pl, smsapi.pl, smscenter.pl support moved to separate
    plugins [chilan]
  - enhancement: new smstools php backend scripts replace old perl lms-smstools script [chilan]
  - improvement: don't show document promotion schema selection tab/box when template is not selected
    or selected template doesn't require this [chilan]
  - enhancement: implemented promotion schema <-> assignments bindings - new special symbols
    '%promotion_name', '%promotion_schema_name' and '%promotion_schema_length' are supported for
    'payments.comment', 'payments.backward_comment' and 'payment.settlement_comment' configuration
    variables [chilan]
  - enhancement: promotions are in fact not deleted, but only marked as deleted [chilan]
  - improvement: improvement: auto-hide 'back to top' button [chilan]
  - improvement: '%last_N_in_a_table' is supported in much more convenient way - symbol itself
    represents whole table [chilan]
  - enhancement: new configuration variable 'phpui.assignment_presentation_format' ('%name' by default)
    allows to change  tariff presentation form (some special symbols related to promotions
    are supported) [chilan]
  - enhancement: imeplemented customer karma support; 'phpui.customer_karma_change_interval'
    configuration value ('86400' by default) control how ofter user can change karma for given
    customer [chilan]
  - improvement: 'phpui.default_existing_assignment_operation' variable (with default 'keep' value)
    controls what operations are applied to currently existing assignments [chilan]
  - enhancement: 'payments.allowed_customer_status' ('connected,debtcollection' by default)
    specified list of statuses which are required from customers to generate financial
    burdens [chilan]
  - enhancement: 'notify.allowed_customer_status' specified list of statuses which are required
    from customers to send them notifications (all statuses by default) [chilan]
  - enhancement: 'sendinvoices.allowed_customer_status' specified list of statuses which
    are required from customers to send them invoices [chilan]
  - enhancement: 'phpui.document_confirm_date_required' forces confirm date requirement
    if from date is later than days count in ther future (default '0' values menas that feature
    is disabled) [chilan]
  - improvement/devel: migrated from tinymce 4 to 5 [chilan]
  - improvement: helpdesk ticket type list is sorted according to current localisation [chilan]
  - enhancement: ticket change sms customer notification support [chilan]
  - improvement: customer search link replace by icon displayed inside customer id input
    when container is hovered or focused [chilan]
  - enhancement: new customer selection ui control which allows to select customer using quick
    search mechanism and suggestion popup [chilan]
  - enhancement: lms-rtparser.php supports html message receive [chilan]
  - improvement: 'invoices.jpk_flags' toggles JPK flags presentation on generated invoice
    ('false' by default) [chilan]
  - enhancement: helpdesk ticket regular messages can use html format [chilan]
  - improvement: 'rt.default_editor' has similar role to 'phpui.default_editor' setting, but
    the first one controls default editor in helpdesk forms ('html' by default) [chilan]
  - enhancement: 'invoices.payment_title' allows to define own title on transfer forms
    (not defined by default what means to use hardcoded title) [chilan]
  - enhancement: lms-rtparser.php backend script support imap mode [chilan]
  - improvement: alternative invoice deadline selection counted in days for convenience [chilan]
  - enhancement: added support for CC mail headers while communicate through helpdesk
    with customer [chilan]
  - enhancement: implemented bulk delete of selected tickets on queue view ticket list [chilan]
  - enhancement: new ticket message form: allow to select which customer mails should be used
    to send them submitted reply [chilan]
  - improvement: search customers by non-empty ten/vat reg no. [chilan]
  - improvement: 'phpui.supported_customer_contact_types' configuration variable controls
    what customer contact types are supported by system (by default all contact types
    which are implemented) [chilan]
  - improvement: 'phpui.helpdesk_customer_notification_mail_subject' allows to format message subject
    of post sent to customer during new ticket message creation
    (default: '[RT#%tid] %subject') [chilan]
  - improvement: replaced choose target network device selection popup by lms-ui-advanced-select
    ui control [chilan]
  - enhancement: implemented reward/penalty flag for tariffs [chilan]
  - enhancement: added type property to network device models [chilan]
  - enhancement: added --division parameter support for lms-payments.php
    and lms-sendinvoices.php [chilan]
  - improvement: implemented phpui.timetable_hide_disabled_users for eventschedule module [interduo]
  - enhancement: changing ticket queue resets ticket state to NEW
    ('rt.ticket_queue_change_resets_ticket_state', default:false) [interduo]
  - enhancement: userpanel configuration: allow to disable pin validation during authentication
    (it doesn't disable whole userpanel authentication process, but it only disables pin checks
    with 'phpui.pin_*' usage) [chilan]
  - improvement: 'phpui.validate_changed_pin' with default 'false' value allows to enable pin
    validation only when customer pin is changed [chilan]
  - enhancement: lms-cleanup.php backend script provides preliminary support for cleaning up
    old resources from system (for now 'finances' resources only) [chilan]
  - enhancement: new document customer notifications (document which awaits for customer
    decision to be made from userpanel) [chilan]
  - enhancement: added network vlan list [interduo]

version 25.0 (2020-05-15):

  - improvement: introduced invoices.hide_ssn configuration variable which allows to hide SSN
    on invoices [chilan]
  - improvement: show icon correspondent to netdevnode online status in netdevinfo [ravvar]
  - devel: bumped required php version to 5.6 [chilan]
  - devel: bumped required phpmailer version to 6.x [chilan]
  - improvement: show online status for network devices ip addresses [chilan]
  - improvement: show device online status on network device list [chilan]
  - enhancement: online status filter on network device list [chilan]
  - improvement: added shortcut to print customer balance from customer balance box [chilan]
  - enhancement: userpanel: callback mechanism introduced which allows to generate html content
    from hidden module [chilan]
  - enhancement: userpanel: urgent notices are shown independently of active tab/module [chilan]
  - enhancement: userpanel: special icon on notices tab inform if there are any unread
    notices [chilan]
  - enhancement: allow to prefer generation of settlements only - when
    payments.prefer_settlement_only set to 'true' [chilan]
  - improvement: phpui.speed_unit_type and phpui.speed_unit_aggregation_threshold control
    bandwith unit presentation [chilan]
  - improvement: add date category to filter in messages list [ravvar]
  - improvement: data-target-url attribute support has been improved and is far
    easier to use [chilan]
  - enhancement: icon near customer addresses which redirect to google maps places [chilan]
  - improvement: allow to change owner and queue during group message reply [chilan]
  - enhancement: invoices.hide_discount configuration variable ('false' by default) controls
    if discount column is presented on invoices [chilan]
  - improvement: added copy to clipboard buttons/icons for events, tickets, ticket message
    and notes [chilan]
  - improvement: show customers with all inactive assignments for given tariff as blend [chilan]
  - devel: change confirmation message appearance throughout change type from ConfirmLink
    to ConfirmDialog [ravvar]
  - devel: change warning message appearance throughout change type from alert
    to alertDialog [ravvar]
  - devel: change confirmation message appearance throughout change type from 'confirm'
    to 'ConfirmDialog' [ravvar]
  - enhancement: customer group node list network filters take network devices ip addresses
    into consideration [chilan]
  - enhancement: add per user settings to ui configuration [ravvar]
  - enhancement: added credit note reason template support [chilan]
  - improvement: allow to quick search nodes by location address [chilan]
  - improvement: allow to jump immediately to ticket assigned event day in timetable [chilan]
  - improvement: phpui.default_divisionid specifies pre-selected division of added
    customer [chilan]
  - improvement: make login form mobile device friendly [chilan]
  - enhancement: invoice and debit note language depends on division country and customer
    country [chilan]
  - enhancement: script automating the installation of LMS + PostgreSQL for the Debian 10/Buster
    system has been added to the "sample" catalog [interduo]
  - improvement: make customer and node forms responsive [chilan, ravvar]
  - improvement: phpui.open_calendar_on_input_click set to 'true' ('false' by default) enables
    old-style date picker behavior on input control click [chilan]
  - enhancement: session expiration time to left presented on right-top corner [chilan]
  - enhancement: phpui.session_expiration_warning_interval controls if session expiration
    warning popup is displayed if given seconds left to auto-logout (default value '0'
    means function is disabled) [chilan]
  - enhancement: separate session timeout for userpanel [chilan]
  - enhancement: implemented count for assignments [chilan]
  - enhancement: phpui.node_multi_tariff_restriction variable controls how multi tariffs
    to single node assignments are handled (default empty value means current
    behavior) [chilan]
  - enhancement: nodelocks can be enabled/disabled [chilan]
  - improvement: phpui.datatables_max_records can have 0 value which means
    no record limit [chilan]
  - enhancement: added optional bandwidth link distribution for uke income report [chilan]
  - improvement: allow to search customers with balance calculated on given day [chilan]
  - enhancement: google authenticator support added [chilan]
  - enhancement: old password required to change current user password [chilan]
  - enhancement: phpui.two_factor_auth_required ('false' by default) controls if two factor
    authentication is required for all users [chilan]
  - enhancement: two factor authentication trusted device support [chilan]
  - enhancement: admin can set force password change flag fo users [chilan]
  - enhancement: split payment support paytype supplement on invoices and credit
    notes - configuration variable 'invoices.split_payment_threshold_value' controls value
    threshold for 'split-payment' capability ('15000' for invoices issued after 10/31/2019
    and '-1' for ones issued before 11/01/2019 where this last value means exclusion) [chilan]
  - enhancement: lms-archive-documents.php backend script introduced as it allow
    to archive many non-trade documents at once [chilan]
  - improvement: allow to filter customers by overdue receivables [chilan]
  - improvement: message item identifiers are set as sent sms message identifiers [chilan]
  - enhancement: allow to define separate configuration for sms sent to customers [chilan]
  - enhancement: added backend script lms-serwersms-callback.php script which
    is called back by serwersms.pl and updates sent sms message status [chilan]
  - enhancement: added backend script lms-smsapi-callback.php script which is called back
    by smsapi.pl and updates sent sms message status [chilan]
  - enhancement: allow to copy access rights from other existing user selected
    from list [chilan]
  - improvement: added support for %services replace symbol in messages [ravvar]
  - improvement: allow display message body with wildcards for particular message [ravvar]
  - improvement: added different content type of messages based on mime types [chilan/ravvar]
  - enhancement: lms-notify.php supports userpanel and userpanel urgent message emitions [chilan]
  - enhancement: message file attachement are stored in message history
    (introduced sendinvoices.message_attachments configuration variable which enables/disables
    attachment storage for send invoice messages; 'false' by default) [chilan/ravvar]
  - enhancement: invoices.post_address configuration variable controls post box address
    visibility on invoices ('true' by default) [chilan]
  - improvement: optimalised performance of queue/ticket statistic generation [chilan]
  - improvement: html and pdf debit note templates are in feature parity [ravvar]
  - enhancement: invoice list: allow to delete many invoices in single operation [chilan]
  - enhancement: multi-currency support ('phpui.default_currency' allows to override
    default currency determined from language settings - none by default) [chilan]
  - enhancement: added description field to voip accounts [chilan]
  - enhancement: added bank name property to divisions [chilan]
  - enhancement: last day of month at support for monthly assignments [chilan]
  - enhancement: JPK-FA variant 3 support added [chilan]
  - improvement: from date selection in customer event box and allow to quick jump
    to timetable [chilan]
  - enhancement: added separated split payment support for tariffs and liabilities [chilan]
  - enhancement: add possibility to set values in credit note through discount
    settings - configuration variable 'invoices.credit_note_relation_to_invoice' controls
    discount calculation in relation to invoice document (first)
    or last credit note document (last) [ravvar]
  - enhancement: host transfers between networks preserve host map [chilan]
  - enhancement: log timetable event changes in transaction log [chilan]
  - enhancement: network device login radius property support [chilan]
  - enhancement: search node owners can be assign to (or unassign from) customer group [chilan]
  - enhancement: add hooks to event editing and deleting scripts [ravvar]
  - enhancement: customer search by simultaneously selecting many statuses [chilan]
  - enhancement: introduce schedule - a new timetable view with
    configurable working day hours and interval time - configuration variable
    phpui.timetable_working_hours (default "08:00-19:00")
    and phpui.timetable_working_hours_interval (default: '30' [minutes])[ravvar]
  - enhancement: allow to filter invoice list by selected division [chilan]
  - enhancement: 'phpui.balancelist_default_current_period' and 'phpui.documentlist_default_current_period'
    specify default current period in balance list and document list
    (they are undefined by default) [chilan]
  - enhancement: existing (not deleted) filter in customer list [chilan]
  - enhancement: allow to select location without end-points in promotion schema selection window [chilan]
  - improvement: added tariff selection filtering by valid tariffs and tariff tags [chilan]
  - enhancement: phpui.promotion_show_period_values controls if period values are presented
    in promotion tariff selection lists [chilan]
  - devel/optimalisation: cache customer balance in separate table 'customerbalances' for
    meaningfull database offload [chilan]
  - enhancement: allow to quick search customers by additional information and notes [chilan]
  - enhancement: count can be specified for selected promotion schema tariff components [chilan]
  - enhancement: added plugin support allows to use external send sms handlers [chilan]
  - enhancement: %mac% and %MAC% special symbols are supported for option value modifications
    in lms-makedhcpconf.php backend script [chilan]
  - enhancement: added stats and live traffic support for network device ip addresses [chilan]
  - enhancement: userpanel/info: allow to hide archived documents [chilan]
  - improvement: userlist: revDNS queries are launched asynchronously by ajax request [chilan]
  - improvement: optional customer node column in customer print report [chilan]
  - enhancement: allow convert html to pdf on-fly using external commands - now puppeteer script connecting to
    google chrome working in headless mode is supported ('documents.html2pdf_command'
    should point external command accessible from server) [chilan]
  - enhancement: added experimental support for guyanian locales [chilan]
  - enhancement: tariff tag assignment manager from within tariff forms [chilan]
  - improvement: new 'backend' channel introduced (now supported inly for 'debtors' and 'reminder' types);
    allows to create customer list which can be sent as mail report [chilan]
  - enhancement: promotion schema period selections are combo-boxes [chilan]
  - improvement: allow to check/uncheck all terminals in schema selection form;
    phpui.promotion_schema_all_terminal_check configuration variable controls if all customer terminals
    are checked by default in promotion schema selection form ('false' by default) [chilan]
  - improvement: tariff tag selections are preserved between promotion schema info form submits [chilan]
  - improvement: allow to filter customers which have unarchived documents assigned [chilan]
  - improvement: phpui.customer_ten_existence_scope and phpui.customer_ssn_existence_scope configuration
    variables (both 'global' by default) control scope of customer identifier existence checks [chilan]
  - improvement: let customer pay deadlines assign specific values [chilan]
  - enhancement: allow to enable/disable userpanel credential reminder methods [chilan]
  - enhancement: web browser form states can be restored between submits per browser tab [chilan]
  - improvement: preventing the lms-sendinvoices.php from sending already sent (inc. manually sent) invoices
    via configuration variable 'sendinvoices.ignore_send_date' (default: 'false')
    and highlight invoices already sent in invoice list and customer info [ravvar]
  - improvement: highlight documents already sent in documents list and customer info [ravvar]
  - enhancement: 'invoices.show_only_alternative_accounts' configuration variable ('false' by default)
    causes presentation alternative customer bank accounts only on invoices and notes, but when
    there are no alternative accounts defined for customer, division account is presented
    as fallback [chilan]
  - improvement: html contents of element with lms-ui-autolinker css class is handled
    by Autolinker [chilan]
  - enhancement: rt.default_queue supports queue names and it is also used in new ticket
    form [chilan]
  - enhancement: added the ability to place multiple attachment panels in one window [chilan/ravvar]
  - enhancement: added the ability to add attachments to device models [chilan/ravvar]
  - enhancement: show model files containers in models list [ravvar]
  - enhancement: show network devices files containers in devices list [ravvar]
  - enhancement: allow to send customer message quickly using icon near mail and phone contacts [chilan]
  - enhancement: show network nodes files containers in nodes list [ravvar]
  - improvement: allow to go back to location from which we initiated message add action [chilan]
  - enhancement: filter user list in message add form by selected user group [chilan]
  - enhancement: allow to send customer data to users via sms [chilan]
  - enhancement: allow to include customer node data in sent messages [chilan]
  - enhancement: allow to clone time table event with ticket identifier assigned to original
    event [chilan]
  - enhancement: helpdesk ticket, message and customer phone contacts can be selected during
    new message creation [chilan]
  - improvement: separate liability and payments columns as replacement
    for %last_N_in_a_table symbol [chilan]
  - enhancement: if phpui.promotion_allow_modify_values_for_privileged_user is set to 'true
    ('false' by default), user can modify any promotion schema period values [chilan]
  - improvement: location selection is required when there are more than one location in list [chilan]
  - enhancement: copy other resource permissions is possible from user add and edit forms [chilan]
  - enhancement: TransGUS report support added [chilan]
  - enhancement: new plugins hooks 'user_modify_copy_permissions' and 'user_copy_permissions_prepare'
    were introduced and they allow plugins to extend copy of user permissions to other resources [chilan]
  - enhancement: implemented ticket assignment conflict detection [chilan]
  - improvement: switched to liberation sans unicode true type font for tcpdf generated documents [chilan]
  - enhancement: added document memo text fields defined for customers and copied to documents;
   'phpui.default_customer_document_memo' configuration variable controls customer default document memo
   field value (empty by default) [chilan]
  - improvement: allow to quickly close newly created or edited time table event [chilan]
  - enhancement: implemented tax category selection for tariffs, tariffless liabilities
    and invoice content [chilan]
  - enhancement: phpui.tax_category_required allows to force tax category selection requirement
    ('false' by default) [chilan]
  - enhancement: aggregate documents support for send invoices, notifies and send message customer balance
    history lists [chilan]
  - enhancement: if phpui.teryt_required is set to 'true' ('false' by default) then customer,
    network device, network node and customer node addresses should be checked as 'territ' [chilan]
  - enhancement: JPK-V7M support added [chilan]
  - enhancement: added email property to divisions [chilan]
  - improvement: show territ address flag near node location info [chilan]
  - improvement: force default location address or single location address or billing address of customer
    as pre-selected customer assigned resources [chilan]
  - improvement: new user permission - investment project management [chilan]
  - improvement: replaced customer address selection icons by font awesome icons [chilan]
  - enhancement: added uke income service type report [chilan]
  - enhancement: added 'clone' action button on configuration variable list - single
    variables and whole configuration sections can be cloned [chilan]
  - enhancement: implemented multi configuration option delete [chilan]
  - improvement: additional status filter 'no connections' introduced on network device list
    (helpfull for UKE report preparations) [chilan]
  - enhancement: 'sms.phone_number_validation_pattern' configuration variable specifies
    mobile number pattern which is treated as correct [chilan]
  - improvement: rt.ticket_service_required and rt.ticket_type_required introduced allow to
    make ticket service and ticket type selection mandatory [interduo]
  - enhancement: implemented helpdesk ticket cloning [chilan]
  - improvement: switched helpdesk ticket category selection to modern ui control
    based on lms-ui-advanced-select [chilan]
  - improvement: rt.category_selection_checkbox_limit configuration variable controls
    switching between old-style and new-style look of category selection ('0' by default
    what mens new-style is always used) [chilan]
  - improvement: smscenter.pl unicode message support added [chilan]
  - enhancement: new backend script 'lms-proforma-transform.php' allows to periodically
    transform pro forma invoices to regular invoices (if related conditions
    are met) [chilan]
  - improvement: lms-teryt.php uses the same method of explicit node address determination
    as webui [chilan]
  - improvement: customer can be filtered by active assignments with pro forma flag [chilan]
  - improvement: redesigned related and parent ticket selection user interface [chilan]
  - improvement: redesigned ticket event assignment selection [chilan]
  - enhancement: filtering nodes by 'without radio sector' cryterion [chilan]
  - improvement: 'phpui.copy_ticket_summary_to_assigned_event' ('false' by default) controls
    if assigned ficket properties are copied to newly created event [chilan]
  - improvement: show location type icon in location selection button [chilan]
  - enhancement: 'phpui.markdown_documentation_file' configuration variable can point to
    markdown configuration variable documentation file
    ('<sys-dir>/doc/Zmienne-konfiguracyjne-LMS-Plus.md' by default) [chilan]
  - enhancement: implemented configuration variable suggestions with documentation displayed
    in tooltip [chilan]
  - enhancement: lms-ui-autogrow css class allow to make input fields auto-adjusting to their
    content [chilan]
  - devel: bumped fontawesome to 5.13.0, mousetrap to 1.6.5 [chilan]
  - enhancement: configuration variable documentation presentation in config add end edit
    forms [chilan]
  - enhancement: allow to load multiple cash source files at once [chilan]
  - enhancement: optionally add sent document attachments to message for archive purpose
    ('documents.message_attachments' introduced with 'false' as default value) [chilan]
  - improvement: new menu subitem 'New setting' in configuration menu [chilan]
  - improvement: investment project and type are multiple selections on network node
    list [chilan]
  - enhancement: added network device assignments tab in network device info
    and edit views and node assignments tab in node info and edit view [chilan]
  - improvement: added overdue events in another menu item and few fixes with
    overdue [interduo]
  - improvement: new filter on ticket list - allows to show only parent tickets [interduo]
  - improvement: separate configuration variables used as api key for google maps and geocode
    apis (respectively 'google.maps_api_key' and 'google.geocode_api_key') [chilan]
  - enhancement: 'invoices.show_expired_balance' configuration variable controls if balance
    without unexpired invoices is presented on invoice [chilan]
  - enhancement: additional confirmation is required during customer address clear
    or delete if it is assigned to some nodes, network devices and network nodes [chilan]
  - enhancement: 'cashimport.use_file_date' set to 'true' ('false' by default) enables imported
    file datetime usage to force source file uniqueness [chilan]
  - enhancement: customer consents can be managed in lib/definitions.php file [chilan]
  - improvement: newly created invoice new position netto and brutto values are cleanup
    from special characters [chilan]
  - improvement: don't send helpdesk notifications to disabled users [chilan]
  - improvement: 'rt.subject_max_length' specifies maximum allowed helpdesk ticket subject
    length ('50' by default) [chilan]
  - improvement: numberplan template substitution symbols are described in tooltip [chilan]
  - improvement/devel: userpanel document management feature separated to dedicated userpanel
    module [chilan]
  - enhancement: customer can send signed document scans through userpanel [chilan]
  - enhancement: operator can approve contract with document scan attached and thus
    activate services related with contract [chilan]
  - improvement: customers can be filtered by 'no zip code' virtual status [chilan]
  - enhancement: customer can approve selected documents from userpanel using sms one-time
    code authentication [chilan]
  - improvement: 'phpui.default_customer_consents' specified which customer consents are
    checked by default during add customer form open ('data_processing' is default) [chilan]
  - enhancement: new customer consents: userpanel document form approvals using SMS or scan [chilan]
  - enhancement: customer billing and post addreses can be copied to location address [chilan]
  - enhancement: new 'phpui.customer_invoice_notice_consent_check' configuration variable controls
    if customer with invoice notice consent checked should have marked one of his email contacts
    with 'invoices' flag [chilan]
  - enhancement/devel: new easier warning system - warning global backend variable has
    the similar role to so far existing error variable [chilan]
  - improvement: redesigned choose territ location popup dialog - switched to jquery-ui
    dialog [chilan]
  - enhancement: implemented mass customer consent change support [chilan]
  - improvement: new action on customer search result is possible - add looked up customers
    to customer group with specified name [chilan]
  - improvement: new variable 'phpui.timetable_hide_description' allows to hide
    description in timetable [interduo]
  - improvement: ticket message attached images can be scaled to 300 pixels width
    on server-side if pecl-imagick is installed on server [chilan]
  - enhancement: image gallery support for helpdesk tickets and ticket message items [chilan]
  - enhancement: smarty block '{buttons}' support introduced - allows to create responsive
    button panels on resource list [chilan]
  - enhancement: image gallery support for network nodes, devices and models [chilan]
  - improvement: zip code validation is made basing on selected location address country [chilan]
  - improvement: 'invoices.hide_prodid' configuration variable controls product id column
    visibility on invoices ('false' by default) [chilan]
  - improvement: 'mail.debug_level' allows to control debug message detail level ('2' is
    default) [chilan]
  - improvement: 'phpui.quicksearch_keyboard_shortcut_modifier' defines quick search keyboard shortcut
    modifier key ('ctrl' by default) [chilan]
  - improvement: confirmation dialogs are responsive [chilan]

version 24.0 (2019-05-16):

  - enhancement: script automating the installation of LMS + PostgreSQL in the Centos 7
    system has been added to the "sample" catalog [darton]
  - enhancement: script automating the installation of LMS + MariaDB in the Centos 7
    system has been added to the "sample" catalog [darton]
  - enhancement: allow to filter network devices by territ not specified [chilan]
  - enhancement: helpdesk/rt: introduced ticket netdevice assignment [interduo]
  - enhancement: added %queue symbol support for helpdesk notification templates [chilan]
  - enhancement: allow to select company/division for financial data export  [chilan]
  - enhancement: added support for helpdesk notification for event add form [chilan]
  - enhancement: invoices.hide_expositor - variable to hide expositor in pdf invoice
    generated by tcpdf [interduo]
  - enhancement: invoices.show_customerid - variable to show customerid in pdf invoice
    generated by tcpdf [interduo]
  - enhancement: added user notification about helpdesk ticket status change
    - phpui.ticket_state_change_notify configuration variable controls if
    it is triggered [chilan]
  - enhancement: current division properties are copied to new receipts [chilan]
  - improvement: resolved tickets in quick search displayed as blended [chilan]
  - enhancement: additional operations on node search result - node group assign
    and unassign [chilan]
  - enhancement: added helper icons in quick search suggestions (customers, node,
    tickets) [chilan]
  - enhancement: added support for tariff burst properties [chilan]
  - enhancement: allow to search nodes by network devices to which
    they are connected to [chilan]
  - enhancement: invoices.use_alert_color configuration variable ('false' by default)
    specifies if deadline, quote to pay and bank accounts are printed as red on tcpdf
    and ezpdf invoices [chilan]
  - improvement: allow to manually disable user notification when new ticket
    is created [chilan]
  - improvement: allow to change ticket priority during new ticket message/note creation [chilan]
  - enhancement: list assigned tickets in netdevinfo [interduo]
  - enhancement: list assigned tickets in netnodeinfo [interduo]
  - enhancement: added barcode in second title line of userpanel transfer form [chilan]
  - improvement: warn about event user assignment overlaps - phpui.event_overlap_warning
    configuration variable controls if it is enabled ('false' by default) [chilan]
  - enhancement: allow to print transfer forms from customer balance box [chilan]
  - improvement: allow to define ticket verifier [interduo]
  - improvement: allow to define ticket deadline [interduo]
  - enhancement: introduced quick search for netnode and netdev [interduo]
  - improvement: phpui.helpdesk_hide_disabled_users configuration variable controls if
    disabled users are shown in user lists used in helpdesk forms [chilan]
  - improvement: allow to search customers with selected balance relation and value [chilan]
  - improvement: lms-ui-multiselect supports all element selection shortening
    to default value [chilan]
  - improvement: added optional invoice comment [interduo]
  - enhancement: allow to change customer PIN in userpanel [chilan]
  - improvement: allow to select multiple customer groups in invoice list and multiple
    network in customer search form [chilan]
  - improvement: allow to select multiple customer groups and number plans
    in invoice report [chilan]
  - improvement: allow to change ticket state from RT_NEW to RT_OPEN when variable
    phpui.helpdesk_allow_change_ticket_state_from_open_to_new is set [interduo]
  - improvement: block ticket close with open events when
    phpui.helpdesk_block_ticket_close_with_open_events is enabled [interduo]
  - improvement: phpui.protect_passwords configuration variable controls if password
    are displayed in plain text; protected passwords can be still copied to clipboard [chilan]
  - improvement: updated textual representation of teryt street names (name parts reversed) [chilan]
  - enhancement: changed invoice content count precision from 2 to 3 digits [chilan]
  - improvement: overdue events are presented at top of timetable, variable:
    phpui.timetable_overdue_events [interduo]
  - improvement: phpui.disable_contacts_during_customer_delete controls if customers
    contacts are disabled after customer delete [chilan]
  - enhancement: added new filters in customer assignments box - expired and commited filters [chilan]
  - improvement: added support for html mail format in lms-notify.php backend script" [chilan]
  - enhancement: introduced ticket service types and ticket types, added variable %service, %type
    for helpdesk notify messages [interduo]
  - ehnancement: helpdesk ticket unread status introduced [chilan]
  - improvement: mark current ticket message with brown color border [chilan]
  - improvement: show user info column in customer message box [chilan]
  - improvement: performance optimalisation for loading long record lists [chilan]
  - improvement: helpdesk ticket priorities are mapped to X-Priority header from
    user mail notifications [chilan]
  - enhancement: added button in event list row which assigns currently logged user
    to event [interduo]
  - enhancement: introduced indicators in top menu [interduo/chilan]
  - improvement: new priority idle,higher and remake of priority colors [interduo]
  - enhancement: added network<->public network bindings [chilan]
  - improvement: phpui.show_assigned_networks_only configuration variable controls if only
    assigned public network are presented in network selection list in choose ip popup [chilan]
  - improvement: phpui.autodetect_network_types configuration variable controls what
    network types (public or private) are displayed in main/public ip address selection popup [chilan]
  - improvement: tooltip short info can be preserved open after moving mouse to them
    to it allows to copy text from them [chilan]
  - enhancement: new quicksearch for SSID wireless networks [interduo]
  - improvement: phpui.helpdesk_check_owner_verifier_conflict variable introduces
    ('true' by default) [chilan]
  - improvement: phpui.helpdesk_allow_all_users_modify_deadline variable controls if any
    user can change ticket deadline ('false' by default) [chilan]
  - enhancement: file attachment support introduced for network devices and network nodes [chilan]
  - improvement: added lms-ui-combobox css class support which transforms select
    element to combobox [chilan]
  - improvement: visual unification of lms-ui-select-address, lms-ui-multiselect and
    lms-ui-combobox [chilan]
  - enhancement: allow to upload files using drag&drop technique [chilan]
  - enhancement: replaced TinyMCE 3.x with 4.x handled by composer [chilan]
  - enhancement: almost the same special symbols are supported for sendinvoices.mail_body as
    for lms-notify.php mail_body setting [chilan]
  - enhancement: allow to filter message recipients to customers connected to selected network
    device or subtree of selected network device (phpui.root_netdevice_id configuration variable
    should contain root network device id as it is used to calculate subtree) [chilan]
  - improvement: allow to add ip addresses to network devices without mac [chilan]
  - enhancement: allow to select properties which we use as key to quick search resorces [chilan]
  - enhancement: global CTRL+n keyboard shortcuts for quick search inputs [chilan]
  - improvement: phpui.multiselect_popup_on_bottom (false by default) controls position of popup
    window for multiselects [chilan]
  - improvement: phpui.multiselect_max_visible (unlimited by default) controls maximum items
    displayed in multiselect [chilan]
  - improvement: new quicksearch for networks [interduo]
  - enhancement: allow to show/hide quick search fields on top [chilan]
  - enhancement: allow to clear filter in helpdesk queue and event list view [chilan]
  - enhancement: introduced persistent filter support [chilan]
  - enhancement: lms-ui-advanced-select on 'chosen' backend and lms-ui-combobox on
    'simple-combobox' backend [chilan]
  - enhancement: allow to change invoice content order during invoice new and edit
    using drag & drop [chilan]
  - improvement: allow to edit invoice positions in convenient way [chilan]
  - enhancement: allow to move event to another day using drag & drop [chilan]
  - enhancement: allow to select multiple owners in rtqueueview [chilan]
  - improvement: user logical operator for user selection in event list [chilan]
  - enhancement: keyboard support for multi select ui controls [chilan]
  - enhancement: document list type filter is multi-select field [chilan]
  - enhancement: allow to filter document list by service type [chilan]
  - enhancement: new filter engine applied to queuelist; allow to filter deleted queues
    on queue list [chilan]
  - enhancement: allow to search tickets by body fragment [chilan]
  - improvement: ability to mark radiosector as access/infrastructure (uni/nni network interface type) [interduo]
  - improvement: promotion schema assignments: added support for current period settlement
    assignment [chilan]
  - enhancement: phpui.event_time_step configuration variable controls minial time interval for events
    (default: 30) [chilan]
  - improvement: replaced old style date and time selector by datetimepickers and slider [chilan]
  - enhancement: introduced whole day events support [chilan]
  - improvement: allow to configure phone call icon placed near phone number (phpui.call_phone_url
    empty by default what it means no icon at all) [chilan]
  - enhancement: allow to set customer owner for network nodes [chilan]
  - improvement: allow to clone existing event quickly [chilan]
  - improvement: allow to store encryption key for network interface in netradiosectors [interduo]
  - improvement: now we can assign tickets to invprojects [interduo]
  - improvement: mail.hide_sensitive_headers configuration variable controls if sensitive
    headers should be removed from posts via application [mikenowak]
  - enhancement: added support for phpui.helpdesk_sender_email configuration variable which
    stores explicit suggested order of attributes in sender mail determination [mikenowak/chilan]
  - enhancement: indicator expired2 - my expired tickets for current logged user assigned as verifier [interduo]
  - enhancement: revolutionary layout changes: main menu and toolbar are always visible [chilan]
  - enhancement: added back to top button always visible on right bottom of contents [chilan]
  - enhancement: allow to arrange welcome boxes using drag & drop to create own layout
    - phpui.welcome_panels configuration variable controls how many welcome panels are created [chilan]
  - enhancement: allow to generate group reply message to all marked helpdesk tickets [chilan]
  - improvement: modernized mac address selection (separated smarty function called
    'mac_address_selection') [chilan]
  - improvement: started to use fontawesome icon library [chilan]
  - improvement: incorrect customer identify card number generates warning instead of error [chilan]
  - improvement/bugfix: convert received posts which are loaded into helpdesk from html
    to text using Html2Text [chilan]
  - improvement: tariffs are not unique per promotion schema - phpui.promotion_tariff_duplicates
    configuration variable controls if tariff duplicates are allowed per promotion schema
    or not ('false' by default) [chilan]
  - enhancement: contracts.expiration_type configuration variable controls how expiring
    contract calculation is made ('documents' by default) [chilan]
  - improvement: allow to automatically determine explicit teryt node locations basing
    on customer addresses [chilan]
  - enhancement: allow to move found customers between many customer groups [chilan]
  - improvement: click on table row with ctrl key pressed open link in new window [chilan]
  - improvement: added phpui.skip_zip_validation configuration variable that allows to skip zip
    code format validation [Mike Nowak]
  - improvement: lms-sendinvoices.php: sendinvoices.limit can be percentage value [chilan]
  - improvement: lms-sendinvoices.php: sendinvoices.interval or --interval parameter allow to specify
    delay in milliseconds between subsequent posts [chilan]
  - improvement: sale report: allow select document type from within invoices, credit notes,
    debit notes [chilan]
  - improvement: allow to search customers by different assignment states [chilan]
  - improvement: allow to search customers which have tariff with end date fulfilling
    some common criterions [chilan]
  - improvement: bash/curl script for fetching emails from imap server to LMS RT [interduo]
  - enhancement: related tickets introduced [interduo]
  - improvement: search customer by his location name is possible [chilan]
  - enhancement: separate management of message templates added [chilan]
  - enhancement: phone quick search can look up numbers in customer contact numbers
    or voip account numbers  [chilan]
  - enhancement: payments.delete_old_assignments_after configuration variable controls time
    after which old assignments are deleted - 30 days by default [chilan]
  - improvement: phpui.node_name_regexp configuration variable defines regular expression
    to which node name should match - default: ^[_a-z0-9-.]+$ [chilan]
  - improvement: allow to check all users for given document right with single click [chilan]
  - improvement: allow to aggregate documents on customer balance list [chilan]
  - enhancement: added after promotion period support [chilan]
  - improvement: lms-sendinvoices.php --no-attachments parameter support [chilan]
  - improvement: phpui.helpdesk_additional_user_permission_checks ('false' by default)
    configuration variable controls if additional ticket properties are checked to verify if user
    has access to ticket even if ticket queue is not accessible for user [chilan]
  - improvement: lms-teryt.php: allow to reverse TERYT identifiers to textual representation [chilan]
  - improvement: show network device description and file containers in network device tooltip [chilan]
  - enhancement: implemented separated smtp settings support for helpdesk/rt [chilan]
  - enhancement: lms-notify.php: added customer 'income' notify type [chilan]
  - enhancement: allow to search nodes by lastonline date [chilan]
  - improvement: phpui.helpdesk_allow_empty_categories controls if helpdesk ticket category assignments
    are required [chilan]
  - improvement: phpui.helpdesk_empty_category_warning controls if helpdesk empty ticket category
    assignment generates warning [chilan]
  - enhancement: new user privilege 'invoice_sale_date' controls if user can manipulate
    invoice/invoice-note sale date [chilan]
  - enhancement: new user privilege 'invoice_consent_date' controls if user can manipulate
    invoice/invoice-note/note consent date [chilan]
  - enhancement: implemented credit note 'chains' (we can correct one credit note issuing another
    credit note) [chilan]
  - enhancement: helpdesk: file attachments are sent during user notifications [chilan]
  - improvement: smarty {date_period_preset} function generates shortcut button panel for
    instant changing date period [chilan]
  - enhancement: phpui.helpdesk_notification_attachments controls if attachments are appended to sent
    user notifications ('false' by default) [chilan]
  - helpdesk user notification %attachments substitution support [chilan]
  - improvement: allow to determine ticket id using regular expression match on mail
    subject - rt.subject_ticket_regexp_match with 'RT#(?<ticketid>[0-9]{6,})' default value [chilan]
  - improvement: invoices.protection_password (unset by default) set owner password
    for pdf invoices; it also required to enable pdf protection [chilan]
  - improvement: userpanel: helpdesk: user friendly file size upload limitation [chilan]
  - enhancement: userpanel/info: allow to auto-hide customer document box if customer
    hasn't got any documents [chilan]
  - enhacement: allow to embed images in messages [chilan]
  - improvement: userpanel/finances: tariffs speeds are aggregate to sane units [chilan]
  - improvement: userpanel/finances: tariff speed units are configurable [chilan]
  - improvement: aggregate tariff speeds to kMG units [chilan]
  - enhancement: uke/siis: customer network device support added [chilan]
  - improvement: confirmation dialog after event drag between days in timetable [chilan]
  - improvement: phpui.pin_restriction_description configuration variable allow to define tooltip
    contents describing customer pin restrictions (html code usage is possible) [chilan]
  - enhancement: userpanel: allow to customize web browser shortcut icon [chilan]
  - enhancement: allow to filter invoice list by number plans [chilan]
  - enhancement: added support for mark non-financial documents as archive [chilan]
  - enhancement: support of financial document archivization [chilan]
  - improvement: new customer removal access privilege added [chilan]
  - enhancement: customer income report broken down into link technology (helpfull for UKE income
    reports) [chilan]
  - enhacement: allow to automatically generate debit notes [chilan]
  - enhancement: allow to preserve pro forma invoice after its conversion to invoice
    - phpui.default_preserve_proforma_invoice check/uncheck corresponing checkbox [chilan]
  - enhancement: selected users can modify prices for promotion schema tariffs [chilan]
  - improvement: new trade document archiving and unarchiving user privileges added [chilan]
  - enhancement: added support for helpdesk message/note templates [chilan]
  - improvement: ticket message reply with citing forced by click on newly added button [chilan]
  - enhancement: added representative customer contact type as it will be used to select
    them on documents [chilan]
  - improvement: try to restore scrolling state of rtqueueview or eventlist after
    each operation has runned [chilan]
  - enhancement: allow to select invoice duplicate date manually [chilan]
  - devel/cleanup: calendar, calendar-time css classes renamed to lms-ui-date, lms-ui-datetime
    respectively [chilan]
  - enhancement: assignment last defficient period support [chilan]
  - enchancement: allow lms-payments.php script to set aligned partial periods for invoice items
    (added special symbol %aligned_partial_period) [ravvar]
  - improvement: added delete and clear contact buttons [chilan]
  - improvement: added jquery based confirmation dialog [chilan]
  - enhancement: add multilevel configuration export and import [ravvar]

version 1.11.23 (2018-03-21):

  - improvement: create db dumps with multi records inserts statements which
    dramatically reduces db restore time [chilan]
  - enhancement: allow to backup all financial documents issued a given day
    in selected output directory (--backup and --output-directory parameters
    were introduced for lms-sendinvoices.php) [chilan]
  - enhancement: added payments.check_invoices ('false' by default) configuration
    variable support and its behavior is the same as deprecated daemon payments
    module configuration variable [chilan]
  - enhancement: added support for default queue categories used during new ticket
    creation [chilan]
  - improvement: pdf ticket and document attachments are displayed in popup window
    instead of forcing writing them to disk [chilan]
  - improvement: phpui.pin_min_size, phpui.pin_max_size and phpui.pin_allowed_characters
    configurtion variables control customer pin constraints (by default: 4, 6 and
    '0123456789' respectively) [chilan]
  - improvement: suppport for teryt locations where city consists of many sections/districts
    [chilan]
  - improvement: phpui.category_adjustments_in_ticketedit (false by default) controls if selected
    categories in ticket edit form are automatically adjusted with queue change [chilan]
  - improvement: pdf and html unification of receipts.default_printpage ('original,copy' by
    default) configuration variable support which controls how many receipts are printed [chilan]
  - enhancement: log ticket category changes [chilan]
  - enhancement: implemented helpdesk notification mail threading compatible with RFC5322 [chilan]
  - enhancement: added ticket source information [interduo]
  - enhancement: allow to define ticket with which sources are visible in userpanel helpdesk
    module [chilan]
  - enhancement: Fake delete operations in helpdesk to regular users. After deleting queue,
    ticket or message regular user can't see deleted items, only superuser can see
    deleted items [ravvar/chilan]
  - enhancement: added support for array parameter to LMSDB class [kosa/chilan]
  - improvement: allow to add new network device directly from customer box [chilan]
  - enhancement: allow to quick search by external customer id fragment [chilan]
  - improvement: all url in helpdesk notifications open ticket immediately
    on comment added before the moment [chilan]
  - enhancement: helpdesk ticket <-> customer locations (this allows to assign locations
    to tickets) [chilan]
  - enhancement: helpdesk ticket <-> customer nodes (only customer nodes which have the same
    location as selected ticket customer location are displayed) [chilan]
  - enhancement: added support for event <-> customer location assignment [chilan]
  - enhancement: allow to filter tariffs by tags in customer assignment forms [chilan]
  - improvement: added support for named state list in lms-teryt.php [chilan]
  - improvement: added special user privilege which controls if helpdesk queues, tickets,
    messages, notes are only archived (with permanent remove option) instead of removing
    them [ravvar/chilan]
  - enhancement: tax rate reverse charge flag support added (JPK generators use it) [chilan]
  - improvement: show invoice pro forma items in customer balance box [chilan]
  - enhancement: phpui.proforma_invoice_generates_commitment configuration variable
    ('false' by default) controls if related cash records are created for proforma
    invoices [chilan]
  - enhancement: allow to view and search tickets from many queues and categories [chilan]
  - enhancement: allow to view and search events selecting many types and owners [chilan]
  - improvement: helpdesk_notification_mail_subject, helpdesk_notification_mail_body
    helpdesk_notification_sms_body, helpdesk_customerinfo_email_body and
    helpdesk_customerinfo_sms_body configurtion variables control additional information
    in helpdesk ticket notice via templates [ravvar/chilan]
  - improvement: userpanel/info: customer properties which have pending value changes
    assigned to them are presented in different color [chilan]
  - enhancement: userpanel/info: customer data change which requires operator confirmation
    triggers mail notification [chilan]
  - enhancement: userpanel/info: customer data change confirmations and rejections are sent
    to customers [chilan]
  - improvement: added customer status filter in message add form (opened documents) [chilan]
  - improvement: added lmsd systemd unit file which automatically restart lmsd process
    when it fails [chilan]
  - improvement: minor tcpdf invoice look improvements [interduo]
  - enhancement: rewrite of old lms-makedhcpconf perl script in php; dhcp.use_network_authtype
    configuration variable controls which networks are processes by default [chilan]
  - enhancement: new lms-maketcnew.php backend script which allows to generate
    almost any traffic shaper configuration [chilan]
  - improvement: message send - allow to filter recipients by expired customer balances [chilan]
  - improvement: allow to download recorded voip calls [chilan]
  - enhancement: sms.queue configuration variable allow to specify outgoing queue
    for smstools service [chilan]
  - enhancement: allow to force separate invoice issuing for liabilities [chilan]
  - enhancement: optional support of Google reCAPTCHA mechanism for userpanel logins and
    credential reminders [chilan]
  - improvement: all userpanel styles/themes have the same features [chilan]
  - improvement: quicksearch: if many customers with the same full name has been found,
    we add their billing/main addresses as description [chilan]
  - improvement: receipt with cash move allows to get total balance of source cash
    registry [chilan]
  - enhancement: allow to filter customer list by assignments to so many customergroups
    as were selected [chilan]
  - improvement: customerinfo: show assignmentid when more then one. show ticketid in eventspanel [interduo]
  - enhancement: netnodes: added creationtime, administrative contact, lastinspectiontime [interduo]
  - enhancement: customerraports: added sending book generator for sending letters/packages [interduo]
  - improvement: show queue name in queuelist [interduo]
  - improvement: show count of assigned events in rtqueueview [interduo]
  - improvement: show categories in rtqueueview (rt.show_ticket_categories configuration
    variable allows to control their visiblity) [interduo]
  - improvement: lmsuser can define category color [interduo]
  - improvement: rtmodule: more filtering options in "User"-->"no owner" [interduo]
  - improvement: rtmodule: multiselect in filtering in status field [interduo]
  - enhancement: rtmodule: if ticket status is waiting and has no opened events
    show "+" image and link [interduo]
  - improvement: eventsearch: added posibility to search by ticketid [interduo]
  - improvement: event: id of ticket moved into more ui friendly place [interduo]
  - enhancement: reference documents were introduced - it allows to create
    document chains [chilan]
  - enhancement: document templates support reference_types and references_templates properties
    which define to which document given template can refer to [chilan]
  - enhancement: allow to sort customer by external id [chilan]
  - improvement: published_document_modification privilege controls if user can modify/delete
    published documents [chilan]
  - enhancement: allow to add new note for created helpdesk ticket [interduo]
  - introduced: rt: requestor_phone, requestor_mail in rtticketadd [interduo]
  - improvement: allow to fast-clone existing customer node to new one [chilan]
  - enhancement: introduced payments_before_assignment_loop plugin hook in lms-payments.php backend script;
    it has potential to be used for now at least by Adescom plugin [chilan]
  - cleanup: all columns in database related to other tables are foreign keys [chilan]
  - enhancement: when application is called with api GET parameter we avoid running some code which
    is needed only for webui [chilan]
  - improvement: allow to search customers by different address types [chilan]
  - enhancement: instant receipt issuing is possible during customer balance add [chilan]
  - enhancement: allow to create receipt with one click near customer balance info [chilan]
  - improvement: added support for mail.reply_email configuration variable which controls
    what email address is set in Reply-To header in messageadd [chilan]
  - improvement: phpui.promotion_activation_at_next_day configuration variable controls
    if activation assignment is setup to next day [chilan]
  - improvement: receipts.instant_payment_print variable controls if instant payment
    is marked for printing by default [interduo]
  - improvement: show/hide customer credentials on debit notes - notes.customer_credentials
    configuration variable [interduo]
  - improvement: phpui.promotion_preserve_at_day configuration variable controls if assignments added
    from promotion scheme have at day the same as given assignment day [chilan]
  - improvement: downrates and uprates don't need upper limit [chilan]
  - enhancement: assignments can be commited together with document closing/commiting [chilan]
  - improvement: if there is only one division in database we use its properties
    for receipt division header [chilan]
  - enhancement: allow to visually filter customer assignments by tariff type [chilan]
  - enhancement: promotion tariff selections are named selection lists [chilan]
  - enhancement: promotion schema tariffs can be ordered using drag & drop technique [chilan]
  - enhancement: customer post addresses are stored within financial documents in the state
    of issue time [chilan]
  - enhancement: all promotion schema tariffs can have labels applied [chilan]
  - enhancement: added clear date button in datepicker dialogs [chilan]
  - enhancement: added auth/session type property for tariffs [chilan]
  - enhancement: only nodes matched with selected tariff auth/session types are show
    for edited customer assignments [chilan]
  - enhancement: nodes can be separately selected for all promotion schema tariffs [chilan]
  - improvement: show location and device id on customer network device list [chilan]
  - enhancement: assignments can be created basing on promotion schema during document
    creation [chilan]
  - enhancement: creating new assignment/document we can decide what should be applied
    to already existing assignments [chilan]
  - enhancement: added document selection to filter on customer assignment list [chilan]
  - enhancement: option for new assignment to allow impact on existing assignments
    with the same tariff type [chilan]
  - improvement: store commit flags for later use if created document is not closed
    and then use it during document close process [chilan]
  - enhancement: multi document operations are possible from customer document box [chilan]
  - enhancement: lms-notify.php: added documents type support which takes document end
    dates into consideration [chilan]
  - enhancement: allow to select permanent attachments which are included with generated
    document [chilan]
  - improvement: phpui.default_link{type,technology,speed} configuration variables allow to preselect
    link properties for new and edited nodes [chilan]
  - improvement: negative credit notes are taken immediately to account, by for positive ones
    we wait for their pay time [chilan]
  - enhancement: allow to send documents directly to mail [chilan]
  - enhancement: phpui.document_password configuration variable controls if documents generated
    by html2pdf conversion are protected [chilan]
  - improvement: added support for CC and BCC headers in mail backends [chilan]
  - enhancement: new userpanel authentication type - node name and password
    (as pppoe login and password) [chilan]
  - improvement: openlayers map: allow to copy gps coordinates of network devices from
    coordinate selector popup [chilan]
  - improvement: introduced 'mail' section configuration variables which allow to change
    smtp ssl session behavior (mail.ssl_verify_peer, mail.ssl_verify_peer_name,
    mail.ssl_allow_self_singed) [chilan]
  - improvement: cashimport.folder configuration variable specifies which imap folder
    to check for new cash import files [chilan]
  - improvement: when customer has 'electronic invoice' not checked and we are trying to mark
    mail contact as for invoice sending, we show alert popup [chilan]
  - enhancement: allow to select issued document type for assignments [chilan]
  - enhancement: helpdesk/rt: introduced ticket priorities [interduo]
  - enhancement: allow to check all items with one click in lms-ui-multiselect [chilan]
  - enhacement: userpanel: allow to limit reopening helpdesk tickets to newer than
    configured seconds (userpanel.allow_reopen_tickets_newer_than configuration variable)
    [chilan]
  - cleanup: mysql and mysqli database types point to mysqli php extension [chilan]
  - enhancement: allow to modify credit note and debit note numbers during their edits [chilan]
  - enhancement: document cancellation support for debit notes [chilan]
  - enhancement: allow to decide if customer data should be updated during
    credit note creation, modification and invoice modification [chilan]
  - enhancement: simple api support - netnodelist, netnodeadd, netnodedel, netnodeedit,
    netdevlist, netdevadd, netdevdel, netdevedit, nodelist, nodeservicelist,
    customerlist [chilan]
  - enhancement: added telecom number support for divisions [chilan]
  - enhancement: aadded qr2pay payment method on TcpdfInvoice [wdjag/chilan]
  - enhancement: gusapi support added which allows to get company details from GUS REGON
    database (phpui.gusapi_key configuration variable stores API key) [chilan]
  - enhancement: zip code auto and manual completion using OpenStreetMap API [chilan]
  - enhancement: zip code auto and manual completion using PNA database [chilan]
  - enhancement: phpui.zipcode_backend controls which zip code auto completion backend
    is used (by default: 'osm'; 'pna' is second supported backend) [chilan]
  - enhancement: pna codes which are not assigned to existing teryt locations are
    also stored in database and are searchable by streetname [chilan]
  - bugfix: sql schema compatibility with PowerDNS 4.x [chilan]

version 1.11.22 (2017-06-08):

  - userpanel enhancement: show confirmed documents only checkbox decides if confirmed
    documents are only shown for customer [chilan]
  - documentview enhancement: allow to view many pdf documents as single pdf file [chilan]
  - userpanel enhancement: module order can be changed from LMS userpanel configuration
    using drag&drop (fixes LMS+ #102) [chilan]
  - improvement - don't show boxes for contact types when no contact
    type is assigned to customer [chilan]
  - enhancement: phpui.disable_active_links_in_nodeinfo controls if some controls
    are active ui elements [chilan]
  - performance improvement: phpui.datatables_max_records limits datatables initialisation
    to tables with specified number of records (default: 300) [chilan]
  - improvement: click on tariff tag should add tag to filter and click on right side
    should move to tariff tag info (should fix LMS+ #101) [chilan]
  - added support for attribution network device for customer [kosa/chilan]
  - enhancement: added support for pro forma invoices (should resolve LMS+ #120) [chilan]
  - enhancement: support of convertion pro forma invoice to invoice [chilan]
  - improvement: splited user name to separated first name and last name components [kyob]
  - enhancement: support of customer number plans with special symbol %C [chilan]
  - enhancement: allow to select first free ip address automatically in node forms
    (phpui.first_reserved_addresses controls how many first addresses are omitted
    for selected network) [chilan]
  - added support for assignment tariffs to network device hosts [kosa/chilan]
  - improvement: if ip address is not empty go to the page in ip address selection
    window where this non-empty ip address is visible [chilan]
  - added support for set type of voip pool numbers [kosa/chilan]
  - improvement: allow to change number and number plan for edited invoices [chilan]
  - improvement: phpui.helpdesk_author_notify configuration variable controls
    if new helpdesk ticket/message/note notifications are sent to author [chilan]
  - improvement: allow to search for customers which are not assigned to any
    customer groups [chilan]
  - bugfix: taxes were inproperly displayed on invoice for both zero tax and tax free
    values were present at the same time [chilan]
  - enhancement: added node session support for ip addresses assigned to network
    devices [chilan]
  - enhancement: allow to automatically get first free address for network device
    ip addresses [chilan]
  - enhancement: allow to specify indefinite cutoff stop dates [chilan]
  - enhancement: JPK FA (invoices) support added [chilan]
  - enhancement: allow to define teryt addresses and tax office codes for divisions [chilan]
  - improvement: JPK FA (invoices) report uses recently added division teryt location
    and division tax office assigned [chilan]
  - improvement: allow to print web layout without left menu bar, top autosuggest fields
    and toolbar [chilan]
  - enhancement: show document creator on document lists [chilan]
  - enhancement: added support for confirmation user storage in documents [chilan]
  - enhancement: allow to select which helpdesk ticket details are printed [chilan]
  - enhancement: added document number sort cryterion to invoice report [chilan]
  - added script to load and bind buildings with teryt localizations [kosa/chilan]
  - improvement: switched to new multi attachment code for new mail messages [chilan]
  - improvement: when we try to send messages to more than 50 customers at once, confirmation
    dialog is displayed [chilan]
  - enhancement: cash source: added suport for main bank account definition [chilan]
  - enhancement: lms-notify.php: all actions are logged into transaction log [chilan]
  - improvement: voip.cdr_billing_record_format configuration variable describes
    format of billing record [chilan]
  - improvement: allow to print invoices manually issued [chilan]
  - enhacement: added documents flag to email and phone customer contacts which allows
    to decide if those contacts should be printed on documents [chilan]
  - enhancement: added support for effective dates of tariffs and promotions - only effective
    ones are displayed by default [chilan]
  - enhancement: added rbe info fields to divisions and rbe name for customers [chilan]
  - enhancement: allow filter document list by creator/authorising and all date types
    for periods [chilan]
  - moved addresses from nodes, netdevices, customers, netnodes, voipaccounts and divisions
    to one table [kosa/chilan]
  - removed possibility for setting up custom address for nodes and voipaccounts [kosa/chilan]
  - added possibility for create many addresses for each customer [kosa/chilan]
  - improvement: added new event types - vacation and duty [chilan]
  - enhancement: number plan list is updated automatically after customer or document
    type selection change [chilan]
  - improvement: sendinvoices.mail_format=text|html ('text' by default) allows
    to select mail format between html and text [chilan]
  - improvement: for new receipt show only cash registries to which cashier have
    read/write access privileges (we also take selected customer division into account) [chilan]
  - improvement: switched to pear/mail maintained by composer [chilan]
  - improvement: invoices: dynamic adjustment of number plan list according to
    selected customer division [chilan]
  - improvement: show db backup sizes also in human friendly units [chilan]
  - improvement: switched to xajax 0.6 beta fork from https://github.com/feuzeu/xajax which
    generates much less warnings in PHP 7 (if any at all) [chilan]
  - enhancement: added support for JPK-VAT exports [chilan]
  - rewrite lms-teryt to PHP [kosa/chilan]
  - merged lms-teryt and lms-teryt-buildings scripts [kosa/chilan]
  - added posibility to set recipient for invoices [kosa/chilan]
  - enhancement: added backend script which creates new helpdesk tickets when new sms
    messages has been received by smstools [chilan]
  - enhancement: allow to notify customer via sms for helpdesk ticket messages which were
    created from customer sms earlier [chilan]
  - improvement: phpui.helpdesk_customer_notify determines if customer notify checkbox
    should be checked by default (for messages created from customer smses) [chilan]
  - improvement: hosts are automatically reloaded after one click if there is only
    one host in database [chilan]
  - enhancement: allow to assign events with helpdesk tickets [interduo]
  - improvement: phpui.default_event_ticket_assignment controls if event ticket
    assignment is checked by default [chilan]
  - clarification: customer pin on html and tcpdf invoices are printed based on
    the same common rules [chilan]
  - improvement: lms-gps.php script allows to automatically determine netnodes gps
    coordinates [chilan]
  - improvement: lms-gps.php script can search for more exact locations if resource
    address is teritied [chilan]
  - enhancement: lms-gps.php allows to use two different sources of gps coordinates:
    google and siis [chilan]
  - enhancement: restore old-style quick search panel behavior [chilan]
  - enhancement: added potential ranges for UKE report [kosa/chilan]
  - improvement: show unique customer node locations in helpdesk notification footer [chilan]
  - improvement: allow to select division for liability report [chilan]
  - improvement: added select by customer type for sale registry [kosa]
  - enhancement: auto gps coordinates detection in UI uses territory units if they are
    defined [chilan]
  - improvement: phpui.gps_coordinate_providers specifies which gps providers are used
    (google,siis by default) [chilan]
  - improvement: added support for polish mazovia encoding for cash import files [chilan]
  - improvement: added support of References, In-Reply-To and Message-ID headers
    for phpmailer mail backend [chilan]
  - improvement: complete rewrite of lms-rtparser script to php [chilan]
  - bugfix: money quotes printed in words use system locales instead ui locales [chilan]
  - enhancement: added network usage module for print list of used IP addresses [kosa/chilan]
  - enhancement: added cloud account type for hosting and refactored account code [chilan]
  - improvement: allow to decide if customer notifications are sent after new ticket
    / new message creation [chilan]
  - improvement: if name of requestor was not specified for new ticket, we set it to
    current logged user name [chilan]
  - enhancement: added post office property for addresses [chilan]
  - improvement: allow to select invoices between enabled, disabled and all as customer
    agreement for an electronic invoice [chilan]
  - improvement: phpui.capitalize_customer_names configuration variable settings decides
    if customer last names are automatically capitalized ('true' by default) [chilan]
  - improvement: if gps coordinates determined by google api are not precise we show
    javascript popup which allows user to decide if they should stored beside of this [chilan]

version 1.11.21 (2016-10-14):

  - added support for DSN and MDN in lms-notify.php script [chilan]
  - smarty installation is provided by composer from now [chilan]
  - added support for sms notifications in timetable type [chilan]
  - show event summary for all found events at bottom [chilan]
  - unification of cash import code as preparation for cashimport backend
    scripts' usage [chilan]
  - added bin/lms-cashimport.php script as universal backend for
    loading cash import file contents from specified files [chilan]
  - added creation time for events [chilan]
  - added selection between invoice report and debit note report and
    generating related report according to this selection [chilan]
  - current is marked by darker title bar in timetable [chilan]
  - allow to select between all, public and private events in event list filter [chilan]
  - lms-notify.php: added %totalB, %totalsaldo, %totalbalance special
    symbol support for debtors notification type which store total customer balance [chilan]
  - added script which fetches cash import files from mailbox (pop3, imap, etc.) [chilan]
  - sending invoices code moved to LMS::SendInvoices() as preparation for
    invoice sends from LMS UI [chilan]
  - invoice sends are possible from LMS UI [chilan]
  - print events accordingly to privacy filter selection [chilan]
  - changed input types to email and tel where it is sane [kyob]
  - set required attibute for some form fields [kyob]
  - improved selection of node and network devices which should be connected
    to given network device [kosa/chilan]
  - log customer properties changes after commit userpanel changes from LMS UI [chilan]
  - added new doc types (price-list, promotion, warranty, regulations) [kyob]
  - visual improvements of event list [kyob/chilan]
  - unified visual layout of event list and event search results [chilan]
  - added preliminary support for voip price lists [kosa/chilan]
  - phpui.customer_ten_existence_check and phpui.customer_ssn_existence_check settings
    decide if customer ten and ssn duplication warnings/errors are enabled [chilan]
  - workaround new mysql version restricted sql mode forbiding default value
    for text/blob fields [chilan]
  - improved voip scripts and updated voip tables in database [kosa/chilan]
  - improved voip billing list search [kosa/chilan]
  - added check for maximum helpdesk subject length [kosa/chilan]
  - allow plugins to modify button list in network device info [chilan]
  - automatically move transfer form to separate page if there is no
    enough space on tcpdf invoice page [chilan]
  - invoices.header_image config variable controls pdf invoice logo placement [chilan]
  - added backend script for voip emergency numbers database creation [chilan]
  - added backend script which generates sip account and extensions configuration
    files in asterisk format [chilan]
  - asterisk configuration file generation script checks call recodings flags [chilan]
  - added possibility to hide customer balance by invoices.show_balance configuration
    variable on tcpdf invoice [gbn.pl]
  - automatically position of invoice footnote on tcpdf invoice [gbn.pl]
  - listening of voip call recordings are possible from now [chilan]
  - added tags for tariffs [kyob]
  - switched to ezpdf supported by composer [chilan]
  - adding support for dialing phone from smartfones [kosa/chilan]
  - added variable phpui.settings_timeout determine inactivity time after which
    user session settings are cleared (0 means settings are stored only to logout) [chilan]
  - added support for %srcaccount%, %dstaccount% and %customername% replace symbols
    in imported financial operation comments [chilan]
  - unification customer contact management code [chilan]
  - added new customer contact type support - url addresses [chilan]
  - important fix: avoid to settle duplicated liabilities on invoices when almost their
    all properties are identical [chilan]
  - added support for voip tariff rules [kosa/chilan]
  - simplicity syslog code and make it more oop [chilan]
  - more oop improvements for SYSLOG and Auth classes [chilan]
  - added support for %last_10_in_a_table symbol in lms-notify.php [chilan]
  - allow to filter balance history list by cash import file [chilan]
  - added cashimport_after_commit hook which is executed immediately after
    cash import record commit [chilan]
  - jquery and jquery-ui composer and header/layout template support [chilan]
  - got rid of old calendar js - use jquery calendar from now [chilan]
  - ported almost all dynamic popups to jquery [chilan]
  - added module to user panel for view VoIP billings [kosa/chilan]
  - added receipts.default_printpage config variable support [chilan]
  - added support for create voip billing invoices [kosa/chilan]
  - allow to add attachments for helpdesk notes [chilan]
  - added support for audio prelisten and video preview clicked from helpdesk
    message and note attachment links [chilan]
  - support for customer document attachment preview in popup dialogs [chilan]
  - added support for document multi-attachments [chilan]
  - document attached file management is possible from document edit form [chilan]
  - helpdesk and documents: remember selected file attachments between form posts - brand new
    file uploader which hardly uses html5 [chilan]
  - added support for multiple phone numbers [kosa/chilan]
  - bumped openlayers version to current 2.x series HEAD and allow to use
    google maps api key defined by phpui.googlemaps_api_key variable [chilan]
  - show selected position on map for network device and node current coordinates
    presentaion [chilan]
  - allow to select company/division for mass invoice printing [chilan]
  - defined html class multi-check which allows tbodies function with multi
    select elements on lists [chilan]
  - support of multi message deletions [chilan]
  - multi customer group assignments can be added and deleted from customer form [chilan]
  - selected liabilities can be deleted from customer form [chilan]
  - added support for jquery datatables plugin and use it for cash import package list,
    customer messages and customer balance box [chilan]
  - multiselect control supports onchange event handler so we can use it quite
    easy in resource filters [chilan]
  - tariff list can be filtered by multi selection of tariff tags from upper filter [chilan]
  - multi node group assignments can be added and deleted from node form [chilan]
  - added global try/catch block as default resort error handler [chilan]
  - ported node group list sort to jquery and ajax [chilan]
  - support of auth type for networks [chilan]
  - user is able to sort node and customer tabs on his own and order is persistent [chilan]
  - added support for ssl_verify_peer, ssl_verify_peer_name, ssl_allow_self_signed boolean
    configuration variables in LMS::SendMail (for now these variables are handled only
    by phpmailer mail.backend) [chilan]
  - allow to switch on column filter and toggle for lms-ui-datatable using
    lms-ui-datatable-column-search and lms-ui-datatable-column-toggle classes respectively [chilan]
  - introduced persistent settings: tabs order are stored persistently
    in users.persistentsettings database table [chilan]
  - allow to limit invoice send by mail count per hour [olimplan/chilan]
  - lms-ui-wysiwyg-editor css class point text areas which should have
    tinymce toggle feature [chilan]
  - many items can be opened in menu at the same time - phpui.max_opened_menus
    (default: 3; 0 means unlimited) configuration variable controls this [chilan]
  - main menu items are sortable by draging menu icon and dropping it in another place [chilan]
  - removed support for swekey [prezes_kk]
  - datatables column search supports selection lists [chilan]
  - allow to toggle main menu visibility [chilan]
  - added published flag to documents which means if document has been published and
    probably received by customer [chilan]
  - financial documents can be previewed without publishing [chilan]
  - added support for voip pool numbers [kosa/chilan]
  - document form title is automatically set after document template selection
    to form_title or title template property [chilan]
  - dynamic presentation of quick search input depending - they are shown after
    mouse over on quick search icons [chilan]
  - added quick search customers by phone numbers on top [chilan]
  - added phpui.node_assignment_warning configuration variable which
    determines if alert is displayed when no node has selected for internet assignment [chilan]
  - added node list filter: without gps coordinates [chilan]
  - added customer list filter: liabilities without invoice flag [chilan]
  - added support for voip phone priority [kosa/chilan]
  - changed customer instant messengers handling code to more generic code which will allow
    to easier support more im types in the future [chilan]
  - added support for change voip account settings in userpanel by customer [kosa/chilan]
  - when phpui.big_networks is set to true show customer name on right side of input control [chilan]
  - added support for convenient dynamic plugin javascript code loading in document templates [chilan]

version 1.11.20 (2016-04-19):

  - bclean: added responsive menu [kyob]
  - www, userpanel messages are always sent initially and userpanel messages are
    marked as delivered after message read confirmation [chilan]
  - added support for user groups [wawryk]
  - customer address and postal address were separated to street, building and
    apartment fields [chilan]
  - added support for external system customer identifiers need to bind
    lms customers with external system customers [chilan]
  - invoice notes can be edited from now [chilan]
  - allow to clone network devices from user interface [chilan]
  - add hook for documents in plugins [wawryk]
  - don't allow to issue invoice credit note for invoice which already has issued
    credit note [chilan]
  - bumped html2pdf library version to 4.5.0 [prezes_kk]
  - allow lms-payments.php script to set aligned periods for invoice items
    (added special symbol %aligned_period) [chilan]
  - added type, private and opened filters in event list [chilan]
  - localised bank account functions use common iban account functions [chilan]
  - we can add many bank accounts to single customer (both source and destination
    accounts) [chilan]
  - invoices.show_all_accounts allows to display all customer bank accounts
    on invoices [chilan]
  - allow to select customer for all imported transactions [wawryk/chilan]
  - replaced all customer selectiors by smarty customerlist function [chilan]
  - removed deprecated chkconfig, check_conf and get_conf public functions [chilan]
  - lib/config.php is needed only for config load module [chilan]
  - added column with type in uiconfig, and configuration is validated by this type [pjona]
  - function $LMS->CheckOption() takes a '$type' as the first parameter [pjona]
  - lms-sendinvoices.php can send additional file as a separate attachment [pjona]
  - added support for second mail library (PHPMailer), see mail.backend option [wawryk]
  - lms-payments.php: added option which allows to define date format [pjona]
  - node list: added support for investment project selection [chilan]
  - node list: added support for 'without tariff' status [chilan]
  - added phpui.quicksearch_limit config variable with 15 as default [chilan]
  - fixed calculation of brutto value basing on netto value
    (fixes https://github.com/lmsgit/lms/issues/559) [chilan]
  - added payments.default_unit_name config variable with "pcs." as default [pjona]
  - customer and user notifications about still opened events [chilan]
  - fixed multidays event presentation in event list when end time is 00:00 [chilan]
  - remember all form settings between user sessions [chilan]
  - 'unblock' channel support added to lms-notify.php backend script [chilan]
  - fixed radio sectors visualisation on network map - azimuth points angle related
    to north direction [chilan]
  - add filters (with nodes, without nodes, active nodes, e-invoice) in customerlist [wawryk]
  - add filters (online, without terryt) in nodelist and show info on welcome [wawryk]
  - bumped used smarty version to 3.1.29 (LMS Plus users should not use the newest
    lms master version for the moment) [chilan]
  - allow to view and search node sessions [chilan]
  - allow to use web browser mechanism to open new invoice/receipt/note form in customer
    balance box [chilan]
  - invoices.disable_protection allows to disable modify and copy protection in
    tcpdf invoice [chilan]
  - added possibility to add note to events by technician without timetable_access [wawryk]
  - added showOrHide function to boxes on welcome page [wawryk]
  - added autolinker in rttickets [wawryk]
  - copy ip address to clipboard after click on ip.gif image [wawryk]
  - added clone option to promotions and promotion schemas [wawryk]
  - added tcpdf support for debit note [pjona]
  - added documents cacheing [wawryk]
  - added support for sending debit notes by mail [chilan]
  - allow to assign numberplans to tariffs [chilan]
  - receiptadd: we show also not accounted debit notes [pjona]
  - separation force_ssl for UI and Userpanel [pjona]
  - added node location info in network devices connected nodes list [chilan]
  - added support for network searching [kosa/chilan]
  - added support for different placements of suggestion window
    (phpui.default_autosuggest_placement) [kosa/chilan]
  - suggestion window adjust its width to displayed data
    (phpui.autosuggest_max_length) [kosa/chilan]
  - improved performance of default type detection for config variables [chilan]
  - redesigned multiselect window to be more useable [kosa/chilan]
  - networks: added support for vlan ids [kosa/chilan]
  - added support for userpanel_<module_name>_<function_name>_before_module_display
    hooks [chilan]
  - allow to add custom links in userpanel customer balance list [chilan]
  - workaround postgresql array_agg multi function existence during db schema updates [chilan]
  - added delivery status notification support for mail messages [chilan]
  - invoice sends are optionally confirmed by new messages [chilan]
  - added mail disposition notification support for mail messages [chilan]
  - added support for DSN, MDN and Reply-To header in phpmailer backend
    (DSN required separated patch for PHPMailer code) [chilan]

version 1.11.19 (2015-12-21):

  - updated lms swekey code to be conformed with PHP 7 [prezes_kk]
  - added support for message delivery status [Jarosław Dziubek]
  - rewrite of user access rights code completely - it can require
    related adjustments in 3rd party plugins and patches [chilan]
  - introduced new hook which allows to attach handlers for all LMS modules
    before smarty template displaying (*_before_module_display) [chilan]
  - don't use smarty prefilter for document directory [chilan]
  - multiple files can be send by email when we create mail message [chilan]
  - selection of phones and emails is possible when we send message to customer [chilan]
  - fixed liability reports when assignments with many tax rates for customer was
    assigned [chilan]
  - sms.transliterate_message config variable introduced - allows to
    getting rid of national characters in sms messages [chilan]
  - added contract filter for customer list and report [chilan]
  - invoices.customer_credentials and invoices.customer_balance_in_form configuration
    settings were introduced [chilan]
  - userpanel helpdesk module: ticket/message attachment support added [chilan]
  - userpanel helpdesk module: allow customer to download message attachments [chilan]
  - new pagination engine [maciejlew]
  - added limit and offset support for customer list [maciejlew]
  - added flag CONTACT_DISABLED, CONTACT_INVOICES and CONTACT_NOTIFICATIONS to customer contact data [wawryk]
  - adjusted database schema for powerdns 3.4.x [chilan]
  - resolved tcpdf invoice problem where position names were not wrapped [chilan]
  - added holiday information in timetable [pjona]
  - added event type in timetable [pjona]
  - added session type for node sessions [chilan]
  - added extra_css_styles Smarty block - plugins can use it to inject their own CSS styles [maciejlew]
  - helpdesk: added history of the ticket when you add notes [pjona]
  - helpdesk: added ability to change queue and owner when you add notes [pjona]
  - helpdesk: added type to notes [pjona]
  - added new access type/session types - WiFi AP Client, VoIP Gateway [chilan]
  - added preliminary support for customer disconnected status and refactoring customer status
    support code to make adding new customer statuses easier [chilan]
  - permanent customer removal for customers which are already removed [chilan]
  - allow to optionally send mail copy to message sender (checkbox is checked by default if
    phpui.send_message_to_sender_checkbox is set to true) [chilan]
  - added phpui.capitalize_node_names setting which is true by default and decides
    if node names are automatically capitalized during node add or update [chilan]
  - allow plugins to add their own buttons in customer balance box and invoice list [chilan]
  - allow plugins to add their own content in left and right column of customer info and edit boxes [chilan]
  - allow assign a whole network to the customer [pjona]
  - invoices.attachment_name setting allows to define pdf invoice file name pattern (%number symbol
    is only supported symbol for now) [chilan]
  - complete rewrite of invoice generation code - common path code for pdf and html invoices [chilan]
  - lms-sendinvoices.php stopped pretending www browser - it uses new pdf generation code path [chilan]
  - complete rewrite of receipt generation code - common path code for pdf and html receipts [chilan]
  - complete rewrite of note generation code [chilan]
  - complete rewrite of two transfer form types - killed old pdf backend code [chilan]
  - new bootstrap based userpanel style integrated - bclean [kyob]
  - customer info box: show customer all and not resolved ticket stats (as bold when there
    are some unresolved tickets) [chilan]
  - added support for customer source and destination bank accounts in cash import parser [chilan]

version 1.11.18 (2015-10-01):

  - added support of new style plugins in userpanel - hooks executed before
    module load have 'userpanel_*_on_load' name pattern [chilan]
  - added support of new style plugins in userpanel module setup part [chilan]
  - template inheritance chains are supported; we can use the same names
    for all templates in chain - should be very usefull in plugins [chilan]
  - move upgrade db schema code to LMSDB class - it can also be used by plugins [chilan]
  - added simple plugin management form [chilan]
  - added support for old style plugin management [chilan]
  - added location to voip accounts as we're preparing for plicbd2 localisation service [chilan]
  - we can add many mail accounts in customer properties (customers.mail field in db was removed,
    but values set so far are stored in customercontacts table from now) [chilan]
  - added smarty blocks for customer assignments template [maciejlew]
  - added smarty blocks for customer list template [maciejlew]
  - added smarty blocks for customer voip accounts list template [maciejlew]
  - added smarty blocks for voip account add template [maciejlew]
  - added smarty blocks for voip account edit template [maciejlew]
  - added smarty blocks for voip account info template [maciejlew]
  - added smarty blocks for voip account list template [maciejlew]
  - added number_of_table_columns variables at voip account list template that can be used by plugins [maciejlew]
  - added customerlist-list-columns smarty block at customer list template [maciejlew]
  - added number_of_table_columns variables at customer list template [maciejlew]
  - added colgroup at customer voip account list template [maciejlew]
  - added customervoipaccountsbox-list-columns smarty block at customer voip account list template [maciejlew]
  - added number_of_table_columns variables at customer voip account list template [maciejlew]
  - added posibility to filter document list by document status [chilan]
  - userpanel: new authentication type - by email and pin [chilan]
  - userpanel: selection of authentication type is possible from lms user interface [chilan]
  - userpanel urgent notices are working independently from userpanel style and are completely separated
    from userpanel code core [chilan]
  - added support for invoicenew_save_{before,after}_submit plugin hooks [chilan]
  - daemon: fixed parser module compilation on centos 7 (and probably on other newer linux
    distributions) [chilan]

version 1.11.17 (2015-06-29):

  - added support for radio sectors management in user interface [chilan]
  - fixed serious performance regression introduced by autoloader [chilan]
  - added radio sector management for network device links [chilan]
  - added license number and frequency for radio sectors [chilan]
  - added link technology and bandwidth support for radio sectors [chilan]
  - userpanel: we can enable/disable modules from lms user interface [chilan]
  - added connection type (PPPoE, DHCP, EAP) in nodes [nicraM Marcin Romanowski]
  - added network device selection from map [chilan]
  - added connection type (DHCP, EAP) in network device nodes [nicraM Marcin Romanowski]
  - move 'replace device" to popup for better netdevinfo/edit performance [maniac]
  - added visualisation of radio sectors on network device map [chilan]
  - added filter in network device list which allows to select device status
    and investment project to which device belong to [chilan]
  - added in debt above 100% and 200% filters in add message form [chilan]
  - adjustements to smarty versions above or equal 3.1.22 [chilan]
  - uke siis generator adjusted to earlier added radio sector feature [chilan]
  - daemon: ewx-pt module: fixed inproper mac content copying which caused segfaults
    on systems with newer system libraries [chilan]
  - daemon: ewx-pt module: don't remove hosts from ewx_pt_config sql table
    when host doesn't belong to any network defined by networks setting
    - in other words more sane multi ewx-pt instance support [chilan]
  - helpdesk notifications: attach all phone contacts [chilan]

version 1.11.16 (2015-03-31):

  - allow for separated template files in userpanel style [chilan]
  - print customer list from selected division is possible [chilan]
  - save also message subjects in message templates [chilan]
  - added debian package config - build can be done by dpkg-buildpackage [maniac]
  - new message types added (userpanel, userpanel urgent [chilan]
  - new database access layer [maciejlew]
  - new configuration system [maciejlew]
  - wysiwyg edition of config values is possible [chilan]
  - we can delete all customer liabilities by one click [chilan]
  - add fullnumber with dispatched document full number in documents table [chilan]
  - documentlist: selection of numberplan is possible [chilan]
  - added quick search by document full number [chilan]
  - daemon: if snmp.h is not available then don't build ewx-* modules [maniac]
  - daemon: fixed daemon start on some platforms. Closes: #239 [maniac]
  - tariffs: 500M is new maximum allowed bandwidth [chilan]
  - invoicereport: multi selection of numberplans is possible [chilan]
  - helpdesk ticket add: make form layout more similar to ticket edit form [chilan]
  - events: multi-day event support [chilan]
  - events: multi user selection is possible in event search form [chilan]
  - management urls can be also assigned to nodes [chilan]
  - LMS class is able to send many posts via single smtp session [chilan]
  - new plugins management system [maciejlew]
  - many sms service providers can be set in sms.service
    setting (separated by colon) [chilan]
  - bumped ezpdf library version (viewing invoices in firefox should
    work again) [chilan]
  - pdf receipts ported to new ezpdf library version [chilan]
  - new tags: %period_begin() and %period_end() to customize period date format
    in lms-payments [kcem]
  - support for more than one email per customer, comma is a delimiter [kcem]
  - explicitly given language in http headers when lms-sendinvoice get invoices
    to be sure that script get invoices in correct language [kcem]
  - reduced ezpdf invoice file size by subset font usage [chilan]
  - new privilege for compacting traffic statistics [maniac]
  - correction of typos on domain record list [darton]
  - correction of the table that displays a list of domain records [darton]
  - update top level domains list to newest version [darton]
  - tariff liabilities composed of two elements [darton]
  - added transaction log core modules [chilan]
  - allow to use old-style and new-style plugins at the same time [chilan]
  - added terminate cause in node sessions [chilan]
  - network node list can be filtered by nodes without investment project [chilan]
  - added network node column in network device list [chilan]
  - show info about state, district and borough in netnode, netdev and node info boxes [chilan]
  - full location info in netnode, netdev and node lists [chilan]
  - lms-teryt: added option which allows to choose if city matches should be unique [chilan]
  - added network device producers and models management [chilan]
  - siisv5: new version of siis report generator which allows to save much time;
    the old generator still works and can be selected by user [chilan]
  - siisv5: create fake network ranges with the same location as network node
    to avoid strange siis bussiness logic rules [chilan]

version 1.11.15 (2014-05-15):

  - host owner selection for networks [pjona/chilan]
  - separation of privileges: finance management and cash registry administration [chilan]
  - show last 10 node sessions in nodeinfo and nodedit [chilan]
  - transaction logging engine introduced [chilan]
  - transaction logging for finances [chilan]
  - new css classes - lmsbox and lmsbox-inner - for separating content from presentation [maciejlew]
  - common old css classes like fall, fright etc can now be applied to any block html element [maciejlew]
  - support of sms message length limits [chilan]
  - phpui.custom_templates_dir setting allows to select used template set [chilan]
  - the same networks bound to different hosts can overlap [chilan]
  - network selection for node and netdev ip addresses [chilan]
  - transaction logging for networks [chilan]
  - fixed mysql database dump - don't check foreign key constraints during database recover [chilan]
  - transaction logging for network devices [chilan]
  - tinymce3 integration: customer, node info, message and notes support [chilan]
  - message templates: mail and sms messages [chilan]
  - message templates: customer and node warnings [chilan]
  - node traffic statistics are loaded in background [chilan]
  - messageadd: selection of multiple customer groups is possible [chilan]
  - helpdesk: notes with proper info are automatically added when ticket changes owner or is moved
    from one queue to another [chilan]
  - assignment edit: autoselect tax value for tariffless assignments when assignment
    tax value is already defined [chilan]
  - userpanel: added credential reminder support [chilan]
  - sms message can be sent to more than one phone for single customer [chilan]
  - show only document templates which match chosen document type [chilan]
  - add attachments support for new tickets [chilan]
  - multi attachments for new tickets and new ticket messages [chilan]
  - helpdesk messages: image attachment preview in popup [chilan]
  - documents: copy division data to documents [michu006/chilan]
  - message deletion is possible on message list [chilan]
  - configuration of visible queues for userpanel is possible [chilan]
  - www message type added [chilan]
  - lms-payments.php: monthly liability settlements support exact value calculations
    determined independently by number of days in each month [chilan]
  - userpanel: added helpdesk reply notifications [chilan]
  - customer cutoff of block suspending is displayed as calendar date [chilan]
  - rtqueues: customers notifications about new ticket, new message and resolve ticket [chilan]
  - basic serwersms.pl api support [chilan]
  - basic smsapi.pl api support [chilan]
  - userpanel: helpdesk: selection if all tickets are visible or only
    those from selected queues [chilan]
  - messages: selection of customer tariff type is possible [chilan]
  - support customer search by tariff type [chilan]
  - customer search: export results to csv [chilan]
  - userpanel: helpdesk: allow message add to closed tickets setting [chilan]
  - userpanel: helpdesk: limit ticket movements to selected queues setting [chilan]
  - support html mail send [chilan]
  - messageadd: possibility of checking if customer consent is required [chilan]
  - daemon: payments: copy division info to new invoice [chilan]
  - added link technology support [chilan]
  - hide_toolbar option [maniac]
  - phpui.logging option set to 0/false now hides UI elements [maniac]
  - fixup wellcome screen helpdex boxes alignment and other minor fixes [maniac]
  - copy shortname from divisions to documents [chilan]
  - do not miss categories without tickets on wellcome screen [maniac]
  - rearange ticket category stats to for lower resolution compatibility [maniac]
  - report all problems with directiories and privileges at once [maniac]
  - report missing Smarty library [maniac]
  - make script for devel/smarty-install.sh path independend [maniac]
  - minimal supported version of postgresql is now 8.4 [maniac]
  - simplified installation procedure - UI loads schema if there are no tables in db [maniac]
  - optional and selectable components of promotion schemas [chilan]
  - daemon: fixed mysql 5.1 detection in configure [maniac]
  - daemon: configure will fail if bison is not detected [maniac]
  - daemon: fix snmp library detection [maniac]
  - daemon: add to dbdrivers db_concat function [maniac]
  - daemon (payments, cutoff): changed usage of BROADCAST macro to database function [maniac]
  - daemon/parser/sql: always call database by global object [maniac]
  - daemon/parser/sql: replace USE_PGSQL macro with driver's db_concat function [maniac]
  - daemon/cutoff: removed unnecessary database dependent, compilation time typecast [maniac]
  - daemon is now able to load database configuration from lms.ini (-C option) [maniac]
  - daemon: database drivers are now loadable modules. [maniac]
  - daemon: printing revision number in -v and -h [maniac]
  - daemon/dns: module now is looking additional files in LMS_CONF_DIR/daemon/dns [maniac]
  - move custom plugins to lib/SmartyPlugins - bumps min. smarty ver. to 3.1 [maniac]
  - daemon: resolve source dependency problem for gcc 4.4 - bumps api version [maniac]

version 1.11.14 (2013-03-25):

  - Fixed nodes list in Userpanel [alec]
  - lmsd/ewx-pt: Fixed issues on nodes deletion [alec]
  - lmsd/ewx-stm-channels: Fixed issues on nodes deletion, improved performance [alec]
  - lmsd/ewx-stm_channels: Added channel/customer limits checking [alec]
  - lmsd/ewx-stm_channels: Added channel half duplex setting [alec]
  - Fixed promotion assignments creation on MySQL [alec]
  - BTS#0000868: Fixed bug where country wasn't saved when adding customer [alec]
  - lms-notify-sms: Fixed wrong number prefix, when prefix was set to empty string [alec]
  - fixed bug in dbview bound to inproper Content-Length header [chilan]
  - daemon: disambiguation of halfduplex field usage in ewx-stm module [chilan]
  - Implemented nodes/devices localization database [alec]
  - lms-teryt: Script for Polish TERYT localization database import [alec]
  - Userpanel: added bank account to userinfobox [maniac]
  - Userpanel: reversed sorting of finance history [maniac]
  - Added bank account number to default invoice template [maniac]
  - lms-cutoff: added options to include only due payments and to extend paytime [maniac]
  - Userpanel: allow lms.ini to be virtual host dependend (like in UI) [maniac]
  - lmsd/ewx-pt: code rewrite, some improvements, added debug [alec]
  - RT: fixed replys to tickets created from userpanel with backend enabled [maniac]
  - BTS#0000880: Fixed transfer forms report printing [alec]
  - BTS#0000877: Fixed node assignments for all promotion periods [alec]
  - BTS#0000876: contrib/customer: Fixed customer tariff is always zero [alec]
  - BTS#0000878: Fixed calculation of first promotion period length [alec]
  - lms-cutoff: added 'customergroups' & 'excluded_customergroups' opts [maniac]
  - welcome: added posibility of hiding links, system information and registration info [chilan]
  - helpdesk: ticket categories introduced [chilan]
  - documents: fixed aliases sql query in default template [chilan]
  - userpanel/helpdesk: missed customer id in footer of the notification mail [chilan]
  - ported to Smarty 3 [chilan]
    -----------------------------------------------------------------
    WARNING: This update changes required version of Smarty from 2.6 to 3.x.
    		It was quite strongly tested with Smarty 3.1.3
    -----------------------------------------------------------------
    WARNING: This update changes required version of PHP to 5.2+
    -----------------------------------------------------------------
  - quicksearch: fixed search for hosts when exact mac address was entered [chilan]
  - BTS#0000867: execution node_del_{before,after} hooks while deleting owner [chilan]
  - gps coordinates support for nodes and netdevices [chilan]
  - netdevmap: first version of OpenStreetMap map type support thanks to Grzegorz Cichowski [chilan]
  - netdevmap: show info about netdevices for OpenStreetMap map type [chilan]
  - selection of gps coordinates from popup map [chilan]
  - javascript smarty literal cleanup [chilan]
  - network maps show nodes and node links & switched map creation from markers to features [chilan]
  - separated js and php files created for map support [chilan]
  - livemap(tm) in LMS ;-) network state is updated asynchronously in real time
    in phpui->lastonline_limit time periods [chilan]
  - we can ping nodes and devices watching results in popups [chilan]
  - 5 default base layers for maps [chilan]
  - ported to xajax 0.5 [chilan]
  - toolbar on netdevmap and possibility to ping any host (even not included in database) [chilan]
  - netmap popups are draggable thanks to DragPopup class written by Matt Walker [chilan]
  - we can close netmap popups by close box; also some map css cleanups [chilan]
  - netdevmap: remember position, zoom, base layer and visible data layers between
    netdevmap visits [chilan]
  - netdevmap: refresh network state on demand - added new button [chilan]
  - LMS postgresql driver uses E'..' for escaping backslashes (compatibility with changed default
    value of standard_conforming_strings to on) [chilan]
  - ping is more smart now - refresh every 1 second, but can make many ping
    probes on server [chilan]
  - when network elements are covered too dense then we show these elements info
    in one, common popup window [chilan]
  - it's able to pause ping [chilan]
  - display summary times in ping popup [chilan]
  - added %bankaccount variable for messages sent from UI [Łukasz Rostalski]
  - lms-payments: added 'check_invoices' option [foxman]
  - if user doesn't have finances management privilege then he can't see any
    financial information [chilan]
  - possibility to show selected device or node on map [chilan]
  - we can send sms to any phone number from outside database [chilan]
  - can send any sms to selected users [chilan]
  - added %if substitution symbol for interface name [chilan]
  - BTS#0000892: Fixed bug where phpui/style wasn't used on login page [alec]
  - we can use percentage and amount discounts [chilan]
  - BTS#0000894: lmsd/parser: Fixed SQL query for NODES variable [alec]
  - fixed listing of customers who in debt above 100% and 200% [Jarosław Dziubek/chilan]
  - complete rewrite of graph statistics engine. Graphs look like in Cacti [chilan]
  - we can choose graph statistics from node information form [chilan]
  - rewritten graph navigation panel [chilan]
  - invoicenote: we use tax rates which were current in the day
    when invoice was issued [Jarosław Dziubek/chilan]
  - ping: added selection of ping type thanks to Grzegorz Cichowski [chilan]
  - use more <label> elements instead of javascript's checkElement() [alec]
  - fixed issue with too big session data on mysql [alec]
  - new contact add and new mac add ported to javascript [chilan]
  - BTS#0000908: added function format_bankaccount [wdjag/chilan]
  - added support for domain mx backup [chilan]
  - BTS#0000911: msie support for javascript used for new mac/contact add [prezes_kk/chilan]
  - assignment locks support introduced [chilan]
  - daemon/ewx-stm: save channel id without offset in ewx_stm_nodes table [chilan]
  - added fiber link type and changed link type selection from checkbox to combobox [chilan]
  - teryt streets containing two segments support [chilan]
  - added link speed for netlinks and nodelinks [chilan]
  - additional tariff types to select (phone, tv) [chilan]
  - uke report support for service types [chilan]
  - netdevmap: show link properties in tooltip [chilan]
  - netdevmap: link weight depends on link speed [chilan]
  - added timeout mechanism for fetch_url(); without timeout support
    we could wait for LMS update info forever [chilan]
  - searching nodes by teryt localization [chilan]
  - nodesearchresults: first operation introduced - connect to device [chilan]
  - customersearch: division selection - requested by jlc [chilan]
  - daemon tc-new: fix empty mac segfault [chilan]
  - invoice_pdf: %bankaccount substitution for invoice from division header and footer [chilan]
  - tcpdf support for invoices [prezes_kk]
  - assignmentlocks -> nodelocks [chilan]
  - we can choose format of reports beetween html and pdf - phpui->report_type [prezes_kk]
  - script for automatic filling of gps coordinates based on Sebastian Wielgosz work [prezes_kk]
  - changed pin field type from int to varchar(6) [pjona]
  - liability reports are consistent with invoice/cash issues [chilan]
  - small fix for new PHP version [pjona]
  - fix validation data in domains for DKIM [pjona]
  - added management urls for netdevices [chilan]
  - customersearch: we can search customers by tariff [ceho]
  - cashimportparser.php: fixed problem with long customername and description [ceho]
  - customergroups: extended group name to 255 chars [ceho]
  - lms-traffic: disable 'autocommit' for postgresql [ceho]
  - clicking on mac icon changes mac format [chilan]
  - daemon/payments: better to not depend on localtime() singularity [chilan]
  - daemon/payments: fixed assignment numberplan support [chilan]
  - fixed domain filtering [chilan]
  - fixed position of table on tcpdf invoice [chilan]
  - selection of only automatically issued invoices is possible now in invoice print [chilan]
  - added reload timer. Add reload_timer true to phpui to enable it [paszczus]
  - implemented simple password expiration mechanism [chilan]
  - chpasswd: new password should be different than old one [chilan]
  - new hook: we can register function which is invoked before module load and modify
    access table [chilan]
  - new simple plugin which allows to use one-time sms passwords [chilan]
  - payments: support %type placeholder which gets its value from tarifftypes config section [chilan]
  - queues to whom we don't have access privileges, are not shown at all [chilan]
  - user password should contain at least one capital letter, one lower case letter, one digit
    and should consist of at least 8 characters [chilan]
  - user should have reports privilege to have access to any reports [chilan]
  - small user permission revolution: if user has deny permission defined after allow permission,
    he won't have an access to given module [chilan]
  - OpenLayers: ported 'Fix Google terms/poweredby/popup' commit to our version [chilan]
  - past at date for disposable assignments is possible and we're only warned in such situation [chilan]
  - bumped OpenLayers to 2.12 [chilan]
  - support of ucs2 encoded smses [chilan]
  - bin/lms-payments: added %prev_period variable [ceho]
  - enabling and disabling user accounts is possible [michu006]
  - validity period for users accounts [michu006]
  - added info about last modification user and date for events [ceho]
  - fixed discount presentation on invoices [chilan]
  - added live traffic stats in node info module [chilan]
  - don't update time counter for session when we get access to xajax funcions [chilan]
  - netdevmap: openlayers map works again in google chrome [chilan]
  - uke siis reports adjusted to version 3 [chilan]
  - added possibility to disable the tariffs [pjona]
  - mysql schema fixes [LoLe/chilan]
  - it's possible to add new config sections from ui [chilan]

version 1.11.13 Dira (2011-04-07)

  - contrib/cutoff2: Fixed "Column 'period' in where clause is ambiguous" [alec]
  - BTS#0000862: Fixed bug in SQL query on MySQL [alec]
  - customers: add post name [chilan]
  - receipts: replaced stamp by division/company data [chilan]
  - documents: added sale date [chilan]
  - BTS#0000863: changed temporary referenced $number variable to actual variable [chilan]
  - Fixed performance of nodes quick-searching on MySQL [alec]
  - Fix regression where wasn't possible to view information about deleted customer [alec]
  - Added searching by option name in configuration options list [alec]
  - Fixed popups height on Internet Explorer [alec]
  - Added possibility to select invoices paytime from calendar popup [alec]
  - lms-payments: Added option for setting sale date to the 1st day of next month [alec]
  - Added sale date and deadline date on Sale Registry printouts with possibility
    to choose which date will be used to sort the list [alec]
  - Enable possibility to edit/note of accounted invoices [alec]
  - Added 'in debt above 100%' filter on customer list [alec]

version 1.11.12 Aris (2011-03-18)

  - Don't send mail to deleted users [alec]
  - BTS#0000847: Fixed UI language setting when HTTP_ACCEPT_LANGUAGE is not set [alec]
  - Added option finances/cashimport_use_idate to use file import date
    instead of cash operation date [alec]
  - Fixed goto feature of the second scroller on the page [alec]
  - BTS#0000848: Fixed cash import history report when source is selected [alec]
  - Fixed SQL query in lms-makewarnings [alec]
  - Fixed order of tables in database backup [alec]
  - Fixed printing of DB errors while recovering database backup [alec]
  - Added simple plugin API with some hooks on node actions [alec]
  - BTS#0000856: Fixed "Hide/Show expired" link on node* pages [alec]
  - lmsd/payments: Fixed error "Unknown column 'ats.customerid' in 'where clause'" [alec]
  - Added Promotions with assignments shedule schemas [alec]
  - Use tariff name+value+period as a unique key instead of just a name [alec]
  - Now PostgreSQL 8.2 is required because of multi-value INSERT usage [alec]
  - Fixed netdevices searching by MAC address [alec]
  - BTS#0000860: Fixed sticky popups [alec]
  - Added send_sms_before plugin hook [alec]
  - Don't send deplicated notifications to the users when they are using
    the same e-mail address [alec]
  - Removed userpanel/debug_email option, use mail/debug_email instead [alec]
  - Added sms/debug_phone option [alec]
  - Added SMS notifications from helpdesk [alec]
  - BTS#0000843: Support SMS messages up to 459 chars using smscenter setvice [alec]
  - Force names of multicolumn unique constraints in PostgreSQL [alec]
  - lmsd/payments: improved performance of assignment suspension check [alec]
  - Fixed mixed %NETTO and %VAT variables values in export file [alec]
  - lmsd/cutoff: Fixed "Column 'period' in where clause is ambiguous" [alec]
  - Fixed customers listing so, when using group/network filter together
    with "deleted" status, the list is empty [alec]
  - lmsd/tc,tc-new: Added %h1, %h2, %h3, %h4 variables [alec]
  - fixed "Check All" checkbox on Cash Operations Import list [alec]

version 1.11.11 Bray (2011-01-17)

  - fixed SQL queries in postfix configuration manual (alec)
  - BTS#0000832: fixed stats compacting (alec)
  - we can bind many macs to one node (chilan)
  - show all accounts and mail forwards in aliaslist (chilan)
  - added vnodes sql view for simpler nodes mac processing (chilan)
  - xajaxResponse object can be used in document plugins (alec)
  - separated setting for validating functions locales (chilan)
  - fixed displaying of assignments with 'HALFYEARLY' period (ceho)
  - re-designed customer assignments forms (alec)
  - invoices payment type field replaced with selection list (alec)
    -----------------------------------------------------------------
    WARNING: Database upgrade procedure may eat your data.
        Make sure you have no unsupported payment types in
        database with SQL query:
        SELECT LOWER(paytype) FROM documents GROUP BY LOWER(paytype);

        Supported values are: cash, transfer, transfer/cash, card,
        compensation, barter, contract (and its Polish translations)
        or empty string.
    -----------------------------------------------------------------
  - Per-assignment payment type and numbering plan (alec)
  - fixed removal of helpdesk attachments + added foreign keys (alec)
  - fixed array_agg definition for Postgresql 8.1 (alec)
  - fixed accounting and period description of quarterly payments (alec)
  - lmsd/ewx-stm-channels: include node's MAC in syslog messages (alec)
  - lmsd/ewx-stm-channels: added MAC duplicate prevention (alec)
  - lmsd/ewx-stm-channels: added "empty" IP/MAC pair prevention (alec)
  - lmsd/ewx-stm-channels: added warnings about channel limits exceeding (alec)
  - lmsd/ewx-stm-channels: improved performance of default channel handling (alec)
  - support big_networks with owner popup selector in nodeadd, nodeedit and
    documentlist templates (alec/W.Dymkiewicz)
  - added period moving links in node's traffic graph (alec)
  - BTS#0000837: fixed values on traffic graphs (alec)
  - added info about default channel and about nodes on channels list (alec)
  - added devices and nodes lists (popups) on channels list (alec)
  - traffic stats: increased daily graph precision (alec)
  - traffic stats: fixed zero values on utter bars (alec)
  - traffic stats: added option phpui/stat_freq for better hourly graph precision (alec)
  - lmsd/dns: fix for situation when database contains subnetworks of a network,
    so reverse entries in named.conf are not duplicated and hosts entries are
    placed in one file for all subnetworks (alec)
  - allow setting assignment period for disposable liabilities (alec)
  - improved performance of traffic database compacting procedure (alec)
  - added "consent to e-invoices" switch in customer data (alec)
  - added "consent to invoices delivery via e-mail" switch in customer data (alec)
  - added "consent to messages delivery via e-mail or sms" switch in customer data (alec)
  - added possibility to set type (mobile/fax) of customer contact (alec)
  - customer service address split into separate fields: address, zip, city, country (alec)
  - node location address split into separate fields: address, zip, city (alec)
  - added cash import packages/files handling (alec)
  - added more foreign key constraints in DB structure (alec)
  - improved style of popups (alec)
  - calendar popups doesn't use a new window (alec)
  - choose(ip|mac|customer) popups doesn't use a new window (alec)
  - added payment period setting for tariffs, so now when mmonthly tariff is assigned
    to a customer with yearly period, payment will be accounted once a year with tariff
    value multiplied by 12 (alec)
  - BTS#0000844: fixed traffic graph when using customer filter (alec)
  - Added device nodes count on devices list in channel info (alec)
  - Added channel limits on customer nodes list (alec)
  - lmsd/hostfile: added 'multi_mac' option and %ms variable (alec)
  - lmsd/tc-new: added 'multi_mac' option and %ms variable (alec)

version 1.11.10 Kri (2010-04-19)

  - contrib/daemon/gentoo-init: small fixes (Mariusz Szulerecki)
  - lmsd/oident: use lower case'd node names (alec)
  - added PowerDNS support, LMS now can directly manage PowerDNS server
    with mysql/pqsql backend support (Dariusz Kowalczyk/Jan Gancarczyk)
  - Userpanel: added possibility to print many invoices with one click (alec)
  - unified pdf invoices in Userpanel and LMS-UI (alec)
    ------------------------------------------------------
    WARNING: MySQL database requires InnoDB engine support
    ------------------------------------------------------
  - changed MySQL tables engine to InnoDB (Dariusz Kowalczyk)
  - BTS#0000812: fixed date filter for Cash Import History (alec)
  - lmsd/payments: fixed buffer overflow in quarterday calculations (alec)
  - lmsd/payments: BTS#0000810 - fixed check_invoices option (alec)
  - added deadline date (paytime) for debit notes (alec)
  - added invoices/paytype, invoices/paytime and notes/paytime options (alec)
  - added per-division paytime and paytype (alec)
  - allow finances operation description to be longer than 255 characters (alec)
  - lib/pdf.php: fixed display of pdf document in IE8
    (http://support.microsoft.com/kb/316431) (Grzegorz Chwesewicz)
  - enabled transactions in MySQL database (alec)
  - lmsd: added client character set setting command after connection (alec)
  - lmsd/cutoff: support %B and %b variables in warning message (alec)
  - lmsd/tc-new: add optional condition to use nightly tariff values only for
    customers without stale invoices - added options 'night_no_debtors' and
    'night_deadline' (alec)
  - support for 14-characters long REGON identifiers (alec)
  - lms-mgc: support nightly tariffs (Michał Białozór/alec)
  - lmsd/cutoff: don't disable device IPs when use_nodeassignments is on (alec)
  - fixed deleting/disabling device IPs (alec)
  - lmsd/ewx-stm: fixed path limits checking (alec)
  - lmsd/ewx-stm: minimized numer of write operations (alec)
  - lmsd/ewx-stm: nightly tariffs support (alec)
  - rtqueueview: access denied when user doesn't have rights to any
    queues (alec/chilan)
  - don't allow to create an account of type mail if alias with specified
    login@domain already exists (alec)
  - fixed deletion of referenced node assignments on assignments deletion (alec)
  - List of Helpdesk Requests in extended format (alec)
  - added first letter sorting in domains list (webvisor)
  - added validation data in domains (webvisor)
  - added new section "zones" with default values for some records of domains (webvisor)
  - fixed subscription summary calculation on customers list: exclude disposable
    liabilities, include tariffless liabilities (alec)
  - BTS#0000819: Fix inconsistent calculations in Sale Registry (alec)
  - Security fix: Add module name validation (alec)
  - fixed 'disabled' filter on customers list so customers without nodes
    are skipped (alec)
  - BTS#0000821: fixed sorting of printed invoices (alec)
  - Added peak memory usage info in page footer (alec)
  - Added EtherWerX STM channels management (alec)
  - we can omit stats data in database backup (chilan)
  - fixed encoding of mail messages sent by perl scripts (alec)
  - BTS#0000825: fixed tariff limits checking in domain edition (alec)
  - lmsd/ewx-stm-channels: EtherWerX STM manager with extended channels support (alec)
  - Extended DNS records add/edit form (alec)
  - lmsd/payments: added %next_mon variable for next month in YYYY/MM format (alec)
  - more PHP-5.3 compat. fixes (alec)

version 1.11.9 Moloc (2009-10-28):

  - BTS#0000794: fixed postfix configuration for MySQL (alec)
  - improved performance of bank account fetching (alec)
  - added contrib/bin cash-import scripts for BPH, BZ WBK and PEKAO
    banks (webvisor)
  - fixed 'nas' view definition (alec)
  - added Configuration -> Import Sources (alec)
  - added import source filter for balance sheet report (alec)
  - added Cash Import History report (alec)
  - BTS#0000796: fixed nbtscan use (alec)
  - POSIX Regex functions (deprecated in PHP-5.3) replaced with PCRE/String (alec)
  - LMS::GetCache(): fixed serious bug connected with bad assumption that
    isset() returns false when key is not set (chilan)
  - BTS#0000797: fixed excluded_networks in lms-traffic-logiptables (alec)
  - lmsd: added --pidfile option (Jerzy Kolosowski)
  - lmsd: fixed sigfault in dns module (Jerzy Kolosowski)
  - lmsd: fixed bug in str_replace function (Jerzy Kolosowski)
  - contrib/daemon: added Gentoo init scripts (Jerzy Kolosowski)
  - Debit Notes (alec)
  - added separate access rights for Userpanel and voip accounts (alec)
  - lmsd/payments: added 'check_invoices' option (alec)
  - BTS#0000802: fixed date filter for transfer forms printing of invoices
    created at 00:00 hour (alec)
  - BTS#0000801: don't forget original/copy setting when printing new
    invoice (alec)
  - lms_parse_ini_file() replaced by PHP's parse_ini_file() (alec)
  - optimized GetCustomerList() by moving more operations to DB server (alec)
  - BTS#0000799: optimized GetCustomerNames() and some other SQL queries
    with customer name sorting (alec)
  - unified order of action icons on lists (alec)
  - BTS#0000749: allow selecting gateway address for devices (alec)
  - added display of IP address for DHCP, BROADCAST, NETWORK and netdevices entries
    on IP list (Grzegorz Chwesewicz, Chilan)
  - lms-notify(-sms): added debit notes notifications (alec)
  - added networks description functionality (Grzegorz Chwesewicz, Chilan)
  - extended description size of netdevices (Grzegorz Chwesewicz, Chilan)
  - invoices payment type per-customer (alec)
  - we can add mail forwards to aliases (Tomasz Chilinski, Chilan)
  - we can add domain aliases (Tomasz Chilinski, Chilan)
  - prevent SQL Injection in some queries using proper values escaping (alec)
  - fixed customer ID selection in forms with customerchoosewin() (alec)
  - added tariff traffic limits for night-time (alec)
  - Userpanel: use division name/address on transfer forms instead of line_1/line_2
    options (alec)
  - lmsd/tc-new: added 'night_hours' option with night-time tariffs support (alec)
  - lms-rtparser: added base64 encoding support, non-unicode characters decoding to
    prevent database inserts issues, fixed problem when message contains many
    character sets (alec)
  - invoicepaid.php: fixed SQL query (Grzegorz Chwesewicz)
  - lms-notify-messages: new script for notifying with http notices (alec)
  - lmsd/tc-new: fixed bug with wrong class generation in some cases when
    customer has many tariffs (alec)

version 1.11.8 Belus (2009-05-19):

  - fixed query fetching invoice's author (alec)
  - lmsd/ewx-pt: fixed mac/ip change detection (alec)
  - changed length of ewx_pt_config.name column type to 32 characters (alec)
  - lmsd: added 'skip_disabled' option in ewx-pt and ewx-stm modules (alec)
  - BTS:0000787: fixed parse error in transferforms2.php (alec)
  - lmsd/hostfile: fixed 'excluded_customergroups' option query (alec)
  - fixed stats compacting (alec)
  - added division filter on Customers List (alec)
  - modified division selector (using multiselect) in numberplans (alec)
  - added simple traffic graphs (alec)
  - distinct suspended from outdated and future tariffs (chilan)
  - added Events panel in customer info + small improvements in timetable
    (Jacek Nowosielski/alec)
  - renamed node/customers "message"/"warning" to "notice" (alec)
  - renamed menu "Mailing" to "Messages" (alec)
  - added sent messages history (alec)
  - added [mail] config section for smtp_* and debug_email options (alec)
  - SMS messaging (SMSCenter support from Michał Gacek's patch) (alec)
  - added messages list panel in customer info page (alec)
  - allow to send a message to one customer (alec)
  - contrib: added module for userpanel, allowing email accounts creation
    in postfixadmin format (Paweł Rohde)
  - added finances/cashimport_checkinvoices option for auto-checking invoices
    as accounted while importing cash operations (alec)
  - arp_table_backend configuration option introduced - we can get arp table
    by external command (chilan)
  - lms-notify-sms: added messages log support, added smstools service support,
    added options to send notifies about new invoice and paytime overdo,
    removed smstemplate option, added *_template and *_subject options (alec)
  - lms-makehosts: added support for excluding networks from LMSUI (chilan)
  - chooseip: show disabled networks on red (chilan)
  - added basic radius support (Robert "CyberM" Konopa/alec)
  - added options 'radius' and 'public_ip' (Robert "CyberM" Konopa/alec)
  - lms-notify: added messages log support, added options to send notifies
    about new invoice and paytime overdo, removed mailtemplate and mailsubject
    option, added *_template and *_subject options (alec)
  - added creation date filter on documents list (alec)
  - fixed networks selection in customergroup forms (chilan)
  - added user privileges framework: you can define privileges in access table
    and then use them as $_config.phpui.* in templates (chilan)
  - hide_summaries privilege introduced. For now it lets us show/hide
    customer and node summaries (chilan)
  - added possibility to print many (text/html) documents from documents list (alec)
  - added access rights for (non-financial) documents (alec)
  - added 'Confirm' link in Documents List's row (alec)
  - added lithuanian translation of Userpanel (chilan)
  - added 'hide accounted' checkbox in Invoices List search form (alec)

version 1.11.7 Bastet (2009-02-13):

  - fixed calculation of netto value and united tax value calculation method (chilan)
  - re-fixed table locking on mysql (alec)
  - fixed divisions table definition for postgres (alec)
  - BTS#0000784: fixed pagesize setting for pdf printouts (alec)

version 1.11.6 Olokun (2009-02-10):

  - added option phpui/invoice_check_payment to add payment operation
    when checking invoice as payed (alec)
  - balance sheet: added 'with/without document' and date filters (zet/alec)
  - balance sheet report: added 'with/without document' filter (zet/alec)
  - updated lithuanian translation (etanetas/chilan)
  - mailing: added link type and node group filters (alec)
  - BTS#0000783: fix LOCK TABLES use in mysql drivers (alec)
  - lmsd: fix last_insert_id in postgresql drivers (alec)

version 1.11.5 Ishkur (2009-01-24):

  - changed Smarty's homepage address to http://www.smarty.net (alec)
  - added Configuration -> States and possibility to search customers
    by country state in Customers/Search and filter them in
    Customers/Reports/Customers List (alec)
  - in short customer nodes list added possibility to change node's
    warning flag and status (alec)
  - in short customer nodes list added online status icon
    with status title (alec)
  - helpdesk: in tickets list added short nodes list popup (alec)
  - helpdesk: in ticket view added requestor's nodes list (alec)
  - trafficdbcompact: fixed warnings appearing where there are nodes without
    stats data (chilan)
  - userpanel: added lost helpdeskreply.html template (alec)
  - lms-sendinvoices: fixed SQL query (alec)
  - customersearch: fixed customer searching while state is unset (chilan)
  - customerwarn: fixed customer marking when we try to set message
    after searching customers (chilan)
  - we can filter tickets after coming to tickets list from welcome
    module (chilan)
  - trafficdbcompact: improved speed of removedeleted option (chilan)
  - added separate access rights for nodes/customers to groups assignment (alec)
  - cashimport: display duplicates as errors (alec)
  - mailing: optimized SQL query, network filter checks public addresses
    also (alec)
  - hosting: ergonomy fixes (chilan)
  - customernodesbox: we remember if nodes box is opened again (chilan)
  - Companies/Divisions (alec)
  - per-division configuration - removed [invoices] options: header, footer,
    cplace, default_author and [finances] option: account (alec)
  - removed finances/iban option, now mass-payments account is generated
    automatic if account is short (8-20 chars) (alec)
  - performance: optimized LMS::GetCustomer calls using its 2nd argument (alec)
  - reload: we can see live output from reload script (Grzegorz Cichowski)
  - divisions: added ten and regon attributes (chilan)
  - rtprint: subject field added (chilan)
  - added posibility of setting paytime for customers individually (chilan)
  - lms-makewarnings: we can check invoice expiration for warned
    customers (chilan)
  - added Slovakian translation (Robin Pavlik)
  - better handling of invoices/receipts/docs printouts with window.open (alec)
  - added support for VoIP accounts (chilan)
  - added country field in customers, divisions and documents (chilan)
  - cashimport: records grouping by division (alec)
  - cashimport: imported records downloading in csv and txt format (alec)
  - userpanel: disable access for deleted customers (alec)
  - rtticketview: we can easily browse through tickets (chilan)
  - css fixes for Opera and Google Chrome (alec)
  - invoices report: added multiple-group filter and division filter (alec)
  - numbering plans per-division(s) (alec)
  - balance sheet: added division filter and transaction type filter (alec)
  - half-yearly assignments/numberplans/payments (Grzegorz Cichowski/alec)
  - BTS#0000777: better and unicode aware function for customers first name
    capitalisation (alec)

version 1.11.4 Telchak (2008-08-07):

  - hosting: removed description column from domains list (alec)
  - hosting: added BCC (blind carbon copy) address in accounts (alec)
  - DB drivers: in postgresql driver added @-operator and changed
    _driver_geterror() and _driver_disconnect() according to other
    drivers (alec)
  - DB drivers: removed server version checking in mysql drivers (alec)
  - DB drivers: don't die when extension isn't loaded, trigger warning
    instead (alec)
  - stop working when database connection errors occured (alec)
  - lmsd/hostfile: fixed skip_dev_ips (alec)
  - BTS#0000734: fixed problem with \r\n on pdf invoices (alec)
  - hosting: auto-select domain when clicking on New account on accounts list
    after domain filter was used (alec)
  - added Actions tab in Customer Info with cutoff suspending and warning
    messages management as separate actions (alec)
  - Balance Sheet: fixed big memory usage problem and increased speed of
    groups filtering (alec)
  - Invoices List: fixed big memory usage problem, increased speed of filtering
    by group and by value (alec)
  - invoicenote: we can change pay type (chilan)
  - lmsd/cutoff: added 'use_customerassignments' option (alec)
  - improved page navigation ergonomy in chooseip window (chilan)
  - added "disable network" functionality in LMSUI and lms-makedhcpconf (chilan)
  - added "trivial" vlan support in lms-makedhcpconf (chilan)
  - lmsd/dhcp: added "trivial" vlan support (alec)
  - tariffs: added possibility to clone tariffs data (alec)
  - don't overwrite invoice's creation time on edit if date wasn't
    changed (alec)
  - invoiceedit: we can copy item content to edit fields clicking mouse
    button (chilan)
  - lms-reminder: use Mail::Sender with smtp auth (alec)
  - removed english manual in one html file (alec)
  - added polish manual in plain text format (alec)
  - lms-mgc: added 'customergroups' and 'excluded_customergroups' options (alec)
  - rtticketview: we can open attachments directly from message list
    in rtticketview (chilan)
  - lmsd/hostfile: added variables %maskpub, %addrpub, %domainpub, %netpub,
    %ifpub, %gwpub, %dns2pub, %dnspub, %winspub (alec)
  - encode mail subject with quoted-printable instead of base64 (alec)
  - lmsd/cutoff: added 'networks' and 'excluded_networks' options (alec)
  - lmsd/hostfile: added %customer and %cid variables (alec)
  - Userpanel integration (alec)
  - optimized performance of customerinfoshort module (alec)
  - in Customer Info added info about last logins to Userpanel (alec)
  - lmsd/hostfile: added %prefix and %prefixpub variables (alec)
  - lmsd/payments: fixed leap year bug in annual payments (alec)
  - lms-payments: fixed leap year bug in annual payments (alec)
  - optimized performance of tariffs list (alec)
  - fixed counting of assignments in tariffs list and info (alec)
  - lmsd/hostfile: added 'share_netdev_pubip' option (alec)
  - optimized CustomerStats() and NodeStats() (alec)
  - in customer data added field for date of consent for data processing (alec)
  - lmsd/hostfile: added 'skip_host_ips' option (alec)
  - userpanel: added box for data processing agreement (alec)
  - added rows count in traffic stats page (alec)
  - customersearchresults: we can add/remove found customers to/from selected
    customergroup (chilan)
  - tarifflist: we can choose customergroup for tariff statistics (chilan)
  - tarifflist: we pay attention to discounts (chilan)
  - we remember all financial operation parameters in balancenew
    and customerinfo (chilan)
  - lmsd/hostfile: added %l, $devl, %dhcps, %dhcpe, %dhcpspub, %dhcpepub (alec)
  - added customer legal personality type: legal entity/private person (alec)
  - added link type and legal personality filters to customers searching
    and printing (alec)
  - added possibility to print customers with specified dokument type
    and creation date (alec)
  - LMS::NetworkCompress(): we check if given ip address is not gateway address
    (Arkadiusz Chomicki/chilan)
  - ... and is not in dhcp range + don't change gateway address (alec)
  - added node's last online time in customer's nodes list (alec)

version 1.11.3 Quetesh (2008-03-26):

  - fixed 'suspended' filter on customers list (alec)
  - added option phpui.printer_window which enables onload="window.print()"
    for html printouts, allowed values: 'invoice', 'receipt', 'report' (alec)
  - fixed problem with one before last address name in chooseip page (alec)
  - polish documentation converted to utf8 (alec)
  - added customer ID in footer of heldesk notifications with enabled option
    phpui.helpdesk_customerinfo (alec)
  - in quicksearch searching ID columns by '=' not LIKE operator (alec)
  - added int2txt() SQL function designed for postgresql 8.3 compatybility, it
    needs int-to-text type casting when using LIKE operator with numeric
    columns (alec)
  - receiptadd: we always show last 10 REALLY not accounted invoices (chilan)
  - invoicenew: we choose last invoice number according to selected month (chilan)
  - we can set incorrect SSN and TEN for customers if we wish it (chilan)
  - hosting: menu Accounts renamed to Hosting (alec)
  - hosting: domain for account is required now (alec)
  - hosting: added possibility to create multi-destination aliases (alec)
  - hosting: on Domains List added assigned accounts number (alec)
  - hosting: improved interface, added info, delete links (alec)
  - hosting: added domain/account/alias info pages (alec)
  - hosting: mail forwarding to external accounts (alec)
  - hosting: added accounts descriptions (alec)
  - hosting: account's password change moved to separate module (alec)
  - hosting: define no quota limit as NULL in database (alec)
  - tariffs: added hosting limits definitions (alec)
  - tariffs: increased max rate limit to 100000 (alec)
  - hosting: added aliases list in account info (alec)
  - hosting: allow only lowercase in logins/domains (alec)
  - fixed download and upload units - we use SI units from now (chilan)
  - optimized compacting traffic data (chilan)
  - invoices: added filtering by month on the list (Łukasz Rostalski/alec)
  - lmsd/hostfile: added 'excluded_networks', 'excluded_customergroups' and
    'excluded_nodegroups' options (alec)
  - helpdesk: fixed sorting by requestor on requests list (alec)
  - helpdesk: improved query speed in requests search (alec)
  - helpdesk: fixed jump from quicksearch to requests searching module (alec)
  - hosting: added accounts searching module and quicksearch input (alec)
  - lmsd/ewx-stm: added 'excluded_networks' option (alec)
  - helpdesk: added delete and print links on tickets searching results
    list (alec)
  - hosting: added aliases and domains searching modules (alec)
  - optimized not closed invoices list by documents.closed index addition (alec)
  - lmsd/ewx-stm: added new options 'excluded_dummy_ip_networks' and
    'excluded_dummy_mac_networks', options 'dummy_mac_networks',
    'dummy_ip_networks' can contains asterisk for all networks selection (alec)
  - removed contrib/bin/lms-sendinvoices.diff as we're using Mail::Sender with
    smtp auth in lms-sendinvoices (alec)

version 1.11.2 Neera (2008-01-23):

  - added possibility to disable customers cutting off for some time (alec)
  - lmsd/cutoff: added 'customergroups' & 'excluded_customergroups' opts (alec)
  - lmsd/cutoff: added not payed invoices checking with 'check_invoices'
    and 'deadline' options (alec)
  - BTS#0000704: lmsd/ewx-stm: fixed problem with mac checking and
    dummy_mac_networks option, optimized sql query (alec)
  - lmsd: when used with -q option crontab instances are skipped (alec)
  - lmsd/hostfile: better customergroups option handling (alec)
  - lmsd/hostfile: added options 'warn', 'warn_pub', 'warn_replace' for
    warning flag support, 'public_replace' for better public IPs
    handling and 'host_begin', 'host_end' for usability (alec)
  - cash receipts: added 'show_nodes_warning' and 'nodes_warning' in
    receipts section (alec)
  - rtmessageadd: fixed php_ui/debug_email empty value checking (chilan)
  - invoices: added option invoices/print_balance_history_save (alec)
  - receipts: positions adding with double click protection (alec)
  - lmsd configuration: instances cloning (alec)
  - perl backend: excluded_networks parameter added (chilan)
  - added phpui/custom_menu option with possibility to add user-defined items
    and/or subitems to LMS menu (alec)
  - in IP choosing box page with the first not assigned address is displayed
    by default, optimized (alec)
  - nodes groups (alec)
  - few improvements in customer groups (alec)
  - nodelist: we can filter nodes by node groups (chilan)
  - added searching customers and printing customers list by nodes group (alec)
  - lmsd/hostfile: added 'nodegroups' option (alec)
  - lmsd/cutoff: added 'setnodegroup_only' option (alec)
  - nodegroups: added prio field - we are be able to set nodegroups
    order (chilan)
  - mac sort moved from GetMACs() to choosemac dialog (sorting local mac
    adresses with mac adresses received from arpd servers) (Mad Mark)
  - improved status/warning setting and group assigning in customer's nodes
    list - checkbox selection (alec)
  - added nodes groups list popups in customer's nodes list (alec)
  - added possibility to move members of one group to other group (alec)
  - lmsd/cutoff: fixed query for customers without tariffs (alec)
  - lmsd/cutoff: balance limit can be set as percentage value of sum of monthly
    assignments (alec)
  - nodegrouplist: improved nodegroups UI movement ergonomy (chilan)
  - lms-sendinvoice: added smtp authorization, sending mail with Mail::Sender,
    added 'smtp_host', 'smtp_user', 'smtp_pass', 'smtp_auth' options (alec)
  - lms-notify: added smtp authorization, sending mail with Mail::Sender,
    removed option 'mailcharset' and 'smtp_server', added 'smtp_host',
    'smtp_user', 'smtp_pass', 'smtp_auth' options (alec)
  - added phpui.default_assignment_period (chilan)
  - added options 'show_nodegroups_warning' and 'nodegroups_warning' in
    [receipts] section (alec)
  - lmsd/cutoff: added 'disable_suspended' option (alec)
  - lmsd/dhcp: added broadcast address (%b) variable in 'subnet_start'
    option (alec)
  - added improved traffic control module lmsd/tc-new (alec)
  - network devices: few functions optimized (alec)
  - network devices: added port numbers for links (alec)
  - network devices: redesigned device's info/edit pages with
    show'n'hide boxes (alec)
  - network devices: show both (private and public) addresses in connected
    nodes box (alec)
  - lms-rtparser: BTS#0000719: fixed problem with string escaping (alec)
  - lms-rtparser: use Mail::Sender (with authentication) instead of
    Net::SMTP, added options 'smtp_host', 'smtp_auth', 'smtp_user',
    'smtp_pass' (alec)
  - lmsd/tc-ng moved to contrib as deprecated (alec)
  - lms-notify-sms: fixed sql query on mysql (alec)
  - lmsd/parser: added 'port' field in NODES constant (alec)
  - lmsd/hostfile: added %port variable (alec)
  - lms-mgc: added %PORT variable in nodes rules (alec)
  - added SQL functions mask2prefix() and broadcast() (alec)
  - added IMMUTABLE flag for inet_ntoa/inet_aton functions on postgres (alec)
  - networks: few functions optimized (alec)
  - documents: hide exluded customers groups on documents list (alec)

version 1.11.1 Talus (2007-12-03):

  - added link to customerinfo in title of assignments edition page (alec)
  - fixes in config reload, now at least one host is required (alec)
  - added mb_internal_encoding('UTF-8') call, so we can now use PHP's
    option mbstring.func_overload = 7, added info about mbstring
    extension requirement and recommended settings in documentation (alec)
  - contrib/formularz_przelewu_wplaty: fixed css vulnerability, also
    configuration is readed from database and can be set in UI (alec)
  - excluded groups: don't show excluded groups on filters (alec)
  - excluded groups: works in modules from menu Finances (alec)
  - in Finances -> Raports -> Transfer forms balance value can be entered
    with . or , sign (alec)
  - invoices list: fixed sorting by items count (alec)
  - fixed SQL query in Mailing (alec)
  - pdf invoices: added page numbers, invoices can have many positions -
    added page breaking, using ezpdf tables (alec)
  - lmsd/payments: added options 'networks', 'customergroups',
    'numberplan' (alec)
  - added numbering plan filter to Sale Registry report (alec)
  - added customer groups filter to Cash Report (alec)
  - added customer groups filter to Finances/Reports/Transfer Forms (alec)
  - added customer groups and numberng plan filter to
    Finances/Reports/Invoices  (alec)
  - helpdesk: fixed attachments removing when deleting tickets and
    messages (alec)
  - new invoice settlement date checking takes numbering plan into
    consideration (alec)
  - fix: customers assignments addition and edition moved from
    "customers management" privilege to "finances management" (alec)
  - in config_defaults.ini added all options described in
    configlist.php (alec)
  - BTS#0000690: documents viewing allowed in 'customers management'
    access right (alec)
  - fixed problem when option allow_from is set but is empty (alec)
  - boolean options can contains 'enabled' and 'disabled' values (alec)
  - fix: GetMACs() and GetRemoteMACs() returns array (alec)
  - lmsd/tc, lmsd/tc-ng: added %o1, %o2, %o3, %o4 variables (alec)
  - LMS-UI uses unix socket connection to postgres when host=localhost (alec)
  - lms-sendinvoices: added smtp_host option and errors printing for
    problems with http or smtp connection (alec)
  - increased node/IP name length limit to 32 characters (alec)
  - added section filter on UI Configuration (alec)
  - fixed name of to_words_short_version option in documentation (alec)
  - added user's position field (alec)
  - optimized Invoices List sql query (25% faster) (alec)
  - Cash Import: added support for many import patterns, added 'use_line_hash',
    'pid_regexp', pinvoice_month' and 'comment_replace' pattern parameters,
    added not matching lines printing (alec)
  - lms-traffic-htbiptlimits: fixed tc class identifiers (alec)
  - lmsd/payments: fixed 'customergroups' and 'networks' option, added options
    'excluded_customergroups' and 'excluded_networks' (alec)
  - Network Devices: added purchase date and guarantee period fields (endrju/alec)
  - lmsd/traffic: added 'begin_command' and 'end_command' options (siradams)
  - lmsd/tc: added 'limit_per_host' option (siradams)
  - fixed problem with ajax plugins in Opera (alec)
  - invoices: improved tariff selection when adding/editing invoices (alec)
  - invoices: added link Save in invoice(note) edit/add forms (alec)
  - invoices: added possibility to select original/copy/duplicate when
    creating/editing an invoice(note) with Save & Print (alec)
  - invoices: after invoice addition/edition redirecting to invoices list
    or to empty new invoice form (alec)
  - helpdesk: added info about ticket creator in ticket info (alec)
  - BTS#0000705: lmsd/dhcp: fixed default value of 'subnet_domain' option (alec)
  - fix: allow searching strings with '/' sign in quicksearch (alec)
  - timetable: added info about event creator in event info and list (alec)
  - helpdesk: added owner filter on tickets list + list query speedup (alec)
  - helpdesk: added info popup on tickets list (alec)
  - BTS#0000706: fixed query in Finances/Reports/Network Balance Sheet (alec)
  - added option invoices/default_printpage (alec)
  - improved GetNumberPlans() function (alec)
  - removed unused GetNumberPlans() function calls in cash receipts
    interface (alec)
  - increased speed of customer searching with choosecustomer.php (alec)
  - added tariffs list sorting (alec)
  - added tariffs types: hosting, internet, service, other (alec)
  - lmsd/tc-ng: optimized sql query (alec)
  - lmsd/pinger: added option 'use_secure_function' - postgres only (alec)
  - lmsd/pinger: making one big query instead of one for each host (alec)
  - lmsd: fixed db_exec() function in postgresql's drivers, now is possible to
    use that function for select queries without results (alec)
  - optimized node edition (alec)
  - deleting node-to-tariff assignment when owner is changing (alec)
  - custom_accesstable file can be anywhere - requires absolute path (alec)

version 1.11.0 Thoth (2007-08-17):

  - common pdf functions and initialization moved to lib/pdf.php (alec)
  - lms-reminder: BTS#0000670 - fixed query (alec)
  - Excluded groups - possibility to disable user access to specified
    customers groups (alec)
    *****************************************************************
  - PostgreSQL 8.1 is required now (alec)
	!!!! postgresql.conf: custom_variable_classes = 'lms'
    *****************************************************************
  - cash import: when customer is known don't show selection field,
    added $modvalue configuration variable, code cleanup, transactions
    support (alec)
  - when customer wasn't found in quick customer search do redirect to
    customer search module with filled zip and city fields  (alec)
  - fixed few problems with apostrophe sign in tariffs names (alec)
  - optimized query speed of cash registries list (alec)
  - access rights: added 'customers group management' privilage (alec)
  - lmsd/payments: added %month and %year variables for comment (alec)
  - cash receipts: BTS#0000673 - cash receipts of type 'other' and
    'advance' included in balance sheet (alec)
  - customers list: fixed sorting by balance when balance is NULL
    (customers without cash operations) (alec)
  - added transactions for deleting (customer, node, etc.)
    operations (alec)
  - tariffs: fixed data limit feature (alec)

version 1.9.8 Idos (2007-07-12):

  - changed DB driver version format (alec)
  - lmsd: added %i16 variable for IP's last octet heximal representation
    in tc/tc-ng and %i16 and %i16pub in hostfile module (alec)
  - mysql driver: server version checking only when connected (alec)
  - fixed problem when invoicing without tax rates defined (alec)
  - renamed tariffdelete.php to tariffdel.php according to modules naming
    convention (alec)
  - helpdesk: added 'include contact info' checkbox for requests list
    printing (alec)
  - lms-traffic-logiptables: iptables 1.3.7 support (alec)
  - mac fields should accept now every mac format, including windows, cisco,
    etc (lukasz)
  - %CMAC macro in lms-mgc returns cisco format address: nnnn.nnnn.nnnn (lukasz)
  - network map: rised limit of nodes connected to one device (alec)
  - network map: increased limit of devices connected to one device (alec)
  - network map: devices connection lines are not overlaps (alec)
  - network map: fixed thick line look, better map generation speed (alec)
  - network map: view without nodes (alec)
  - network devices: fixed devices list sorting by used ports count (alec)
  - network devices: added search engine (alec)
  - let liabilities values be less than zero (chilek)
  - lmsd/ggnotify: fixed query (alec)
  - added reason field to invoice notes (chilek)
  - helpdesk: ticket's status change when adding note (alec)
  - searching by any part of node name in quicksearch (alec)
  - Xajax 0.2.5 (alec)
  - fixed balance sheet printing with use of network filter (alec)
  - nodes searching by MAC address in many formats eg. XXXXXXXXXXXX,
    XX-XX-XX-XX-XX-XX, XXXX.XXXX.XXXX or native LMS format with colon (alec)
  - removed unused SetTS() calls and table 'timestamps' (alec)
  - fixed problem with 'events' table's sequence on postgres (alec)
  - added month and year selection fields on Timetable (alec)
  - stats: database compacting with cron eg.: links -dump
    "http://lms/?m=trafficdbcompact&level=low&removeold=1&removedeleted=1
    &loginform[login]=login&loginform[pwd]=pass&override=1" (alec)
  - PIN code field cannot be empty now (alec)
  - added possibility to search customers by additional information (alec)
  - added 'payments book' type of documents (alec)
  - less memory consumption of Balance Sheet (alec)
  - added todate and fromdate indexes in 'documentcontents' table (alec)
  - documents list opens on last page by default (alec)
  - lmsd/cutoff: added option 'use_nodeassignments' for disabling nodes
    without tariff assignments (alec)
  - added 'mysqli' database driver (alec)
  - Customer Info: added descriptions for contact phones, not limited number of
    phones for each customer, now numbers are stored in 'customercontacts'
    table (alec)
  - lmsd/parser: removed phone1, phone2, phone3 subvariables of
    CUSTOMERS constant (alec)
  - lms-notify: removed %phone variable (alec)
  - lms-notify-sms: removed %phone variable (alec)

version 1.9.7 Thalan (2007-05-09):

  - cash receipts: added target 'advance' (alec)
  - cash receipts: changed registry privilages system (alec)
  - cash receipts: added 'Save' link - saving receipts without printing (alec)
  - choosecustomer: removed not needed WHERE conditions in customer
    select window, rewrited query for MySQL 5.0, now is 20-100 times faster (alec)
  - we can move customers from one tariff to another filtering it by network (chilek)
  - optimized Customers List generation time when using filters (alec)
  - optimized Devices List generation time (alec)
  - helpdesk: changed queues privilages system (alec)
  - helpdesk: some one-time functions from LMS class moved to modules (alec)
  - helpdesk: added notes to tickets (alec)
  - helpdesk: new note/message e-mail notification on demand (alec)
  - helpdesk: simplified tickets resolving - now is possible to resolve tickets
    with cause setting while new message/note addition (alec)
  - helpdesk: added customer info in ticket view (alec)
  - helpdesk: added option 'helpdesk_customerinfo' (alec)
  - helpdesk: sending notifications when ticket's queue has changed and option
    'newticket_notify' is set (alec)
  - lms-payments, lmsd/payments: fixed problem with discounts invoicing (alec)
  - traffic filter: we can filtering stats by customer (chilek)
  - added index customerid on table documents (alec)
  - fixed encoding of subjects in mail sent from LMS-UI (alec)
  - fixed 'big_networks' option testing (alec)
  - now we can set message for customers listed in Customer Search Results
    list (alec)
  - mailing: added 'not in debt' customers filter (alec)
  - helpdesk: added option 'ticket_template_file' (alec)
  - helpdesk: added customer information box in New Ticket page after customer
    selection and form submit (alec)
  - lms-rtparser: added option 'include_customerinfo' (alec)
  - lmsd/cutoff: added option 'expired_warning', used to set message to customer
    when disabling his computers access due to all assignments expiration (alec)
  - added group and network filters for Network Balance Sheet report (alec)
  - added 'suspended', 'without tariff' and 'without group' status filters on
    Customers List and Customers Search (alec)
  - lmsd/ewx-pt: EtherWerX PPPoE Terminator configurator (alec)
  - lmsd/ewx-stm: EtherWerX Standalone Traffic Manager configurator (alec)
  - helpdesk: added option phpui/ticketlist_status (alec)
  - lmsd/tc: rounded values / removed decimal digits (alec)
  - added 'New Document' link on main documents list (alec)
  - helpdesk: added customer's address on tickets list (alec)
  - lms-makeiptables: added DNAT rules for public IPs (alec)
  - fixed some remote file inclusion vulnerabilities when register_globals
    is enabled (alec)
  - cash registry: added cash history for information about periodic
    cash summary state e.g. daily cash state (alec)
  - added .htaccess files in /lib and /modules dirs (alec)
  - Romanian language support (zet/alec)
  - added notifications about availability of LMS's newer versions (alec)
  - added possibility to remove selected documents on documents list (zet/alec)
  - many Internet Messengers (GG, Skype, Yahoo) in customer's data (zet/alec)
  - fixed customers searching by address in quick search module (alec)
  - fixed %UID4 in cash documents export (alec)
  - cash receipts: BTS#0000651: better credit notes treating in list of
    not accounted invoices (alec)
  - node link type can be set while node addition and edition (alec)
  - helpdesk: added queue filter on Requests List (chilek/alec)
  - added 'documents' table locking when creating an invoice or receipt (alec)
  - lmsd: added option --ssl (-s): database connection with SSL (alec)

version 1.9.6 Belos (2007-02-16):

  - project's homepage changed to www.lms.org.pl (lukasz)
  - now is possible to define password for device's IP (alec)
  - added nodes list (and report) filtering by customer's group (alec)
  - cash receipts: added document's positions clearing when customer
    is changing (alec)
  - lms-traffic-logiptables: added 'networks' option (alec)
  - BTS#0000625: one-address DHCP ranges allowed (alec)
  - lmsd: don't save config.status when using configure script
    with option --help (alec)
  - BTS#0000603: lmsd: instance names with spaces works with -i option (alec)
  - BTS#0000594: clickable gateway record when selecting IP for network
    device's IP (alec)
  - cash receipts: 'other' target name is required now (alec)
  - cash receipts: all not accounted invoices are checked by default (alec)
  - customergroups: filter by networks feature added (chilek)

version 1.9.5 Tagar (2007-02-05):

  - traffic stats: saving chosen network in session (chilek)
  - rtticketedit: fixed regression connected with undefined customerid (chilek)
    **********************************************************************************
  - increased requirements to MySQL 5.0.7 (alec)
  - removed support for non-unicode encoding by option database/server_encoding (alec)
  - added mysql's "SET NAMES utf8" in scripts and daemon (alec)
    **********************************************************************************
  - fixed warning setting in customer searching results list (alec)
  - balanceadd: fixed incorrect datetime checking - we let datetime to be
    only date, but we have to append the time in this situation (chilek)
  - new configuration option default_monthly_payday - a day of payment for new assignments
    (chilek)
  - lms-rtparser: fixed comparison bug connected with charset encoding (chilek)
  - lms-rtparser: unescaping \n sequence in autoreply_body (chilek)
  - changed configuration file path in index.php of php-ui to be more readable
    for unskilled users - putted code that scans for lms.ini few lines below
    'do-not-change' warning and added support for /etc/lms/lms-httpvhost.ini
    (lukasz)
  - boosted download of database backup files. We don't need viewer in LMS, because
    it's USELESS (chilek)
  - added indexes on nodes.ownerid and nodes.ipaddr_pub (alec)
  - added confirm message for last operation deleting in New Operation page (alec)
  - added --lmslibdir and --lmsbindir .configure script's options (alec/Libor)
  - fixed customers list filtering (alec)
  - common.js: fixed syntax error in openWindow function (chilek/grzes)
  - traffic.php: missed translatable 'unknown' string for node (chilek)
  - added workaround for ILIKE's unicode bug (postgresql < 8.2) in invoices list
    searching by customer's name and address (alec)
  - nowadays max. bandwidth 4096kbit/s for customer is not so excellent, so
    bandwidth limit has been increased to 10000kbit/s aka 10Mbit/s (chilek)
  - added 'big_networks' support in Reports forms (alec)
  - added customers searching by notes (alec)
  - added 'Half duplex' field in node's data (alec)
  - added 'Data limit' field in tariff's data (alec)
  - function GetMACs() returns only valid addresses (alec)
  - balanceadd: fixed saved value in db while type is liability (chilek)
  - customerinfo: "All invoices" link added (chilek)
  - added option phpui/use_invoices (alec)

version 1.9.4 Mot (2006-12-30):

  - fixed upgrade scripts for PostgreSQL versions that do not support
    "ALTER TABLE ... ADD ... NOT NULL DEFAULT ...": 2006061200, 2006082300,
    2006081000 (alec)
  - added document type "customer sheet" and "contract termination" (alec)
  - BTS#0000599: patched xajax library for using it with other ajaxized stuff (alec)
  - in documents creation numbering plans are binded with document types (alec)
  - added Notes field in customer's data (alec)
  - BTS#0000602: don't hide disposable liabilities for current day (alec)
  - printing customer's groups in new/edit cash receipt form (alec)
  - now we can display to cashier warnings about unconfirmed documents and
    customer's notes with [receipts] options 'show_notes' and
    'show_documents_warning' (alec)
  - fixed helpdesk tickets searching (alec)
  - added 'MAC checking' checkbox in nodes and device's IPs data (alec)
  - in new receipt interface on covenants list printing also credit notes (alec)
  - added option 'big_networks' for hidding some big ISP's specific stuff like
    e.g. long selection dropdowns (alec)
  - big_networks support in forms: helpdesk ticket new/edit, document add,
    invoice new/edit, cash receipts add/edit (alec)
  - added public IP searching in node's quicksearch (alec)
  - quick search fields moved to the top of the page (alec)
  - fixed nodes searching with 'OR' operator (alec)
  - printing page generation time (alec)
  - EtherWerX support: added option phpui/ewx_support, node's ID should be less
    than 99999 (alec)
  - lms-cutoff: added %b and %B variables in message (alec)
  - added helpdesk request's cause field (alec)
  - added option 'short_pagescroller' for lists with many pages (alec)
  - added indexes: rttickets.createtime and rttickets.customerid (alec)
  - added helpdesk requests causes stats - helpdesk_stats option (alec)
  - menus Printing renamed to Reports (alec)
  - added Helpdesk -> Reports -> List of Requests and Requests Stats (alec)
  - recovered Delete button in customer's balance list: option
    phpui/delete_link_in_customerbalancebox (alec)
  - added daemon's tc-ng module supporting node-to-tariff assignments (alec)
  - added possibility to create invoices for past invoiceless liabilities (alec)
  - lms-traffic: stats summarization for multiple records with the same ip address (chilek)
  - traffic account units: 1kbit/s = 1000bit/s (according to SI units) (chilek)
  - little change in css style - added pointer as cursor class to showOrHide
    table cells and rows (lukasz)

version 1.9.3 Zarin (2006-09-19):

  - cosmetics on search templates (djrzulf)
  - added reload status on hosts list in Reload (alec)
  - BTS#0000582: fixed query in Net Edit (alec)
  - lmsd/parser: fixed T-Script's problem with big numbers (alec)
  - lmsd/parser: support for multiple +, -, *, / operators in expression (alec)
  - added shortcut icon definition in page header (alec)
  - added Business Registration Number (polish REGON), Identity Card Number
    (polish dow.os.) and Register of Business Entities Number (polish EDG/KRS)
    fields in customer data (alec)
  - accounts must have unique logins in domain context only (alec)
  - added Location field in computer data (alec)
  - added menu Documents (alec)
  - fixed problem with 'To' date on Cash Report (alec)
  - fixed Sale Registry sorting order (alec)
  - document templates plugins (using XAJAX library) (alec)
  - added numbering plan selection for Sale Registry printout (alec)
  - BTS#0000586: fixed summary on Customers List when using some filters (alec)
  - BTS#0000589: fixed customers searching by create/delete dates (alec)
  - nodes with tariffs assignments - UI only (alec)
  - increased performance: using LAST_INSERT_ID/CURRVAL functions instead of
    e.g. SELECT MAX(id) after insert (alec)
  - BTS#0000467 lms-arping: setting lastonline time after scanning, not at
    the end of script execution (alec)
  - added %cid variable in lms-notify and lms-notify-sms (alec)
  - BTS#0000591: fixed problems with octet-format mask in IP checking
    procedures for 'allow_from' option and users authorization (alec)
  - improved getnetaddr(), and getbraddr() functions (alec)
  - added Sale Registry in "extended" format (alec)
  - added Cash Report in "extended" format (alec)
  - fixed date of financial transaction added on Customer's Balance (alec)
  - all nodes and devices can share '00:00:00:00:00:00' MAC address even
    with disabled 'allow_mac_sharing' option (alec)
  - awaiting customers can have nodes (alec)
  - Smarty integration: LMS's smarty addons rewrited to plugins in
    lib/Smarty/plugins, removed option 'smarty_dir', now Smarty will be included
    in LMS packages (alec)
    ************ WARNING: remove contents of templates_c directory! ************
  - added 'post-action' in document templates (alec)
  - hidding/showing customer's expired liabilities on the list (alec)
  - $nodedata -> $nodeedit in nodeedit.php (chilek)
  - add probably most (if not all) missing $dbq->finish() in perl scripts
    (Andy/lukasz/alec)
  - design changes in customers and nodes information windows (alec)

version 1.9.2 Thanos (2006-07-15):

  - added possibility to read customer's own iban bank account number from
    ui (lexx)
  - added 'set names utf8;' for connection to mysql >= 5.0 (lexx)
  - added input field for cust. ID on New Cash Document (alec)
  - lmsd/tc: added %if variable for host_mark_up, host_mark_down,
    host_htb_up, host_htb_down options (alec/Tomasz Przybysz)
  - fixed timetable searching by user (alec)
  - lms-payments: added option 'customergroups' and replacement
    variables %current_period, %next_period for 'comment' option (alec)
  - lms-makedhcpconf: added option 'authoritative' (ReYu)
  - BTS#0000530: added lost assignments.settlement column in database creation
    scripts (alec)
  - fixed value of avg upload in stats on Node Info (alec)
  - fixed summaries on customer liabilities list (alec)
  - BTS#0000544: lmsd/payments: fixed date calculations (alec)
  - included credit notes in Finances -> Print -> Invoices (alec)
  - fixed database dump recovering, specially for daemon configuration,
    also increased max line size to 8192 bytes (alec)
  - setting last reload time for reloads of type 'exec' (alec)
  - BTS#0000547: fixed items count on invoice note when invoice position
    is deleted (alec)
  - fixed customer selection in invoices and receipts (alec)
  - added possibility to enable/disable warnings for found customers (chilek)
  - added option phpui/helpdesk_reply_body (alec)
  - lmsd: fixed configuration parser, orphaned backslashes are not removed (alec)
  - while editing/adding value of lmsd's configuration option 'script' it's
    possible to use Tab key for script's code identation (alec)
  - updated t-script library - 0.7.0 (alec):
    special characters (\\, \", \r, \n, \t) in string literals
    escaping brackets in plain text using backslashes (\{, \})
    ignoring tabs at the beginning of text lines - allowing indents
    len command in string extension
  - modularity: added example modules 'traffic', 'users' and 'auth' with use of plaugins
    and new access rights management method, core consist only core actions, added 'init', 'end'
    and 'install' core actions, and many other changes (alec)
  - added index on column 'dt' in table 'stats' - only in database structure
    initialization scripts (alec)
  - don't "blend" customers without nodes on Customers List (alec)
  - added 'New Account' link with current customer id on Accounts List (alec)
  - little fix in chkconfig() for unset variables (alec)
  - fixed mac checking in Node Edit (alec)
  - fixed access status saving in Node Add (alec)
  - added accounts of type 'sql' (alec)
  - domain can have an owner (alec)
  - lms-sendinvoices: added 'customergroups' option (alec)
  - added Documents Generator for serial documents creation (alec)
  - BTS#0000576: fixed problem with MAC change (alec)
  - BTS#0000569: saved owner context when adding nodes with reuse
    checkbox (alec)

version 1.9.1 Jumar (2006-02-13):

  - BTS#0000488: fixed title on nodes list printout (alec)
  - BTS#0000487: fixed printing from Invoices List (alec)
  - BTS#0000486: added duplicate and fixed invoices printing in
    Finance -> Print -> Invoices (alec)
  - added submit button in genfake interface (alec)
  - fixed solid payments accounting (alec)
  - fixed Liabilities Report: disposable and tariffless liabilities
    support, suspension and discount support, fixed sorting by value (alec)
  - fixes in reload when using reload_execcmd and reload_sqlquery with
    hosts (alec)
  - bugfix in perl scripts for 64-bit architectures (Jarek Dziubek)
  - BTS#0000495: fixed "Invalid argument..." error in liability report (alec)
  - fixed Cash Receipt List filtering by value (alec)
  - fixed error triggers in netadd and netedit (alec)
  - fixed network size checking in network edition (alec)
  - fixed warning in NetworkCompress() function (alec)
  - Cash Registry: registries management, user per-registry access rights,
    cash-in/cash-out receipts (alec)
  - customer documents edition and confirmation (alec)
  - added document type 'order' (alec)
  - added customers searching by creation or deletion dates (alec)
  - fixed credit notes printing from customer balance box (alec)
  - lms-rtparser: added support for multipart/alternative messages, fixed
    problem with attachements with spaces and unknown/forbidden characters
    in filename (alec)
  - cash documents extended numbering (alec)
  - changed look of balance lists: columns Liability, Income, Expense (alec)
  - automatic first deficient period settlement (alec)
  - added option phpui/default_module (alec)
  - added '//TRANSLIT' for iconv() conversions in pdf invoice (alec)
  - fixed dynamic popups width resizing in Firefox (alec)
  - added real expositor name printing on invoices (alec)
  - added filter on Operations History (Balance Sheet) (alec)
  - deleted link 'Remove' on customer balance box (alec)
  - added continuous numbering plan (alec)
  - lmsd: fixed gcc-4 signedness warnings (alec)
  - added reduction/enhancement summary on credit notes (alec)
  - in customernodesbox added link to node's network (alec)
  - using 4th argument of Smarty's truncate function (alec)
  - changed/improved financial documents settlement for multiuser
    environment (alec)
  - automatic columns width setting on pdf invoices (alec)
  - new customers searching popup form in cash receipts and
    invoices interface (alec)
  - new method of selected customer representation in invoices
    and cash receipts interface (alec)
  - new method of discounts presentation on invoice (alec)
  - lmsd/hostfile: fixed few network replacement variables (alec)
  - helpdesk: fixed rights checking while deleting tickets (alec)
  - added Finances -> Export / financial data export to external systems
    in text files (e.g. csv) format (alec)
  - lmsd/hostfile: fixed networks option parsing (alec)
  - using fsockopen() instead of fopen() for url opening (alec)

version 1.9.0 Tilgath (2005-12-07):

  - BTS#0000216: now user with 'customers management' or 'nodes management'
    access don't need 'read only' access right (alec)
  - contrib/lms-debtors: added MySQL support (alec)
  - fixed traffic stats values in node information (alec)
  - added link to customer stats in customer info page (alec)
  - BTS#0000471: fixed 'Tickets' link in customerinfo box (alec)
  - fixed summary on customer search results list (alec)
  - lmsd/parser: multiple logical expressions ("a && b && c" etc.)
    supported, multiple instructions in one block supported - using
    semicolon (alec)
  - few fixes for very long customer names on pdf invoices and UI (alec)
  - fixed NetworkRemap() function when destination network is empty (alec)
  - changed link on nodes list in network info to node info instead of
    customerinfo (alec)
  - don't compress network when changing network address, user must
    do commpression by himself (alec)
  - standardised sorting of transfer forms and invoices printouts (alec)
  - BTS#0000481: fixed translation on transfer forms (alec)
  - invoices list display speed optimized (alec)
  - example invoices/cash records generation in genfake module (alec)
  - removed upgrade scripts for v.1.2 (alec)
  - lmsd/parser: tscript library - fixed problem with nested blocks (alec)
  - added sorting of networks list in 'Select IP address' window (alec)
  - fixed 'Check All' on Balance Sheet (alec)
  - added invoice duplicates printing (alec)
  - fixed customer balance list sorting on invoice (alec)
  - added default value of 'print_balance_history_limit' option (alec)
  - lmsd/parser: updated tscript library: fixed types conversion,
    added "exit" and "foreach" instructions (alec)
  - fix: do customers accounting (with "Account" link) at "Has" side (alec)
  - lmsd/parser: added "syslog" extension (alec)

version 1.7.6 Grannus (2005-11-10):

  - disposable liabilities (alec)
  - introduction to UI modularity (lukasz)
  - use HTTP_X_FORWARDED_FOR, HTTP_CLIENT_IP, REMOTE_ADDR to retrive
    user IP address (Jerzy Kolosowski)
  - added Finance -> Printing -> Transfer forms (alec)
  - fixed problem with access rights to transferforms modules (alec)
  - added iconv conversion on transferforms (alec)
  - assigning customer to ticket in ticket edition (alec)
  - little layout fix for userbalance (lukasz)

version 1.7.5 Shaq-ran <broken version> (2005-11-05):

  - BTS#0000466: lms-antyvir: fixed parse error (alec)
  - BTS#0000373: lms-notify: added exception handler for mail server
    connection problems (alec)
  - changed stats units to kbps (alec)
  - added traffic stats in node information window (alec)
  - fixed/changed access rights for printing modules (alec)

version 1.7.4 Wraith (2005-10-31):

  - BTS#0000451: lms-rtparser uses also CC: header to get queue ID (alec)
  - BTS#0000455: documentation fixed options names
    usergroups -> customergroups (alec)
  - lmsd/dhcp: fixed problem with hosts with public IP (alec)
  - lmsd/parser: updated tscript library - added "break" and "continue"
    instructions in "for" and "while" loops (alec)
  - added "type" in cash table to handle some operation types
    (cash, non-cash) - it fixes network balance calculations for
    backward compatybility and lost in 2005092900 database upgrade
    additional functionality (alec)
  - contrib/sqlpanel: design fixes (alec)
  - forms can be submitted by Enter (lukas)
  - BTS#0000460: fixed "call to a member function ..." in mailing.php (alec)
  - fixed item's name escaping and 'cash' value on credit notes (alec)
  - propably fixed neverending story about bugs with MySQL and polish
    characters and UTF-8. Added info in documentation how to create
    database with polish collation and utf8 character set (alec)
  - added last 10 not accounted invoices list in cash receipt addition
    form (alec)
  - lmsd: added option --reload-all (alec)
  - BTS#0000391: lmsd: fixed problem with long executed (sleeping)
    instances (alec)
  - added tip with IP address on nodes list in network info page (alec)

version 1.7.3 Inubis (2005-10-05):

  - contrib/customer: removed directories checking (alec)
  - changed access right definition for LMS configuration (alec)
  - security bugfix: plain text passwords aren't stored in session (alec)
  - security bugfix: session is excluded from database backup (alec)
  - **********************************************************************
    finances revolution: removed prepayments, unpaid covenants,
    any cash references and related features,
    invoices can't be paid, but only can be checked as accounted
    added filter 'hide accounted' on Invoices List (alec)
    **********************************************************************
  - fixed round-off method on Invoices Report (alec)
  - daemon configuration moved to menu Configuration (alec)
  - changed table name 'daemonhosts' to 'hosts' (alec)
  - lmsd/parser: changed tscript's API, added extensions: deletefile,
    readfile, getfile, listdir, fileexists, date, replace, systype (alec)
  - Credit Notes - WARNING! Invoice templates has been changed (alec)
  - Cygwin support for lmsd (lexx)
  - lmsd/dhcp,ethers,hostfile: fixes for sparc64 architecture (alec)
  - documentation: added pure-ftpd and accounts how-to (bart)
  - added public IP support in 'network' filter on Customers List (alec)
  - customer documents generation engine/wizards (alec)
  - removed option 'contract_template' (alec)
  - improved default document (contract) template (alec)
  - Userpanel menu instead of Configuration -> Userpanel (Mad Mark)
  - added cashier name variable {$receipt.user} on cash receipt template (alec)
  - lmsd/dhcp: added support for public IP addresses (alec)
  - in Customer Documents displaying last 10 documents with link to
    all documents list (alec)
  - lmsd/parser: added 'explode' extension, updated T-Script library (alec)
  - removed SQLite support (alec)
  - lmsd: fixed make usage for non-linux systems (alec)
  - documentation: added info that on mysql 'drop' privilege is required (alec)
  - fixed bug in 2005052300 autoupgrade script (alec)
  - lmsd: fixed environment variables startup reading (alec)
  - lmsd: fixed problem with long execution time when using constants (alec)
  - lmsd: added while() and operators <<, >> and leftside --, ++ (alec)
  - ***********************************************************************
    finances revolution: droped 'type' column from 'cash' table, now we're
    using signed values, redesigned balance lists: using signed values instead
    of type (alec)
    ***********************************************************************
  - on New Operation added last operation info with [Delete] link (alec)
  - BTS#0000450: fixed %DNS2 in lms-mgc (alec)
  - cash receipts in pdf (alec)
  - added public address for network devices IPs (alec)
  - added customer's traffic raport - Stats -> Printing (alec)
  - BTS#0000453: lms-payments fixed problem with discount (alec)
  - BTS#0000453: lmsd/payments: fixed problem with discount and itemid (alec)

version 1.7.2 Doci (2005-08-13):

  - in Mailing added replacement variables (alec)
  - in Nodes List added network and status filtering (alec)
  - in Nodes -> Print added network filter (alec)
  - in Balance Sheet and Customer Balance added dynamic popups with invoice
    and receipt numbers (alec)
  - lms-payments: fixed unwanted params binding in DBI's execute method (alec)
  - fixed tax calculations on Sale Registry (alec)
  - sticky/clickable nodelistshort (alec)
  - upgraded OverLIB to 4.17 version (alec)
  - now is possible to define tariff without tax (alec)
  - contrib/customer_otherip: balanceviewuserinfomini.html renamed to
    customerinfomini.html (alec)
  - lmsd/payments: fixed number of query parameters (alec)
  - gadu-gadu status checking only for lang = pl (alec)
  - print_balance_history on invoices now really works (hunter)
  - critical bug: SESSION::remove() doesn't update session, so after restore
    session removed variable was still avaiable (lukasz)
  - added missing |escape modifier in register template (lukasz)
  - fixed bug in SQL query in Mailing with network filtering (alec)
  - BTS#0000407: fixed page number problem in netdevices list (alec/MadMark)
  - customer documents archive (alec)
  - lmsd/(gg)notify: added %b, %B, %pin variables for template (alec)
  - in database changed periods constants: 5-yearly, 4-quarterly, 3-monthly,
    2-weekly (alec)
  - in 'payments' and 'assignments' tables changed 'period' and 'at' columns
    type to smallint (alec)
  - added accounting period: 1-daily (alec)
  - fixed bugs related to charset encoding and timeouts
    in lms-sendinvoices script (chilek)
  - BTS#0000413: fixed payments accounting on Payments List (endrju/alec)
  - lmsd/parser: updated tscript library, runtime errors handling (alec)
  - lmsd/payments: fixed subscription period calculation (alec)
  - Documents Numbering Plans (hunter/alec)
  - documents can be numbered daily, weekly, monthly, quarterly, yearly (alec)
  - BTS#0000419: added 'Mime-Version' header for all, not only multipart
    messages (alec)
  - added 'online' filter on Nodes List (alec)
  - in nodes stats panel (welcome.html) added links to nodes list (alec)
  - added menu item Configuration with subitems: User Interface, Tax Rates,
    Numbering Plans (alec)
  - lms-arping: we can use external file with list of ip addresses (chilek)
  - documentation is opened in new window (alec)
  - documentation: list of options moved to new chapter Configuration (alec)
  - Mailing: attachement support (alec)
  - reload_type=exec: allows you to choose which host configurations
    to be reloaded (chilek)
  - lmsd/parser: updated tscript library: regexps, consts, file (alec)
  - lmsd/parser: added extensions: NET, CONSTS (alec)

version 1.7.1 Swarog <A.L.E.C's Nightmare> (2005-06-27):

  - changed upgrade scripts for 1.2 version, deleted for 1.0 (alec)
  - bugfix: ipaddr_pub support in NetworkShift() (alec)
  - lmsd/pinger: activate online status for addresses matching interfaces
    where runs daemon, speedup - dropped ORDER BY from query (alec)
  - Customer Search Results paging (alec)
  - fixed smtp_auth_type default behaviour - use best method (alec)
  - added warning about lack of PEAR::Mail in SendMail() function (alec)
  - fixed nodes searching results list - nodes with ID=0 (alec)
  - lmsd/system: added option 'sql' (alec)
  - in nodes and customers searching added workaround for postgresql's ILIKE
    problem with national characters (alec)
  - lmsd/dns: networks can share the same domain name (alec)
  - lms-notify: added option 'mailcharset' with default setting 'UTF-8' (alec)
  - lms-notify: don't send messages to deleted customers (alec)
  - lms-notify: don't stop on unknown/wrong recipient address (alec)
  - file sample/mailtemplate.txt converted to UTF-8 (alec)
  - fixed tickets searching by requestor name (also added workaround for
    postgresql's ILIKE bug) (alec)
  - fixed _smarty_function_sum() - each row must be an array (alec)
  - better english UI messages (kondi)
  - we can add and search tickets with all customer statuses (chilek)
  - all UI colors moved to style.css (alec)
  - added workarround for page margin in Opera browsers (lukasz)
  - lms-makeiptables: added public IP (SNAT) support (alec/daro)
  - changed naming convention: user -> customer, admin -> user (alec)
    ********************************************************************
    *       WARNING!   WARNING!   WARNING!   WARNING!   WARNING!       *
    ********************************************************************
    *       Changed database structure: table 'users' replaced by      *
    *       'customers', table 'admins' replaced by 'users', also      *
    *                changed column names in other tables              *
    ********************************************************************
  - fixed customers and nodes searching when register_globals is on (alec)
  - quick search made quick (kondi)
  - bugfix: compressed backup restoring is possible again (alec)
  - BTS#0000360: tickets adding in customer context (alec)
  - bugfix: going to backup view by clicking on record on backup list (alec)
  - SQLite support: fixed upgradedb scripts, added iconv support, added
    sample/sqlite_createdb.php script for database creation without any
    of sqlite client applications (alec)
  - lms-payments: again tariff value can be less than zero (alec)
  - fixed customer name capitalization on contract (alec)
  - lmsd: added 'parser' module (alec)
  - formularz_przelewu_wplaty_2 (cash transfer forms) is now integrated
    with LMS (lexx)
  - changed finances database structure (alec)
  - changed naming convention (pesel, nip, pkwiu) in database (alec)
    ********************************************************************
    *       WARNING!   WARNING!   WARNING!   WARNING!   WARNING!       *
    ********************************************************************
    *     Changed database structure: table 'invoices' replaced by     *
    *       'documents', dropped 'phone' and 'finished' columns,       *
    *  Changed 'pesel' to 'ssn' and 'nip' to 'ten' and 'gguin' to 'im' *
    *  Changed 'pkwiu' to 'prodid' in 'tariffs' and 'invoicecontents'  *
    *               Tax rates moved to table 'taxes'                   *
    ********************************************************************
  - Finances -> Tax Rates - user-defined tax rates (alec)
  - automatic generation of bank account number (iban format) to use with
    automatic identification of massive payments (lexx)
  - added 'assign' argument for _smarty_function_sum() (alec)
  - added dberrors displaying on login form (alec)
  - Cash Receipts (in Poland known as "druki KP") (alec)
  - lms-sendinvoices: fixed invoice number in mail subject and body (alec)
  - BTS#0000369: preparing statements for strings quoting in perl scripts (alec)
  - lmsd/pinger: using more glibc instead of kernel headers (alec)
  - lmsd: fixed long (above 60 sec.) reload problem (alec)
  - lmsd: long names of command line options (alec/Jerzy Kolosowski)
  - lmsd: hiding command line arguments on processes list (alec)
  - when taxrate is above 0.00 it can't be "nottaxed" (hunter)
  - lmsd: added -fPIC flag for x86-64 arch. compat. (alec)
  - changed defaults of customerlist_pagelimit and nodelist_pagelimit
    to '100' (alec)

version 1.7.0 Klorel (2005-05-13):

  - lmsd/ethers: fixed output file format (alec)
  - fixed bug (made in last release) in chooseip module (alec)
  - keeping ShowOrHide status of boxes in customer info (alec)
  - BTS#0000337: fixed helpdesk tickets searching (alec)
  - lmsd: added option --inifile to ./configure script for configuration files
    support (alec)
  - lmsd: added command line option '-f' to run in foreground (without fork),
    fixed reload of instances with empty crontab on every minute, write last
    reload time to database if reload was ordered, fixed problem with
    zombies (alec/G.Stanislawski)
  - BTS#0000338: can specify network device while node addition (alec)
  - lmsd: fixed -h option segfault (alec)
  - on customers list added nodes online status and icon for nodes connection
    status change (alec)
  - additional filters for Customer Search, searching in service address (alec)
  - most of icons resized to 16x16 (alec)
  - fixed nodes and warnings enabling/disabling on Customer Search Results
    list (alec)
  - added "realname" field to account record (alec)
  - lms-mgc: added %CUSTOMER variable for node record (alec)
  - node's public IP (alec/kuba)
  - lms-squid: changed/fixed lms.ini section name to [redirector] (alec)
  - removed old contrib/squid_warnings (alec)
  - added option custom_accesstable for user-defined access rights (alec)
  - fixed devices desc on map when device has no IP, now device lastonline
    status is getting from all connected nodes lastonline value (alec)
  - BTS#0000340: option [Account] on customer list accounts all customer's
    covenants including invoices (alec)
  - added contrib/bin/lms-antyvir (alec/wojtek_sw)
  - added contrib/bin/lms-debtors (alec)
  - added option [phpui] map_type (alec)
  - lmsd/hostfile: added variables %wins, %dns, %dns2, %addr, %mask, %id (alec)
  - BTS#0000298: improved customers quick searching (alec)
  - added 'qualification operator' for Customer Search (alec)
  - lmsd: fixed problems with unescaped chars in SQL queries - added strings
    escaping for parameters of db_pexec() and db_pquery() functions (alec)
  - lmsd: configure create config.status script (alec)
  - lmsd: `make install` moves modules to PREFIX/lms/lib and program to
    PREFIX/lms/bin, in configuration modules can be set without path or
    extension (alec)
  - force logout after timeout /http-equiv=refresh/ (alec)
  - fixed access denied window in dynamic popups (alec)
  - lmsd/dhcp: fixed shared-network option support (alec)
  - added 'homedir_prefix' option, accounts can have different homedirs (alec)
  - improved nodes searching (and quicksearch), finds all matching nodes,
    added qualification operator, removed function SearchNodeList(), added
    images in Nodes Search interface (alec)

version 1.5.6 Baal (2005-04-24):

  - finished translation of documentation (kondi)
  - we can use limitations in percents in warnings (chilek)
  - tickets searching for selected user in userinfobox (chilek)
  - percentage discount for customer liabilities/assignments (alec)
  - added dirty support for quotas in accounts (lukasz)
  - new daemon (alec):
    * changed name to 'lmsd'
    * online configuration and management
    * cron's style work
    * configuration in database (only, ini files not supported)
    * rewrited database drivers
    * database connection options from command line or environment
    * selected hosts/routers reloading
    * WARNING: Old daemon not supported in Reload menu!
  - suspension percentage for assignments can be specified in lms.ini (chilek)
  - history of userbalace work_in_progress (hunter)
  - in invoice edition added check that settlement date not conflicts with
    invoice number, so we can change date only to the same year or month
    (monthly_numbering) that was before change (alec)
  - fixed invoices list sorting (alec)
  - few fixes in database engine (especially in mysql driver), so connect
    errors should be now displayed by app, not by php itself (lukasz)
  - on covenants report fixed columns summary and parse errors in eval()
    functions with polish locale (alec)
  - BTS#0000323: lms-rtparser: fixed multipart messages charset conversion
    and added decoding of quoted-printable encoded messages (alec)
  - added customer ID on Invoices Report (alec)
  - we don't use capitalize in admininfo.
    it fixes problem with lastname capitalization (chilek)
  - we show total assignments with discounts in userassignments and
    customer lists (chilek)
  - fixed handling ip addresses from netdevices in lms-mgc (lukasz)
  - BTS#000327: in lms-reminder added negative values of daylight saving time
    for time functions acc. to PHP functions (alec)
  - added balance and tariff summary on customers list printout (alec)
  - lms-sendinvoices: fixed message and attachement charset/encoding, added
    reading of invoice type configuration option from database (alec)
  - while adding or searching tickets in helpdesk customer ID can be
    specified instead of selecting customer from the list (alec)
  - nodes and customers search results (if they are lists) can be displayed
    in printer-friendly format (alec)
  - little (?) layout revolution (inspired by lexx and kondi) (lukasz)
  - fixed total tax summary on Sale Report (alec)
  - lms-rtparser: added options autoreply_body and autoreply_subject with
    translated to english default values (alec)
  - removed unused function GetNodeByMAC() from LMS class (alec)
  - changed default tax value to 22% in selection lists (alec)
  - lms-cutoff: added option 'message', optimized balance calculation (alec)
  - lms-makeon: added option 'message', optimized balance calculation (alec)
  - lms-notify: deleted columns header in %last_10_in_a_table (alec)
  - lms-payments: translated to english default values of options
    'paytype' and 'comment' (alec)
  - lms-sendinvoices: added (englished) options 'mail_subject' and 'mail_body',
    added reading of invoices/number_template setting from database,
    added "" for recipient and sender names (alec)
  - lmsd/cutoff: translated to english default value of 'warning' option (alec)
  - lmsd/payments: translated defaults of 'paytype' and 'comment' options (alec)
  - fixed (ming) bug in network map causing problems with texts on large maps,
    optimized time of map generation (alec)
  - added users IP authorization (alec)
  - some code cleanup for error_reporting = E_ALL (alec)
  - locale independent date format on reports / dropped bugy capitalize (alec)
  - fixed liabilities report (bugy Smarty's math) and added customer ID (alec)
  - lmsd/traffic: fixed sequence of data while reading log file (alec)
  - sample/traffic_ipt.sh replaced by sample/traffic_ipt.pl (alec)

version 1.5.5 Anubis (2005-03-25):

  - fixed empty page printing on invoices when trying to print only
    originals or only copies (alec)
  - fixed encoding conversion of some strings on pdf invoices (peter/alec)
  - index.php: localization before uiconfig reading, to have proper encoding
    in configuration options if we use server_encoding != unicode (alec)
  - contrib/customer_otherip: changed login.html to customerlogin.html because
    of conflict with templates/login.html in Smarty cache (alec)
  - size reduction of LMS main class, some one-time functions moved to
    modules i.e. Mailing(), Traffic() (alec)
  - added basic (without group checking) body of check_ssn() function for
    'en' locale (alec)
  - contrib/formularz_przelewu_wplaty(_2): fixed encoding and bug with empty
    page (alec)
  - lms-payments print accounting messages on STDERR (lukasz/alec)
  - helpdesk: fixed encoding in message contents to UTF-8, added option
    phpui/helpdesk_sender_name for name of message sender (alec)
  - fixed bug in userassignmentedit.html when customer has " sign in name (alec)
  - BTS#0000283: added link 'Clear Account' on Customer Account (alec)
  - added cash operations import interface (lexx/alec)
  - sql queries speedup in GetTariff() and GetTariffList() (alec)
  - "all liabilities suspending" can be edited like other assignments (alec)
  - BTS#0000292: tariff's avg monthly income don't take into consideration
    suspended liabilities (alec)
  - added index on tariffid column in assignments table (alec)
  - BTS#0000284: user login is unique and can't be reused - changed content
    of warning message (alec)
  - added 'in debt', 'deleted' and 'disconnected' filters for mailing (alec)
  - contrib/customer_otherip: invoices printing (alec)
  - fixed floats formatting in AddBalance() for non-english locale (.PaKuD)
  - fixed month and year in invoice number in 'setcustomer' action of file
    invoiceedit.php (alec)
  - BTS#0000305: helpdesk - fixed design in queue info (alec)
  - database speedup - added indexes: nodes/netdev, rttickets/queueid, cash/time,
    invoices/cdate, invoicecontents/invoiceid, cashimport/hash (alec)
  - invoicenew.php, invoiceedit.php: bypassed sessions bug in PHP-4.3.10 (alec)
  - almsd/notify: changed contents of 'command' option and removed header with
    column names in last_10_in_a_table (alec)
  - almsd/tc: fixed uninitialized variable warning (alec)
  - possibility of removing tickets (chilek)
  - lms-rtparser: added mail charset detection and conversion to database
    charset (req. Text::Iconv), changed encoding of confirmation message (alec)
  - added contrib/coffee_cup (lexx)
  - added passwd field to nodes record (alec)
  - we can pay invoices in userbalancebox (chilek)
  - new session management using database backend, also authorization has been
    put into separate class (lukasz)
  - BTS#0000308: added lost customer's groups table while adding new node for
    a customer (alec)
  - added support for dynamic tooltips (lexx)
  - netdevmap in flash (requires ming) (lexx)
  - added Finances -> Print -> Covenants Realization Report (alec)
  - new layout for menu (lukasz)
  - ip address selection divided to pages (chilek)
  - if we find only one customer we will redirect to his info (chilek)
  - almsd/dhcp,oident,ethers: changed defaults of 'file' and 'command'
    options (alec)
  - translated to english almost entire documentation (kondi/alec)
  - database backups can be restored only on system version according
    with database version where backup was created (alec)
  - added contrib/squid_redirector which extends capabilities of squid_warnings
    (enable/disable nodes access to squid), and marking squid_warnings as
    obsolete (lexx)
  - BTS#0000315: remove assignments in customer delete function (alec/WiktorRB)
  - page headers have been removed (chilek)
  - redesigned customers list (lexx)
  - BTS#0000311: fixed cash operation time setting after invoice edition (alec)
  - mail() -> SendMail(). We use Pear::Mail (chilek)
  - notifications about new tickets in UI and lms-rtparser (chilek/alec)
  - proper char encoding in mail notifications (chilek)
  - added confirm. dialog for generation of new PIN and node's password (alec)
  - added "Notices" privilage for helpdesk queues (alec)

version 1.5.4 Ramius (2005-02-16):

  - domyślnym językiem interfejsu użytkownika jest angielski (en), wykonano
    tłumaczenie na język polski, zmieniono nazewnictwo: użytkownicy -> klienci,
    administratorzy -> użytkownicy, język jest odczytywany z ustawień
    przeglądarki, a może być także ustawiony poprzez opcję 'lang', zmieniono
    kodowanie danych i interfejsu na UTF-8, trwają prace nad tłumaczeniem
    dokumentacji (alec/lexx/maniac/chilek i inni)
  - zmiana opcji 'userlist_pagelimit' na 'customerlist_pagelimit' (alec)
  - poprawiony błąd przy usuwaniu opłaty stałej powodujący usunięcie opłaty
    bez potwierdzenia (alec)
  - dodana opcja konfiguracyjna (phpui -> lang_debug) która pozwala na
    wyświetlanie w popupie brakujących ciągów w tłumaczeniach (lexx)
  - poprawiony błąd na liście użytkowników wyszukanych powodujący ignorowanie
    braku potwierdzenia przy rozliczaniu użytkownika (alec)
  - BTS#0000275: poprawiony błąd w zapytaniu sql podczas wyszukiwania zgłoszeń
    wg nazwiska zgłaszającego (rejmer)
  - BTS#0000278: dodane uprawnienie 'zarządzanie sieciami i urządzeniami' oraz
    wyłączono z uprawnienia 'zarządzanie komputerami' odłączanie/włączanie
    komputerów (rejmer/alec)
  - w dokumentacji dodana informacja jak podłączyć lms-rtparser do postfixa
    przy użyciu procmaila (D.Rejmer)
  - dodawanie aliasów i domen przeniesiono do osobnych modułów, uprawnienie
    'tylko odczyt' zezwala na odczyt danych kont/aliasów/domen (alec)
  - BTS#0000279: na szablonie wysyłania maili poprawiono zamienione miejscami
    nazwę i email nadawcy (alec)
  - BTS#0000280: poprawione błędne zaokrąglanie oraz sumowanie ogólnej kwoty
    podatku na rejestrze sprzedaży (.PaKud/alec)
  - obsługa gzipowanych kopii zapasowych (kuba)
  - BTS#0000276: lms-rtparser: jeśli nie zdefiniowano 'mail_from_name' w polu
    'From:' potwierdzenia wstawiamy nazwę kolejki (rejmer/alec)
  - BTS#0000282: lms-rtparser: w polu 'Do:' potwierdzenia wstawiamy tylko
    adres email bez nazwy konta zgłaszającego (rejmer/alec)
  - BTS#0000274: Nie można przypisać komputerowi adresu gatewaya (alec)
  - usunięty błąd powodujący złe rozpoznawanie adresu sieci i broadcastu na
    liście hostów w danej sieci, jeśli lista ta była na więcej niż jednej
    stronie (alec)
  - poprawiony błąd w skrypcie lms-notify oraz modułach almsd notify i ggnotify
    powodujący pobieranie do %last_10_in_a_table dziesięciu pierwszych a nie
    ostatnich operacji (alec)
  - poprawiony błąd w ustawianiu daty wystawienia nowej faktury (alec)
  - dodano zabezpieczenie przed wystawieniem faktury bez zawartości (alec)
  - BTS#0000281: poprawiono wyświetlanie listy zadłużonych, które na MySQLu
    uwzględniało także użytkowników z bilansem równym zero (alec)
  - zmiana wartości domyślnej opcji invoices/content_type: usunięto definicję
    charsetu (alec)
  - numeracja miesięczna faktur: invoices/monthly_numbering (alec)
  - BTS#0000299: poprawka w funkcji sprawdzającej poprawność MAC'a (lukas)
  - dodana opcja %PIN do lms-mgc (lukasz)
  - Terminarz (alec)
  - zmiana typu kolumny przechowującej kod pocztowy na VARCHAR(10) uwzgl.
    amerykański format 5+4 (alec)
  - dodana możliwość wydruku listy komputerów użytkowników zadłużonych (alec)
  - na liście opcji konfiguracyjnych dodano linki do edycji, usuwania oraz
    włączania/wyłączania opcji (alec)
  - dodana możliwość filtrowania listy faktur wg zadanych kryteriów (alec)
  - w opcji 'contract_template' może podawać kilka plików szablonów umów
    wraz z opisem, np. "plik.html:Umowa Test, plik2.html:Umowa Standard" (alec)
  - lms-sendinvoices: dodana opcja --fakedate (alec)
  - dodano możliwość wydruku listy użytkowników z bilansem na dany dzień (alec)
  - na bilansie użytkownika oraz bilansie sieci dodano możliwość wydruku
    oryginałów/kopii wybranych faktur (alec)
  - lms-payments (almsd/payments): jednej pozycji na fakturze odpowiada
    dokładnie jedno obciążenie, także wtedy gdy pozycja składa się z wielu
    podpozycji/taryf (alec)
  - edycja i usuwanie faktur (lexx)
  - dodano index na kolumnie invoiceid w tabeli cash, przyspieszający niektóre
    zapytania SQL (alec)
  - możliwość generowania faktur w PDF (lexx)
  - dla operacji fakturowanych dodano możliwość powiązywania obciążeń z
    wpłatami/przedpłatami, co np. pozwala na częściowe rozliczanie faktur (alec)
  - można edytować opcje sekcji [finances] z poziomu UI (alec)
  - poprawki w nodescan.php|html - jeśli wyszukujemy komputery z poziomu klienta
    zostaje wyświetlona kompletna strona informacji o kliencie (alec)
  - lms-payments: dodano opcję 'comment' ustalającą komentarz do opłaty,
    dozwolone zmienne: %tariff, %period, %desc (alec)

version 1.5.3 Nirrti (2004-12-16):

  - w polu email przy dodawaniu/edycji użytkownika można wpisać tylko jeden
    adres, dodane sprawdzenie poprawności tego adresu (alec)
  - poprawiona walidacja PINu przy dodawaniu użytkownika (alec)
  - poprawione sprawdzanie poprawności loginu i domeny konta (alec)
  - możliwość zmiany opcji konfiguracyjnych z sekcji [phpui] i [invoices]
    w interfejsie użytkownika (menu Administracja -> Konfiguracja), więcej
    w dokumentacji: Rozdział 3.2.5. (alec)
  - contrib/formularz_przelewu_wplaty: dwa druki na stronie i inne drobne
    poprawki (J.Krzymin/alec)
  - poprawki w Mailingu dot. obsługi błędów i kosmetyka interfejsu (alec)
  - wydruk faktur za dany okres z możliwością wyboru użytkownika (alec)
  - lms-payments: poprawione działanie opcji --quiet, dodana opcja
    -f, --fakedate=YYYY/MM/DD (alec/RIP)
  - usunięty błąd powodujący brak możliwości edycji konta systemowego (alec)
  - można określić datę wystawienia nowej faktury (alec)
  - w oknie bilansu użytkownika dodany link 'Wystaw fakturę' (alec)
  - BTS#0000254: funkcja writesyslog() działa również na OpenBSD (kubatyszko)
  - edycja zobowiązań użytkownika (alec)
  - dodana opcja 'to_words_short_version' w sekcji [phpui] określająca format
    reprezentacji słownej kwot (alec/kubatyszko)
  - w formularzu przelewu/wpłaty można zdefiniować format reprezentacji słownej
    kwoty (alec/kubatyszko)
  - BTS#0000252: usunięte spacje wiodące w repr. słownej kwot (alec)
  - filtrowanie listy zgłoszeń Helpdesk wg statusu (alec)
  - w dokumentacji dodany opis podłączenia lms-rtparser do Exima (P.Górski)
  - Konta/Aliasy/Domeny
	!!! UWAGA: Domeny nie są już trzymane w passwd !!! (alec)
  - dodany filtr 'on-line' do listy użytkowników (alec)
  - usunięty błąd w module payments demona, występujący na mysql'u, który
    powodował niezapisywanie zawartości faktur (alec)
  - almsd: zmiana w funkcji db_query() dla mysql'a powodująca, że przy pustym
    resultsecie nie zwracamy teraz NULL'a, tzn. tak jak dla innych baz,
    czyli po wywołaniu tej funkcji należy pamiętać o sprawdzeniu pola
    'nrows' wyniku (alec)
  - usunięta redefinicja funkcji chkconfig() z customer (chilek)
  - w userinfo dodany link do listy kont użytkownika (alec)
  - listy kont i aliasów współdzielą te same filtry (alec)
  - lms-squid-warnings obsługuje bazy postgres i sqlite (alec)
  - lms-rtparser: przy nieustawionej opcji 'mail_from' poprawnie wstawiany
    jest adres kolejki (alec)
  - BTS#0000257: w sumie opłat miesięcznych użytkowników oraz w średnim zysku
    miesięcznym taryf nie uwzględniamy zobowiązań zawieszonych (alec)
  - BTS#0000266: zabezpieczenie przed generowaniem mapy sieci, w której nie ma
    urządzeń, co powodowało segfaulta Apache'a (alec)
  - z szablonu faktury usunięta informacja powołująca się na nieaktualne
    przepisy prawne (alec)
  - poprawiona walidacja NIPu przy edycji i dodawaniu użytkownika (alec)
  - contrib/formularz_przelewu_wplaty_2 (lexx)
  - lms-mgc ignoruje wpis node(x.x.x.x) jeżeli host x.x.x.x nie istnieje
    (dzwonus/lukasz)
  - Helpdesk: dodana możliwość wysyłania wiadomości z załącznikiem (alec)

version 1.5.2 Isis (2004-11-25):

  - experymentalny driver do MS SQL Servera (alec)
  - poprawne tworzenie shared-network w lms-makedhcpconf (alec)
  - dokumentacja: dodany opis lms-makedhcpconf (alec)
  - dodane brakujące defaulty do niektórych kolumn w tabeli rtmessages
    w lms.mysql (alec)
  - w funkcji odczytującej nazwę hosta (którą następnie widać w nagłówkach
    stron) dodano sprawdzenie stałych $_ENV['HOSTNAME'] i $_SERVER[SERVER_NAME']
    jeśli nie powiedzie się próba odczytania nazwy poprzez `hostname` (alec)
  - do danych komputera dodano pole 'info' (alec)
  - lms-mgc: dodana zmienna %INFO zawierająca opis komputera j.w. (alec)
  - dodana zmienna %info w regułkach modułu hostfile demona almsd (alec)
  - dokumentacja: uzupełniony opis zmiennych lms-mgc (alec)
  - w statystykach dodany średni transfer w KB/s (alec)
  - generowanie PINu podczas edycji/dodawania użytkownika (alec)
  - poprawka w funkcji szybkiego wyszukiwania komputera uwzględniająca zmianę
    działania ip2long() w PHP5 (alec)
  - BTS#0000229: contrib/customer - uwzględniona sytuacja, gdy łączymy się z
    urządzenia sieciowego (alec)
  - lms-arping (T.Ciaszczyk/alec)
  - lms-rtparser: usunięty błąd w działaniu opcji tmp_dir (alec)
  - pinger.h: usunięty błąd kompilacji z glibc 2.3 (alec)
  - almsd/cutoff: dodane opcje 'warning' i 'command' (alec)
  - BTS#0000245: poprawiona godzina w 'data do' na 23:59:59 w wydrukach
    bilansu finansowego sieci i użytkownika (alec)
  - contrib/daemon/cbq-init: dodatkowy moduł demona (alec)
  - dodane sprawdzenie czy zaznaczono użytkowników przy dodawaniu nowej
    operacji (alec)
  - poprawki w genfake (lexx)
  - almsd/cutoff: dodana opcja 'warnings_only' umożliwiająca wykorzystanie
    tego modułu wyłącznie do włączania ostrzeżeń, gruntowna przebudowa (alec)
  - contrib/daemon/cutoff2 - ulepszony cutoff dla zobowiązań mies. (alec)
  - contrib/multiip_patch (alec/Ł.Wojciechowski/M.Adamski)
  - BTS#0000237: na liście wyboru taryfy w zobowiązaniach użytkownika pokazujemy
    wartości uprate, upceil, downrate, downceil (alec)
  - BTS#0000246: na FreeBSD hostname wywołujemy bez opcji -f (alec)
  - BTS#0000248: zmiana statusu lub ostrzeżenie komputera nie powoduje zmiany
    administratora "ostatniej modyfikacji" (alec)
  - w lms-makemacs poprawiona domyślna wartość opcji config_file (alec)
  - dodany 'Rozdział 9 FAQ' w dokumentacji (alec)
  - przebudowana struktura menu: Administratorzy, Bazy danych, Witamy!
    zebrane w jednym 'Administracja' (alec)
  - poprawki formularzy ułatwiające szybszą obsługę bez użycia myszy (alec)
  - Konta (lexx/alec)
  - contrib/daemon/shaper (M.Adamski)

version 1.5.1 Eamon (2004-10-25):

  - przyspieszone wyświetlanie modułu wydruków i innych pobierających listę
    administratorów (alec)
  - BTS#0000200 (alec)
  - poprawki i kosmetyka w contrib/customer_otherip oraz dodany opis do
    dokumentacji (alec)
  - optymalizacja wydruku bilansu finansowego (alec)
  - BTS#0000203: nie można się logować na usunięte konto admina (alec)
  - usunięty błąd uniemożliwiający otwarcie załącznika do wiadomości rt (alec)
  - BTS#0000206: poprawione pobieranie baz przy połączeniu https (alec/lexx)
  - Helpdesk: dodane wpisy do sample/lms.ini, poprawiony błąd przy zmianie
    właściciela zgłoszenia, w dokumentacji dodana informacja o wymaganych
    przez rtparser modułach Perla (alec)
  - w lms-rtparser potwierdzenia wysyła Net::SMTP zamiast sendmaila,
    dodane opcje smtp_server, mail_from_name (alec)
  - usunięty błąd przy odtwarzaniu backupu na postgresie spowodowany
    aktualizacją nieistniejących sekwencji (alec)
  - status online adresów urządzeń w netdevinfo (alec)
  - poprawiony błąd w zapytaniu sql w lms-notify (alec)
  - na liście sieci podajemy ilość komputerów online dla każdej sieci (alec/lukas)
  - statystyki zgłoszeń w welcome.html (alec)
  - dodana opcja networkhosts_pagelimit, domyślnie pokazujemy 256 hostów
    w netinfo (alec)
  - przebudowany i poprawiony lms-notify-sms (alec)
  - lms-notify: uzupełniona dokumentacja (%phone1, %date_month_name), poprawione
    sortowanie %last_10_in_a_table i znak przy kwotach (alec)
  - możliwość szybkiego wyszukania zgłoszeń o określonych stanach z welcome.html (chilek)
  - pominięcie usuniętych użytkowników w szybkim wyszukiwaniu (moduł quicksearch) (averne)
  - możliwość skasowania wiadomości w widoku zgłoszenia (chilek)
  - poprawiona kwota słownie w contrib/formularz_wpłaty (alec)
  - lms-rtparser: poprawione/dodane kodowanie nagłówków potwierdzenia (alec)
  - poprawiony auto-upgrade: w przypadku wystąpienia błędu procedura zostaje
    przerwana (alec)
  - poprawiony błąd uniemożliwiający edycję danych grupy użytkowników (alec)
  - opcja phpui/contract_template lms.ini dla szablonu umowy usera (alec)
  - lms-rtparser: auto_open - automatyczne otwieranie zamkniętych zgłoszeń (alec)
  - BTS#0000204: dane o ostatnim logowaniu zalogowanego administratora zawierają
    informacje z ostatniego logowania, a nie z bieżącej sesji (alec)
  - po zmianie hasła wyświetlamy ostatni moduł zamiast welcome (alec)
  - nazwa interfejsu może zawierać ':' i '.' (alec)
  - naprawione sumowanie w kolumnie 0% w rejestrze sprzedaży (alec)
  - poprawione błędy w pinger.h uniemożliwiające kompilację na niektórych
    versionch glibca (alec)
  - BTS#0000221: dodany monit o potwierdzenie rozliczenia faktury (alec)
  - usunięte przekierowanie do listy faktur po dodaniu faktury (alec)
  - połączenia wireless na mapie sieci (alec)
  - poprawiony błąd w polu 'adres IP' podczas edycji komputera (lukas/alec)
  - BTS#0000214: rozwiązany problem z brakiem pamięci podczas tworzenia
    backupu (alec)
  - dodany contrib/import, czyli import płatności z pliku txt (alec)

version 1.5.0 Marduk (2004-09-18):

  - w lms-makedhcpconf hosty są sortowane (alec)
  - drukowanie zgłoszeń (alec)
  - BTS#0000192: poprawione wyświetlanie złego urządzenia sieciowego podczas
    edycji komputera (lexx)
  - w oknie wyboru adresu IP domyślną siecią jest ta, do której należy
    edytowany komputer/adres urządzenia (alec/lukas)
  - na mapie dodana informacja (w postaci różnych ikon) o aktywności
    urządzeń sieciowych (alec/lexx)
  - podgląd szczegółów wiadomości Helpdesku (alec)
  - podczas odpowiadania na zgłoszenie następuje zmiana statusu i właściciela
    jeśli nie były wcześniej ustawione (alec)
  - nazwa sieci może zawierać znak '_' (alec)
  - nazwa grupy może zawierać znak '.' (alec)
  - dodana obsługa opcji konfig. 'networks' i 'usergroups' w module 'ethers',
    'dns' i 'dhcp' demona (alec)
  - poprawione błędne interpretowanie opcji 'networks' w modułach demona
    gdy nazwa sieci zawierała kropkę (alec)
  - BTS#0000183: dodany indeks na kolumnie userid w tabeli cash, powodujący
    znaczne przyspieszenie zapytań sql ze złączeniami tabel cash i users (alec)
  - w formularzu nowej operacji napisy określające typ operacji uaktywniają
    odpowiadające im radio-buttony (chilek)
  - w formularzu nowej operacji zapamiętywany jest na czas sesji typ operacji (chilek)
  - w UI dodana obsługa PIN dla użytkowników - UWAGA! automatyczny upgrade bazy
    generuje nowe numery PIN dla wszystkich użytkowników! JEŚLI POSIADASZ
    JUŻ NUMERY PIN W BAZIE TO ZOSTANĄ ONE WYGENEROWANE NA NOWO! (lexx)
  - BTS#0000185: poprawione rozliczanie użytkowników (alec)
  - możliwość wydrukowania umowy z poziomu UI (lexx)
  - w demonie można zdefiniować polecenie powłoki, które będzie wykonywane
    przed każdym połączeniem z bazą (alec)
  - w skryptach dodano wyświetlanie błędów w pliku konfiguracyjnym (alec)
  - w formularzu nowej operacji pokazuje się ilość zaznaczonych użytkowników (chilek)
  - przyspieszone wyświetlanie listy faktur na MySQL'u (alec)
  - polecenie 'make daemon' do kompilacji samego demona, bez modułów (alec)
  - przy starcie almsd w 'background mode' nie następuje przeładowanie (alec)
  - dodane klawisze szybkiego dostępu w formularzu wyszukiwania użytkownika (S)
    oraz nowej operacji (W) (chilek)
  - do demona dodana opcja wiersza poleceń '-i' określająca instancje do
    przeładowania, nie ma konieczności tworzenia odrębnych plików konfig.
    dla modułów uruchamianych z crona (alec)
  - na mapie sieci zwiększony górny margines i usunięte błędy wyst. przy
    braku podłączonych komputerów (lukas)
  - w contrib/sqlpanel wyniki poleceń sql przepuszczane są przez funkcje
    nl2br() i htmlspecialchars() (alec)
  - na mapie zwiększony do 24 limit urządzeń podłączonych do jednego urządzenia
    oraz usunięty błąd pokrywających się linków (alec)
  - lms-rtparser: przebudowany, przetestowany i dodana dokumentacja (alec)
  - dopracowane wysyłanie wiadomości w Helpdesku (alec)
  - obsługa załączników w Helpdesku (alec)

version 1.3.6 Osiris (2004-09-01);

  - obciążenia są naliczane według ich wartości, rosnąco - w wypadku jak ktoś
    ma odliczenie jakieś, zostanie ono naliczone jako pierwsze, przez co nawet
    przez chwilę saldo nie zejdzie poniżej zera (lukasz)
  - dodana informacja kiedy dany komputer był ostatnio widziany w sieci (lexx)
  - teraz na mapie urządzeń sieciowych pokazywana jest lokalizacja urządzenia
    (lexx)
  - poprawiony błąd w zapytaniu przy wyszukiwaniu zgłoszeń po temacie (alec)
  - uprawnienie 'manipulacja finansami' obejmuje także rozliczanie faktur (alec)
  - BTS#0000180: zliczanie wolnych adresów w sieci nie bierze pod uwagę
    zarezerwowanych dla DHCP (lexx)
  - BTS#0000181: okienko wyboru adresu IP nie pozwala wybrać adresu
    zarezerwowanego dla DHCP (lexx)
  - BTS#0000153: kliknięcie na urządzenie/komputer na mapie urządzeń powoduje
    przejście do wybranego urządzenia/komputera (lexx)
  - poprawiona czytelność napisów na mapie urządzeń (lexx)
  - zawieszanie płatności wybranych zobowiązań użytkownika lub wszystkich
    na dany okres (alec)
  - dodany panel 'Użytkownicy'->'Ostrzeżenia' (alec)
  - dodany skrypt lms-fping (alec)
  - BTS#0000052: odłączenie użytkownika poprzez cutoff powoduje automatyczne
    owinetkowanie komputerów użytkownika oraz ustawienie wiadomości
    administracyjnej (lexx)
  - poprawiony BTS#0000157: gubienie urządzeń i błędne połączenia
    na mapie (alec)
  - w welcome.html podajemy także ilość komputerów on-line (alec)
  - BTS#0000187: uzup. brakująca definicja $utsfmt w lms-notify (alec)
  - BTS#0000189: poprawiony trigger dns2 w formularzu netadd.html (alec)
  - dodany moduł pinger (szybszy odpowiednik lms-fping) do demona (alec)
  - w demonie wszystkie komunikaty informacyjne są w DEBUG1 (alec)
  - usunięte błędy przy allow_call_time_pass_reference=Off w php.ini (alec)
  - dodane contrib/squid_warnings (lexx)
  - w dokum. dodany rozdział 'Dodatki' opisujący zawartość /contrib (alec)

version 1.3.5 Ju (2004-07-30):

  - usunięty błąd w skryptach perlowych, powodujący błędne działanie
    przy pustej zmiennej konfiguracyjnej 'usergroups' (alec)
  - domyślnie, w mailingu używamy imienia i e-maila administratora który
    aktualnie się zalogował jako nadawcy (lukasz)
  - skończony (?) interfejs www dla systemu RT-Helpdesk (alec)
  - zaktualizowano pliki do zakładania bazy danych (alec)
  - w polu szybkiego wyszukiwania można podawać numer zgłoszenia lub
    nazwisko użytkownika (alec)
  - w lms-mgc poprawiony błąd w zapytaniu wybierającym dane do htb oraz dodane
    zmienne %UPCEIL, %DOWNCEIL, %CLIMIT, %PLIMIT (alec)
  - zmiana typu kolumn statystyk na BIGINT zapobiegająca błędom przy
    kompaktowaniu jeśli użytkownicy ściągają ponad 2 GB danych dziennie (alec)
  - BTS#0000168: poprawione działanie zmiennej 'use_current_payday', przy
    okazji wreszcie działają error-triggery dla zobowiązań (alec)
  - BTS#0000171: poprawiona obsługa błędu przy braku wolnych portów
    w urządzeniu przy pierwszym podłączeniu komputera (alec)
  - BTS#0000173: uzupełnione sprawdzanie długości nazwy komputera, urządzeń
    sieciowych i ich adresów oraz dodany atrybut maxlength w szablonach (alec)
  - dodano możliwość nadpisania pojedyńczej reguły w lms-mgc poprzez wpis:
    node(192.168.1.1) = reguła (lukasz)
  - dodano pole 'adres do doręczeń' dla danych użytkownika, który (jeśli
    zdefiniowano) zastąpi adres użytkownika na fakturze (alec)
  - w module hostfile demona dodana zmienna '%gw' zamieniana na adres
    bramy (alec)
  - w module 'tc' demona można określić politykę generowania klas htb poprzez
    zmienną 'one_class_per_host', rozbite reguły na kilka opcji konfiguracyjnych
    osobno dla markowania i htb w obie strony (alec)
  - w lms-traffic-htbiptlimits dodana obsługa upceil i downceil (alec)
  - uptime'y zgłoszeń, czyli czas od zgłoszenia do rozwiązania problemu (alec)
  - poprawna odmiana wyrazów dzień, godzina, minuta w uptime'ach (alec)
  - dodany filtr 'minimalny uptime' do wyszukiwania zgłoszeń (alec)

version 1.3.4 Terok (2004-07-06):

  - naprawiony combobox ze stawką podatku w 'Rachunku użytkownika' (alec)
  - jeśli żadna grupa nie istnieje to skrypty biorą pod uwagę wszystkich
    użytkowników (chilek)
  - dodane error-triggery w adminpasswd.html (alec)
  - zapamiętujemy porządek sortowania w statystykach (chilek)
  - poprawiony BTS#0000137: dodany komunikat o braku wolnych portów w urządzeniu
    podczas podłączania z nodeinfobox.html (alec)
  - na listach użytkowników filtr 'wszyscy' wybiera z bazy wszystkich oprócz
    usuniętych (nie bierze pod uwagę pola status), a nie tylko podłączonych
    jak dotychczas (alec)
  - przy obliczaniu średniego zysku miesięcznego taryfy nie uwzględniamy
    użytkowników zainteresowanych i oczekujących - BTS#0000151 (alec)
  - poprawione opisy instalacji i upgrade'u bazy mysql, z uwagi na brakujące
    uprawnienia do polecenia ALTER, wszyscy planujący upgrade powinni z konta
    roota wykonać w mysqlu następujące polecenia: (alec)
	GRANT select,insert,update,delete,create ON lms.* TO lms@localhost
		IDENTIFIED BY 'hasło';
	FLUSH PRIVILEGES;
  - na mapie sieci oprócz nazw hostów pokazujemy ich adresy IP oraz
    (max.4) adresy IP urządzeń sieciowych (alec)
  - poprawiony błąd na fakturze: BTS#0000154 (alec)
  - w formularzu dodawania faktury można podawać kwoty z przecinkiem oraz
    usunięto wiodące zero dla kwot mniejszych od 10 (alec)
  - rozliczanie użykowników w rozbiciu na stawki VAT (chilek)
  - możliwość usuwania transakcji w bilansie użytkowników (chilek)
  - możliwość usuwania transakcji w informacji o użytkowniku (chilek)
  - poprawka w DBDump() usuwająca błąd występujący podczas odtwarzania kopii
    bazy danych z wartością NULL ('zw.') w kolumnach taxvalue (alec)
  - lms-traffic-logiptables nie zapisuje już danych do logu, ale wstawia
    dane do bazy wprost, nie trzeba uruchamiać lms-traffic (alec)
  - do demona dodany moduł 'system', dla tych co nie chcą używać sudo dla
    skryptów perlowych, oczywiście nie tylko (alec)
  - poprawka w notify i ggnotify dodająca znak minus przy obciążeniu w
    %last_10_in_a_table (alec)
  - poprawka linku do listy zadłużonych w welcome.html (alec)
  - dodany contrib/customer_otherip (hunter)
  - rozbudowane faktury o dane do htb: upload ceil, download ceil,
    connection limit, packet limit (alec)
  - przepisany moduł 'tc' demona uwzględnia zmiany w taryfach (alec)
  - poprawka w funkcji mailing, teraz pole from: powinno być dobre (lexx)
  - podczas usuwania urządzenia sieciowego usuwane są także jego adresy (alec)
  - poprawione ustawianie sekwencji postgresa podczas odtwarzania kopii
    bazy danych (alec)
  - wznowiono prace na systemem RT (Helpdesk) (alec)

version 1.3.3 Sokar (2004-05-05):

  - naprawione usuwanie pozycji na fakturze (alec)
  - w demonie dodana obsługa bazy SQLite (alec)
  - poprawione zapytanie w lms-traffic-htbiptlimits uwzględniające prawidłowo
    okresowe assignmenty (alec)
  - dodana obsługa datefrom i dateto w module 'tc' demona (alec)
  - dodana obsługa zwolnień z VAT w taryfach i fakturach (chilek)
  - poprawione błędy w wyglądzie listy faktur, z którymi nie radziła
    sobie Mozilla (alec)
  - dodana obsługa stawek VAT w operacjach finansowych - tablica cash
    pole taxvalue (chilek)
  - w wydrukach bilansów uzwględniane są stawki VAT (chilek)
  - w contrib/sqlpanel dodano stronicowanie wyników oraz opcję wydruku (alec)
  - wybór stawki VAT przy nowej operacji w comboboksie (chilek)
  - wydruk raportu łącznych przychodów bezrachunkowych (chilek)
  - wydruk raportu wierzytelności userów (alec)
  - dodana możliwość opłacania faktur - jeszcze nie w pełni funkcjonalna (chilek)
  - na fakturze termin płatności może wynosić 0 (alec)
  - można podać datę opłacenia faktury (chilek)
  - można rozliczyć wiele faktur (chilek)
  - sprawdzamy czy faktury są rozliczone testując bilans pozycji faktur (chilek)
  - w formularzach wyszukiwań pokazywane są ikonki ostrzeżeń (chilek)
  - rejestr sprzedaży przeniesiony do Taryfy i Finanse -> Wydruki (alec)
  - wybór stawki VAT w nowej pozycji faktury za pomocą comboboxa (chilek)
  - wybór stawki VAT w taryfach za pomocą comboboxa (chilek)
  - dodany formularz zarządzania wiadomościami administracyjnymi (chilek)
  - grupy użytkowników (chilek/alec)
  - możliwość wyboru grupy wyświetlanej listy użytkowników (chilek)
  - możliwość ustalania przynależności do grup w formularzach informacji o
    użytkowniku i edycji użytkownika (chilek)
  - możliwość ustalania przynależności do grup w formularzach informacji o
    komputerze i edycji komputera (chilek)
  - obsługa grup użytkowników w lms-makedhcpconf, lms-makeoidentconf,
    lms-makemacs, lms-makehosts (chilek)
  - naprawione filtrowanie listy userów wg grupy i sieci (alec)
  - poprawka w bazie przywracająca możliwość dublowania MAC'ów (alec)
  - w Mailingu można wybrać grupę użytkowników (alec)
  - dodane skrypty lms-makewarnings, lms-makemessages (chilek)
  - dane administratorów usuniętych nie są usuwane z bazy (alec)
  - wydruki list użytkowników można filtrować wg grupy (alec)
  - do listy użytkowników dodane filtry 'usunięci', 'odłączeni'
    i 'zadłużeni', w związku z tym znika menu Użytkownicy->Odłączeni
    i Użytkownicy->Zadłużeni (alec/chilek)
  - w wersji demona dla SQLite dodane funkcje UPPER() i LOWER()
    uwzględniające systemowe locales, dla prawidłowego kapitalizowania
    polskich znaków diakrytycznych (alec)
  - poprawiony error-trigger w polu status w usereditbox.html (alec)
  - poprawione ignorowanie naliczeń o wartości zerowej (lukasz)
  - poprawiony błąd w almsd, powodujący zwałkę demona na mysql'u, gdy
    w tabeli timestamps nie ma wpisu '_force' (alec)
  - przebudowany rozdział 'Interfejs Użytkownika' w dokumentacji (alec)

version 1.3.2 Kinsey (2004-04-03):

  - przeniesienie warning&messages z contrib do głównej gałęzi
    dodanie lms-updatewarnings (maniac/alec/chilek)
  - poprawione błędy w module 'hostfile' demona, dodane zmienne
    %domain - zamieniana na nazwę domeny i %net - na nazwę sieci (alec)
  - w zmiennej 'networks' dla modułów hostfile i oident nie podajemy adresów,
    ale listę nazw sieci (alec)
  - multilanguage? jednak nie (lexx)
  - rozpoczęto prace nad systemem RT (lukasz)
  - sporo poprawek kosmetycznych kodu (lukasz)
  - nareszcie zrobiona obsługa błędów SQL (lukasz/alec)
  - poprawiony bug występujący na postgresie podczas dodawania usera z pustym
    numerem gadu-gadu (alec)
  - poprawione sortowanie listy komputerów wg nazwy właściciela (alec)
  - dodany interfejs do definiowania filtrów dla wydruków list komputerów
    i użytkowników (alec)
  - dodane drukowanie bilansu użytkownika za dany okres (alec)
  - od teraz, użytkownikom można przypisywać taryfy na dany okres czasu
    (lukasz)
  - pola szybkiego dostępu akceptują teraz takie rzeczy jak nazwa, id, adres
    ip/mac, adres użytkownika, adres email, telefon (lukasz)
  - małe przyspieszenie funkcji UserStats() (alec)
  - przebudowa struktury bazy danych: dodane wartości domyślne pól, klucze
    unikalne i ograniczenia NOT NULL (lukasz/alec)
  - poprawione obliczanie średniego dochodu miesięcznego dla taryf (alec)
  - dodane obliczanie ilości aktywnych przypisań taryfy (alec)
  - poprawione sortowanie list użytkowników wg salda (alec)
  - poprawione genfake.php: dodane zerowanie auto_increment'ów oraz
    poprawki związane z ostatnimi zmianami w bazie (alec)
  - dodano sprawdzenie, czy zaznaczono typ operacji podczas dodawania nowej
    operacji - BTS#0000122 (alec)
  - poprawione błędy w modułach hostfile i oident demona powodujące
    niewykonywanie instancji wyst. po tych modułach (alec)
  - na liście użytkowników w kolumnie Abonament jest średnie obciążenie
    miesięczne użytkownika (alec)
  - listę użytkowników oraz wydruki można filtrować wg sieci (alec)
  - w mailingu dodana możliwość wybrania sieci  (alec)
  - dodany wydruk użytkowników bez przypisanych komputerów (alec)
  - dodane wydruki bilansu finansowego z możliwością ograniczenia do podanego
    okresu oraz konkretnego administratora (alec)
  - dodany contrib/sqlpanel (alec)
  - BTS#0000131: poprawki w 'Rejestrze sprzedaży' (alec)
  - SQLite Support (alec)
  - poprawki w lms-notify zapobiegające błędom na postgresie (alec)
  - lms-sendinvoices: wysyłanie faktur (lukasz)
  - w automatycznych fakturach można zdefiniować rodzaj płatności
    i termin zapłaty: lms-payments i almsd (alec)

version 1.3.1 Maybourne (2004-03-04):

  - poprawiony błąd w GetInvoiceContents() powodujący błędne wyświetlanie
    liczby groszy słownie na fakturze - BTS#0000112 (alec)
  - poprawione obliczanie kwot na fakturach dla kilku jednostek, błąd
    powodował także zapisywanie niepoprawnych danych do tabeli 'cash'
    podczas dodawania nowej faktury - BTS#0000114 (alec)
  - multilanguage? może tak (RFD) (lexx)
  - w almsd, do modułu hostfile dodano nowe opcje konfiguracyjne 'networks'
    oraz 'skip_dev_ips' (alec)
  - poprawione błędy w wyrażeniu regularnym w adminadd i adminedit (alec)
  - poprawka do upgrade'u: taryfy mają okres miesięczny, a nie tygodniowy,
    poprawki składni sql w UPGRADE.pgsql oraz komentarze w UPGRADE.mysql (alec)
  - dodane local_ips i local_dests do lms-traffic-htbiptlimits (lukasz)
  - koniec z wyszukiwaniem koniecznych upgradów bazy danych w ChangeLogu -
    od teraz LMS sam będzie poprawiał bazę danych. Powiedzmy prawie koniec -
    oto ostatnie konieczne do wykonania zmiany w bazie:
    MySQL:
        CREATE TABLE dbinfo (
	    keytype VARCHAR(255) NOT NULL default '',
	    keyvalue VARCHAR(255) NOT NULL default '',
	    PRIMARY KEY  (keytype),
	    UNIQUE KEY keytype (keytype),KEY keytype_2 (keytype)
	) TYPE=MyISAM;
	INSERT INTO dbinfo (keytype, keyvalue) VALUES ('dbversion','2004030400');
    PostgreSQL:
	CREATE TABLE dbinfo (
	    keytype VARCHAR(255) DEFAULT '' NOT NULL,
	    keyvalue VARCHAR(255) DEFAULT '' NOT NULL,
	    PRIMARY KEY (keytype)
	);
	INSERT INTO dbinfo (keytype, keyvalue) VALUES ('dbversion','2004030400');
  - dodany 'Raport sprzedaży' czyli wydruk listy faktur za dany okres (alec)

version 1.3.0 Apophis (2004-02-18):

  - Smarty libs version change 2.5.0 -> 2.6.0 (alec)
  - added contrib/warn&msg (Rafał Ramocki/Tomasz Chiliński)
  - another database fix results from BTS#103 (alec)
    MySQL:
	ALTER TABLE `users` CHANGE `gguin` `gguin` INT(11) DEFAULT '0';
    PostgreSQL:
	UPDATE users SET gguin=0 WHERE gguin IS NULL;
	ALTER TABLE users UPDATE gguin SET DEFAULT 0;
	ALTER TABLE users UPDATE gguin SET NOT NULL;
  - in genfake.php added example payments generation (alec)
  - tariff and payments quarterly accounting, small systematization in
    period column (accounting: 0-weekly, 1-monthly, 2-quarterly,
    3-yearly) (alec)
	UPDATE assignments SET period = 4 WHERE period = 1;
	UPDATE assignments SET period = 1 WHERE period = 0;
	UPDATE assignments SET period = 0 WHERE period = 4;
	UPDATE assignments SET period = 3 WHERE period = 2;
	UPDATE payments SET period = 4 WHERE period = 1;
	UPDATE payments SET period = 1 WHERE period = 0;
	UPDATE payments SET period = 0 WHERE period = 4;
	UPDATE payments SET period = 3 WHERE period = 2;
  - default networklist sorting by name (alec)
  - list of devices for connection is sorted by name (alec)
  - fixed navigation on invoicelist - BTS#0000104 (alec)
  - changes in daemon reload method: from 'timestamps' table readed is
    time and compared with time from previous reload, '_force' record
    isn't deleted, so there are no problems with many daemons (lexx/alec)
  - ethercodes.txt up-to-date (alec)
  - BTS#0000109: fixes of bugs on BSD systems in loadavg() and hostname()
    from Sysinfo.class.php (sfor/alec)
  - now some MGC section can have 'instances' that he calls other subsections
    - for example - if we have 5 sections related to the dns (dns1... dns5) -
    we can build sth like that:

    [mgc:dns]
    instances = dns1 dns2 dns3 dns4 dns5

    and now we do run of lms-mgc like that:   lms-mgc -i dns
    not like:    lms-mgc -i "dns1 dns2 dns3 dns4 dns5"

    If section have 'instances' variable, that variable will be respected,
    and others settings in this section ignored (lukasz)
  - now you can set time of the finance operations (alec)
  - fixed e-mails formatting, removed empty lines (lexx)

version 1.1.8 Cronos (2004-02-01):

  - netdevmap uses PNG images (some systems don't support GIF format) (Lexx)
  - fixed records accounting on empty lists, BTS#90 (alec)
  - added userlist sorting by sum of tariffs (alec)
  - fixed nodelist sorting by owner (alec)
  - added netdevlist sorting by number of taken ports (alec)
  - added checkbox 'print form again' in nodeadd (alec)
  - fixed errornous status setting during adding of nodes (alec)
  - documentation cleanup - pictures & commit logs removed,
    so don't be suprise tarball is smaller than 1.1.7 (alec)
  - added number checking in quick node and user seeking input box (alec)
  - lms-notify-sms for sms sending. Required gnokii package (hunter)
  - added 'mailing access' right (alec)
  - added IP and MAC address attribute for net devices (lexx/alec)
  - in genfake.php fixed cleanup of database and added net devices and netlinks
    data generation (alec)
  - BTS#0000092 fix in GetMACs() (alec)
  - added deadline and payment type in invoices
    (lukasz):
    MySQL:
    	ALTER TABLE `invoices` ADD `paytype` VARCHAR(255) DEFAULT '' NOT NULL AFTER `paytime`;
    PostgreSQL:
	ALTER TABLE invoices ADD paytype VARCHAR(255);
	UPDATE invoices SET paytype='';
	ALTER TABLE invoices ALTER COLUMN paytype ADD NOT NULL;
	ALTER TABLE invoices ALTER COLUMN paytype SET DEFAULT '';
  - 'permanent payments' (alec)
    MySQL:
    CREATE TABLE payments (
	id INT(11) NOT NULL auto_increment,
	name VARCHAR(255) NOT NULL default '',
	value DECIMAL(9,2) NOT NULL default '0',
	creditor VARCHAR(255) NOT NULL default '',
	period INT(11) NOT NULL default '0',
	at INT(11) NOT NULL default '0',
	description text,
	PRIMARY KEY  (id),
	UNIQUE KEY id (id),
	KEY id_2 (id)
    ) TYPE=MyISAM;
    PostgreSQL:
    CREATE SEQUENCE "payments_id_seq";
    CREATE TABLE payments (
	id integer DEFAULT nextval('payments_id_seq'::text) NOT NULL,
	name VARCHAR(255) DEFAULT '' NOT NULL,
	value NUMERIC(9,2) DEFAULT 0 NOT NULL,
	creditor VARCHAR(255) DEFAULT '' NOT NULL,
	period integer DEFAULT 0 NOT NULL,
	at integer DEFAULT 0 NOT NULL,
	description text,
	PRIMARY KEY (id)
    );
  - fixed data werification in tariffs: tariff value can be negative,
    tax value can not (alec)
  - on users list, exclamation mark instead of light bulb sign if user
    has no nodes (alec)
  - fixed network address translation in lms-makeiptables and
    lms-makeipchains resulting from address data type change (alec)
  - in perl-script's option 'networks' networks names can be lower case
    - important for PostgreSQL database, where queries are case-sensitive (alec)
  - new 'mailing' interface, added e-mail checking and not taking deleted
    users into account (alec)
  - in window 'LMS Information' added DBMS version (alec)
  - database cosmetics consistent with BTS#000103, or else bug fixes
    while backup restoring on later versions of postgres (alec)
    MySQL:
	ALTER TABLE `admins` CHANGE `lastlogindate` `lastlogindate` INT(11) DEFAULT '0';
	ALTER TABLE `admins` CHANGE `failedlogindate` `failedlogindate` INT(11) DEFAULT '0';
    PostgreSQL:
	UPDATE admins SET lastlogindate=0 WHERE lastlogindate IS NULL;
	UPDATE admins SET failedlogindate=0 WHERE failedlogindate IS NULL;
	ALTER TABLE admins UPDATE lastlogindate SET DEFAULT 0;
	ALTER TABLE admins UPDATE lastlogindate SET NOT NULL;
	ALTER TABLE admins UPDATE failedlogindate SET DEFAULT 0;
	ALTER TABLE admins UPDATE failedlogindate SET NOT NULL;

version 1.1.7 Hathor (2003-12-14):

  - networks address now are type of bigint, for conversions are used
    INET_NTOA() and INET_ATON() functions, so required higher versions of
    database (Mysql 3.23.xx, PostgreSQL 7.3.x) (alec):
    MySQL:
	UPDATE networks SET address=INET_ATON(address);
        ALTER TABLE networks CHANGE address address INT(16) UNSIGNED NOT NULL;
    PostgreSQL:
        CREATE OR REPLACE FUNCTION inet_ntoa(bigint) RETURNS text AS '
        SELECT
    	    ($1/(256*256*256))::text
    	    ||''.''||
	    ($1/(256*256) - $1/(256*256*256)*256)::text
    	    ||''.''||
    	    ($1/256 - $1/(256*256)*256)::text
    	    ||''.''||
    	    ($1 - $1/256*256)::text;
	' LANGUAGE SQL;
	CREATE OR REPLACE FUNCTION inet_aton(text) RETURNS bigint AS '
	SELECT
    	    split_part($1,''.'',1)::int8*(256*256*256)+
    	    split_part($1,''.'',2)::int8*(256*256)+
    	    split_part($1,''.'',3)::int8*256+
    	    split_part($1,''.'',4)::int8;
	' LANGUAGE SQL;
	ALTER TABLE networks ADD ipaddr bigint;
        UPDATE networks SET ipaddr = inet_aton(address);
        ALTER TABLE networks DROP COLUMN address;
        ALTER TABLE networks RENAME COLUMN ipaddr to address;
        ALTER TABLE networks ALTER COLUMN address set NOT NULL;

  - IP address conversion int<->char taken to database, not PHP (alec)
  - fixed contrib/customer for new construction LMS() and 'initLMS.php'
    in contrib - example file explains LMS's class initialization (lukasz)
  - fixed bug in lms-payments, while invoices generation, when pesel field
    was empty (MaReK/lukasz)
  - added ownerid sorting on nodes list (alec)
  - taken to database polish special characters capitalization (alec)
  - change of monetary columns data type (hunter/alec/lukasz)
    MySQL:
	ALTER TABLE cash MODIFY value DECIMAL(9,2);
	ALTER TABLE tariffs MODIFY value DECIMAL(9,2);
	ALTER TABLE invoicecontents MODIFY value DECIMAL(9,2);
	ALTER TABLE invoicecontents MODIFY taxvalue DECIMAL(9,2);
	ALTER TABLE invoicecontents MODIFY count DECIMAL(9,2);
	ALTER TABLE tariffs MODIFY taxvalue DECIMAL(9,2);
    PostgreSQL:
	ALTER TABLE cash ADD val numeric(9,2);
	UPDATE cash SET val=value;
	ALTER TABLE cash ALTER val SET NOT NULL;
	ALTER TABLE cash ALTER val SET DEFAULT 0;
	ALTER TABLE cash DROP COLUMN value;
	ALTER TABLE cash RENAME val TO value;
	ALTER TABLE tariffs ADD val numeric(9,2);
	ALTER TABLE tariffs ADD taxv numeric(9,2);
	UPDATE tariffs SET val=value;
	UPDATE tariffs SET taxv=taxvalue;
	ALTER TABLE tariffs ALTER val SET NOT NULL;
	ALTER TABLE tariffs ALTER val SET DEFAULT 0;
	ALTER TABLE tariffs DROP COLUMN value;
	ALTER TABLE tariffs RENAME val TO value;
	ALTER TABLE tariffs ALTER taxv SET NOT NULL;
	ALTER TABLE tariffs ALTER taxv SET DEFAULT 0;
	ALTER TABLE tariffs DROP COLUMN taxvalue;
	ALTER TABLE tariffs RENAME taxv TO taxvalue;
	ALTER TABLE invoicecontents ADD val numeric(9,2);
	ALTER TABLE invoicecontents ADD taxv numeric(9,2);
	ALTER TABLE invoicecontents ADD cnt numeric(9,2);
	UPDATE invoicecontents SET val=value;
	UPDATE invoicecontents SET taxv=taxvalue;
	UPDATE invoicecontents SET cnt=count;
	ALTER TABLE invoicecontents ALTER val SET NOT NULL;
	ALTER TABLE invoicecontents ALTER val SET DEFAULT 0;
	ALTER TABLE invoicecontents ALTER taxv SET NOT NULL;
	ALTER TABLE invoicecontents ALTER taxv SET DEFAULT 0;
	ALTER TABLE invoicecontents ALTER cnt SET NOT NULL;
	ALTER TABLE invoicecontents ALTER cnt SET DEFAULT 0;
	ALTER TABLE invoicecontents DROP COLUMN value;
	ALTER TABLE invoicecontents RENAME val TO value;
	ALTER TABLE invoicecontents DROP COLUMN taxvalue;
	ALTER TABLE invoicecontents RENAME taxv TO taxvalue;
	ALTER TABLE invoicecontents DROP COLUMN count;
	ALTER TABLE invoicecontents RENAME cnt TO count;
  - added possibility to invoicing in PHP-UI (lukasz)
  - standardized reload for almsd and ui, now almsd reloads with standard
    ui settings (reload table isn't needed) (Lexx)

version 1.1.6 Seth (2003-12-08):

  - misprint: http://bts.lms.org.pl/bug_view_page.php?bug_id=0000088
    (chilek/lukasz)
  - fixed upgrade module:
    http://bts.lms.org.pl/bug_view_page.php?bug_id=0000085 (chilek/lukasz)
  - fixed tariff adding (alec)
  - bugfix in lms-makearp
    http://bts.lms.org.pl/bug_view_page.php?bug_id=0000086 (chilek/lukasz)
  - tariff description can be NULL (alec)
    MySQL:
    	ALTER TABLE tariffs CHANGE description description text;
    PostgreSQL:
    	ALTER TABLE tariffs ALTER COLUMN description DROP NOT NULL;

version 1.1.5 Amaonet (2003-12-04):

  - added options for owner and permissions for script files maked
    with lms-traffic-* (lukasz)
  - contrib/customer adapted for new database API
  - added possibility of netdevices and nodes connection/diconnection
    with other netdevice while editing them (alec)
  - correction in function ScanNodes() preventing errors while nbtscan
    programm is missing (alec)
  - node search by address fixed, text searching by part of address added (alec)
  - added deleted nodes stats on stat bars and added option for deleting
    this in database compacting process (alec)
  - added possibility of netdevices exchange (lexx)
  - fixed bugs on private address recognition in scripts and misprint in
    lms-iptables (lukasz/wojboj)
  - lms-notify adjusted for new finances (lukasz)
  - in /daemon directory has become alfa version of programm for config
    generation and services reloading (alec)
  - in index.php new config file parsing function, fully compatible
    with daemon and partly with lms-mgc (alec)
  - in lms.pgsql added SQL functions inet_ntoa() i inet_aton() for
    future applications (alec)
  - fixed errornous users accounting in welcome screen (alec)
  - fixed default values in useradd form (alec)
  - deleting of user on the list not causing userinfo to expose (alec)
  - invoices are done - now are realy pretty and that require database
    change (lukasz):
    MySQL:
	ALTER TABLE `tariffs` ADD `taxvalue` INT DEFAULT '0' NOT NULL AFTER `value`;
	ALTER TABLE `tariffs` ADD `sww` VARCHAR(255) DEFAULT '' AFTER `taxvalue`;
	ALTER TABLE `assignments` ADD `invoice` TINYINT( 1 ) DEFAULT '0' NOT NULL;
	ALTER TABLE `cash` ADD `invoiceid` INT DEFAULT '0' NOT NULL ;
    PostgreSQL:
	ALTER TABLE tariffs ADD taxvalue integer;
	ALTER TABLE tariffs ALTER taxvalue SET DEFAULT 0;
	UPDATE tariffs SET taxvalue=0;
	ALTER TABLE tariffs ALTER taxvalue SET NOT NULL;
	ALTER TABLE tariffs ADD sww varchar(255);
	ALTER TABLE tariffs ALTER sww SET DEFAULT NULL;
	ALTER TABLE assignments ADD invoice smallint;
	ALTER TABLE assignments ALTER invoice SET DEFAULT 0;
	UPDATE assignments SET invoice=0;
	ALTER TABLE assignments ALTER invoice SET NOT NULL;
	ALTER TABLE cash ADD invoiceid;
	ALTER TABLE cash ALTER invoiceid SET DEFAULT 0;
	UPDATE cash SET invoiceid=0;
	ALTER TABLE cash ALTER invoiceid SET NOT NULL;
    MySQL:
	CREATE TABLE invoices (
    	    id INT NOT NULL AUTO_INCREMENT ,
    	    number INT NOT NULL ,
    	    cdate INT NOT NULL ,
    	    paytime TINYINT( 8 ) NOT NULL ,
    	    customerid INT NOT NULL ,
    	    name VARCHAR( 255 ) NOT NULL ,
    	    address VARCHAR( 255 ) NOT NULL ,
    	    nip VARCHAR( 16 )DEFAULT '' ,
    	    zip VARCHAR( 6 ) NOT NULL ,
    	    city VARCHAR( 32 ) NOT NULL ,
    	    phone VARCHAR( 255 ) NOT NULL ,
    	    finished TINYINT( 1 ) NOT NULL DEFAULT '0',
    	    PRIMARY KEY (id),
    	    UNIQUE KEY id (id),
    	    KEY id_2 (id)
	) TYPE=MyISAM;
	CREATE TABLE invoicecontents (
    	    invoiceid INT NOT NULL ,
    	    value DOUBLE NOT NULL ,
    	    taxvalue INT NOT NULL ,
	    sww VARCHAR( 255 ) DEFAULT '',
    	    content VARCHAR( 16 ) NOT NULL ,
    	    count INT NOT NULL ,
	    description VARCHAR( 255 ) NOT NULL ,
	    tariffid INT NOT NULL
	);
    PostgreSQL:
	CREATE SEQUENCE "invoices_id_seq";
	CREATE TABLE invoices (
	    id integer DEFAULT nextval('invoices_id_seq'::text) NOT NULL,
    	    number integer NOT NULL,
    	    cdate integer NOT NULL,
    	    paytime smallint NOT NULL,
    	    customerid integer NOT NULL,
    	    name varchar(255) NOT NULL,
    	    address varchar(255) NOT NULL,
    	    nip varchar(16) DEFAULT NULL,
    	    zip varchar(6) NOT NULL,
    	    city varchar(32) NOT NULL,
    	    phone varchar(255) NOT NULL,
    	    finished smallint DEFAULT 0 NOT NULL,
	    PRIMARY KEY (id)
	);
	CREATE TABLE invoicecontents (
	    invoiceid integer NOT NULL,
	    value float4 NOT NULL,
	    taxvalue integer NOT NULL,
	    sww varchar(255) DEFAULT NULL,
	    content varchar(16) NOT NULL,
	    count integer NOT NULL,
	    description varchar(255) NOT NULL,
	    tariffid integer NOT NULL
	);
  - removed %TID and %TVAL from lms-mgc (lukasz)
  - added PESEL column in user record, database upgrade (lukasz):
    MySQL:
	ALTER TABLE `users` ADD `pesel` VARCHAR(11) DEFAULT '' AFTER `nip`;
	ALTER TABLE `invoices` ADD `pesel` VARCHAR(11) DEFAULT '' AFTER `nip`;
    PostgreSQL:
	ALTER TABLE users ADD pesel varchar(11);
	ALTER TABLE users ALTER pesel SET DEFAULT NULL;
	ALTER TABLE invoices ADD pesel varchar(11);
	ALTER TABLE invoices ALTER pesel SET DEFAULT NULL;

    If user has no NIP, then to invoice goes PESEL.
  - for invoices added place of putting out (lukasz);
  - terminology change: 'sww' to 'pkwiu' (lukasz);
    MySQL:
	ALTER TABLE `tariffs` CHANGE `sww` `pkwiu` VARCHAR( 255 );
	ALTER TABLE `invoicecontents` CHANGE `sww` `pkwiu` VARCHAR( 255 );
    PostgreSQL:
	ALTER TABLE tariffs RENAME sww TO pkwiu;
	ALTER TABLE invoicecontents RENAME sww TO pkwiu;

version 1.1.4 Tanith (2003-10-03):

  - tariff list not accounts deleted users (lukasz)
  - added new field on network list: interface - very usefull with making
    iptables/ipchains/htb scripts when we have networks on different
    interfaces, in lms-mgc named %IFACE, %DIFACE and %NIFACE,
    like allways database format upgrade needed (lukasz):
    MySQL:
        ALTER TABLE networks ADD interface VARCHAR(8) AFTER mask;
    PostgreSQL:
    	ALTER TABLE networks ADD interface VARCHAR(8);
  - removed misprint causing MySQL's driver looses host information from
    lms.ini then allways try to connect with localhost (lukasz)
  - reload.php used obsolete sqlTSfmt() (lexx/lukasz)
  - newly added node have access by default (lukasz)
  - amount of networks on summary was incremented by 2 (lukasz)
  - source code cosmetics (s/this->ADB->/this->DB->/g and others) (lukasz)
  - added traffic-stats module (taken from contrib) and bin/lms-traffic,
    required table 'stats' creation for them: (alec)
    MySQL:
	DROP TABLE IF EXISTS stats;
	CREATE TABLE stats (
	    nodeid int(11) NOT NULL DEFAULT '0',
	    dt int(11) NOT NULL DEFAULT '0',
	    upload int(11) DEFAULT '0',
	    download int(11) DEFAULT '0',
	    PRIMARY KEY (nodeid, dt)
	) TYPE=MyISAM;
    PostgreSQL:
	DROP TABLE stats;
	CREATE TABLE stats (
	    nodeid integer DEFAULT 0 NOT NULL,
	    dt integer DEFAULT 0 NOT NULL,
	    upload integer DEFAULT 0,
	    download integer DEFAULT 0,
	    PRIMARY KEY (nodeid, dt)
	);
  - new documentation (sgml/html/txt) (alec)
  - bugfix allowing mac address with '-' char writing while node edition - now,
    like while adding - changing all '-' for ':' (lukasz)
  - small change of philosophy in tariffs table - 'NULL' is not set limit, '0'
    is a limit lack - why? you learn at eny day ;-) (lukasz):
    MySQL:
	ALTER TABLE tariffs CHANGE uprate uprate INT(11), CHANGE downrate downrate INT(11);
    PostgreSQL:
	ALTER TABLE tariffs ALTER uprate DROP NOT NULL;
	ALTER TABLE tariffs ALTER uprate DROP DEFAULT;
	ALTER TABLE tariffs ALTER downrate DROP NOT NULL;
	ALTER TABLE tariffs ALTER downrate DROP DEFAULT;
  - 'small' rewolution in finances, and 'big' database upgrade, but i think
    you cope with this (lukasz):

    0) COMPLETELY do database backup.

    1) Create table 'assignments':
    MySQL:
    DROP TABLE IF EXISTS assignments;
    CREATE TABLE assignments (
    	id int(11) NOT NULL auto_increment,
	tariffid int(11) NOT NULL default '0',
	userid int(11) NOT NULL default '0',
	period int(11) NOT NULL default '0',
	at int(11) NOT NULL default '0',
	PRIMARY KEY  (id),
	UNIQUE KEY id (id),
	KEY id_2 (id)
    ) TYPE=MyISAM;

    PostgreSQL:
    DROP SEQUENCE "assignments_id_seq";
    CREATE SEQUENCE "assignments_id_seq";
    DROP TABLE assignments;
    CREATE TABLE assignments (
    	id integer default nextval('assignments_id_seq'::text) NOT NULL,
	tariffid integer default 0 NOT NULL,
	userid integer default 0 NOT NULL,
	period integer default 0 NOT NULL,
	at integer default 0 NOT NULL,
	PRIMARY KEY (id)
    );
    2) Run 'upgrade01' module - that means, after login write in url
    at the end '?m=upgrade01', i.e. 'http://serwer.pl/lms/?m=upgrade01'.
    CAUTION! Run that module ONLY one time. If you run them couple of times,
    you destroy your database.

    3) Now cleanup of useless database columns:
    MySQL:
	ALTER TABLE users DROP tariff, DROP payday;
    PostgreSQL:
	ALTER TABLE users DROP tariff; ALTER TABLE users DROP payday;

    4) Write in cron lms-payments for runing everyday at 0:00.

    5) Voila.

  - new script in bin: lms-traffic-logiptables, logs transfers to log
    accepted by alec's lms-traffic, more info in sample/lms.ini (lukasz)
  - code optymalization at many places (lukasz)
  - network devices list, so far stupid and ugly, but working
    of course needed new table (lexx)
    MySQL:
    DROP TABLE IF EXISTS netdevices;
    CREATE TABLE netdevices (
        id int(11) NOT NULL auto_increment,
        name varchar(32) default NULL,
        description varchar(255) default NULL,
        producer varchar(64) default NULL,
        model varchar(32) default NULL,
        serialnumber varchar(32) default NULL,
        ports int(10) default NULL,
        PRIMARY KEY  (id),
        KEY name (name)
    ) TYPE=MyISAM;

    PostgreSQL:
    DROP SEQUENCE "netdevices_id_seq";
    CREATE SEQUENCE "netdevices_id_seq";
    DROP TABLE netdevices;
    CREATE TABLE netdevices (
        id integer default nextval('netdevices_id_seq'::text) NOT NULL,
        name varchar(32) default NULL,
        description varchar(255) default NULL,
        producer varchar(64) default NULL,
        model varchar(32) default NULL,
        serialnumber varchar(32) default NULL,
        ports integer default NULL,
        PRIMARY KEY (id)
    );
  - netdevices - added 'location' column (lexx)
    MySql:
	ALTER TABLE `netdevices` ADD `location` VARCHAR( 255 ) AFTER `name` ;
    PosgreSQL:
	ALTER TABLE netdevices ADD COLUMN location varchar(255);
  - for 'Stats' module added database compacting possibility (alec)
  - fixed http://bts.lms.org.pl/bug_view_page.php?bug_id=0000072 (lukasz)
  - at present arp table records '00:00:00:00:00:00' are not ignored, but
    static records (0x6/PERM) are (lukasz)
  - still netdev, now we break down the links (Lexx)
    MySql:
	CREATE TABLE netlinks (
	  id int(11) NOT NULL auto_increment,
	  src int(11) NOT NULL default '0',
	  dst int(11) NOT NULL default '0',
	  PRIMARY KEY  (id)
	) TYPE=MyISAM;
    PosgreSQL"
	CREATE SEQUENCE "netlinks_id_seq";
	CREATE TABLE netlinks (
	  id integer default nextval('netlinks_id_seq'::text) NOT NULL,
	  src integer default 0 NOT NULL,
	  dst integer default 0 NOT NULL,
	  PRIMARY KEY  (id)
	);
  - nodes can be linked to netdevices (Lexx)
    MySql:
	ALTER TABLE `nodes` ADD `netdev` INT(11) NOT NULL default '0' AFTER `modid` ;
    PosgreSQL:
	ALTER TABLE nodes ADD netdev integer;
	ALTER TABLE nodes ALTER COLUMN netdev SET default 0;
	UPDATE nodes SET netdev = 0;
	ALTER TABLE nodes ALTER COLUMN netdev SET NOT NULL;
  - update 'nodesearch' module (alec)
  - bugfixes in GetTariff() on postgres (alec)
  - errors are now popups (lukasz)
  - new script - bin/lms-traffic-htbiptlimits - for traffic limiting (lukasz)
  - new files doc/UPGRADE.mysql, doc/UPGRADE.pgsql for database upgrade
    since 1.0 to 1.1 version (alec)
  - lms-payments not writing to table 'cash' if load value is zero (lukasz)
  - changes in docs (lukasz):
    - removed INSTALL.*
    - new README and README.html - user manual
    - cleanup
  - fixed (I hope so) error handling - now we have tooltips (lukasz)

version 1.1.3 (2003-08-29):

  - changed users philosophy - now user deletion not delete them really,
    but only hidding and is possible get them by his ID, hi can by searched,
    but adding nodes is not possible, on userlist hi is invisible, however
    in his userinfo is note that hi is deleted. Of course database
    modification needed: (lukasz)
    MySQL:
	ALTER TABLE users ADD deleted BOOL DEFAULT '0' NOT NULL;
    PostgreSQL:
	ALTER TABLE users ADD deleted int2;
	UPDATE users SET deleted=0;
	ALTER TABLE users ALTER COLUMN deleted SET DEFAULT 0;
	ALTER TABLE users ALTER COLUMN deleted SET NOT NULL;
    (if you do this on ENUM
    MySQL:
 	ALTER TABLE users CHANGE deleted deleted CHAR(1) DEFAULT 'N' NOT NULL;
	UPDATE users SET deleted=1 WHERE deleted='Y';
	UPDATE users SET deleted=0 WHERE deleted='N';
	ALTER TABLE users CHANGE deleted deleted BOOL DEFAULT '0' NOT NULL;
    PostgreSQL: the same method like with 'access' column in table 'nodes')
  - IP address format change, database upgrade: (lukasz):
    MySQL:
        UPDATE nodes SET ipaddr=INET_ATON(ipaddr);
	ALTER TABLE nodes CHANGE ipaddr ipaddr INT(16) UNSIGNED NOT NULL;
    PostgreSQL:
	UPDATE nodes SET ipaddr=(split_part(ipaddr,'.',1)::int4*(256^3)+
				split_part(ipaddr,'.',2)::int4*(256^2)+
				split_part(ipaddr,'.',3)::int4*256+
				split_part(ipaddr,'.',4)::int4);
	ALTER TABLE nodes ADD ipaddr2 BIGINT;
	UPDATE nodes SET ipaddr2 = ipaddr::text::int8;
	ALTER TABLE nodes DROP COLUMN ipaddr;
	ALTER TABLE nodes RENAME COLUMN ipaddr2 to ipaddr;
	ALTER TABLE nodes ALTER COLUMN ipaddr set NOT NULL;

  - change of recording method of nodes access - now is not a stupid char, but
    boolean (that means MySQL try to imitate boolean on tinyint), and
    another upgrade (lukasz):
	UPDATE nodes SET access='1' WHERE access='Y';
	UPDATE nodes SET access='0' WHERE access='N';
	ALTER TABLE nodes CHANGE access access BOOL NOT NULL DEFAULT '1';
    and in PostgreSQL columns are type of int2:
	UPDATE nodes SET access= CASE access WHEN 'Y' THEN '1' ELSE '0' END;
	ALTER TABLE nodes ADD access2 int2;
	UPDATE nodes SET access2 = access::text::int2;
	ALTER TABLE nodes DROP COLUMN access;
	ALTER TABLE nodes RENAME COLUMN access2 TO access;
	ALTER TABLE nodes ALTER COLUMN access SET NOT NULL;
	ALTER TABLE nodes ALTER COLUMN access SET DEFAULT 0;
    additional database improving operations (zalecane):
    MySQL:
	ALTER TABLE nodes CHANGE ownerid ownerid INT(11) DEFAULT '0' NOT NULL;
	ALTER TABLE nodes CHANGE mac mac VARCHAR(20) NOT NULL;
    PostgreSQL:
	ALTER TABLE nodes ALTER COLUMN ownerid SET DEFAULT '0';
	ALTER TABLE nodes ALTER COLUMN mac SET NOT NULL;

  - source optimized for big networks printing (lukasz)
  - transactions while database backup restoring again enabled (lukasz)

version 1.1.2 (2003-08-24):

  - new substitution (%date_month_name) in mail templates, resolves into
    current month name, based on locales.
  - added possibility of custom invoicing (Lexx)
  - additional option %date_month_name in mailingu templates, solved for
    actual month name (acc. LC_NUMERIC? hunter)
  - some changes in docs concerning postgres, lms.pgsql upgrade (alec)
  - humanization of empty admins table detection - now, when that table is
    empty LMS allows adminadd module access (lukasz)
  - in lms-mgc network address and broadcast are ignored while rules
    generation (lukasz)
  - while MAC's selection entries '00:00:00:00:00:00' and 'FF:FF:FF:FF:FF:FF'
    are ignored (lukasz)
  - new toy in /contrib - bandlogger+htblimiter - supporting HTB and
    iptables (lukasz)
  - is done - ADOdb is not required - LMS have own libs for mysql and
    postgres databases (lukasz)
  - changed all '<?' (short PHP tags) to '<?php' - that should be at the
    beginning, but who go to fall into that? (lukasz)

version 1.1.1 (2003-08-09):

  - new possibility of indebted users printing (MichalZ)
  - added %TID (tariff id) and %TVAL (tariff value) in lms-mgc (lukasz)
  - removed problems with sorting change on indebted or disconnected
    users (lukasz)
  - Opera browser bugfix (change exit(0) to die) (lukasz)
  - added possibility of payments day setting, needed SQL change:
    MySQL:
	ALTER TABLE `users` ADD `payday` INT DEFAULT '5' NOT NULL;
    PostgreSQL:
	ALTER TABLE users ADD payday integer;
	ALTER TABLE users ALTER COLUMN payday SET DEFAULT 0;
	ALTER TABLE users ALTER COLUMN payday SET NOT NULL;
    where in place of '5', can be write default payments day (lukasz)
  - related to upper, not exist lms-eachmonth, now is lms-payments,
    which must be run everyday with cron! (lukasz)
  - source cleanup (lukasz)

version 1.1.0 (2003-06-23):

  - secondary nameserver support (%DNS2 in lms-mgc); database modification needed:
    MySQL:
	ALTER TABLE `networks` ADD `dns2` VARCHAR( 16 ) AFTER `dns`;
    PostgreSQL:
	ALTER TABLE networks ADD dns2 VARCHAR(16);
  - if the lms.ini file exists in the same directory as index.php, LMS will use it instead of /etc/lms/lms.ini;
  - default values for address, city and postal code can now be set for adding users;
  - new file: ChangeLog.en (warden)
  - not used table 'options' removed and lms.mysql refreshed (lukasz)

version 1.0.0 (2003-05-18):

  - icons have been changed (Yeah, they are awful, but nobody has done any better)
  - some documentation. Not much but better than nothing. Any volunteers to write? :-)
  - uff...

version 1.0.0rc1 (2003-05-17):

  - docs incoming (Lexx)
  - some cleaning in LMS.class.php (lukasz)
  - contrib/customers - simple layout for curious lusers. As an effect, the awful (?! -> warden)
    button on the front page of LMS has disappeared. (lukasz)
  - different access levels (basic) (lukasz)
  - lms-notify corrected (lukasz)
  - add 'useful links' to the greeting page (lukasz)
  - printing layouts corrected: lists by the actual filter and without it (warden)
  - added 'scan' option when adding a new node - searches for hosts with nbtscan (kennyGRV/lukasz)
  - added NIC manufacturer info in nodeinfo box (lukasz)
  - showing miscalculated last financial operations bug - fixed (lukasz)
  - some icons have been changed (lukasz)
  - back redirects fixed (lukasz)
  - bogon browsers supports (some browsers do referrer rigging when logging out) (lukasz)
  - host information added on the top of the login page (warden & lukasz)
  - lms-scripts back in bin/ (lexx & lukasz)
  - lms-notify finally works.
  - mail template changed (byko/lukasz)
  - email schema checking fixed (repcio/lukasz)
  - a lot of cleaning :-)

version 1.0pre10 (2003-04-15):

  - poprawki zgodności ze Smarty-2.5.0 (niestety, automatycznie 2.5.0 jest
    wymagane przez LMS'a)
  - usunięte zbędne title w liście userów
  - poprawione wyświetlanie nazwiska usera w popupie od usuwania usera
  - na stronie powitalnej trochę statystyk
  - usunięty dosyć poważny błąd w lib/Session.class.php
  - jak zwykle kosmetyka (literówki i tym podobne)
  - logosy by Pierzak

version 1.0pre9 'CVS-Has-Been-Crashed-Edition' (2003-04-13):

  - wymaga Smarty-2.4.2
  - tooltips
  - force ssl
  - przy dodawaniu usera domyślna taryfa to nie ta najdroższa, a ta
    najczęściej używana
  - nazwa sieci może już zawierać kropkę
  - nazwa komputera może zawierać _ (podkreślenie)
  - sporo kosmetyki (popupy i opisy pól formularzy)
  - logosy by Pierzak

version 1.0pre8 (2003-03-30):

  - poprawiony bug z edycją użytkownika i traceniem zawartości pola z
    komentarzem
  - przeniesiony formularz dodawania sieci do oddzielnej strony
  - poprawione kilka innych bugów

version 1.0pre7 (2003-03-24):

  - poprawiony poważny bug w lms-mgc powodujący traktowanie jako
    prywatnej sieci tylko 192.168.1.0/24 a nie 192.168.0.0/16
  - zrobiona lista użytkowników odłączonych i zadłużonych
  - poprawione dodawanie userów (nie dodawali się lub imię nie zostawało
    zapisywane (BTS: 0000019)
  - w przypadku odrzucenia danych do dodania użytkownika gubiło się miasto w
    fromularzu
  - poprawione templejty tak by LMS był zgodny ze Smarty'm 2.4.2

version 1.0pre6 (2003-03-17):

  - możliwość edycji imienia i nazwiska użytkownika
  - sporo kosmetyki, poprawek w sortowaniu i nie tylko
  - SetBalanceZERO w LMS.class.php zeruje saldo
  - %abonament zmienia się w kwotę abo zapisaną w tariffs.value
  - usunięte polskie locales, sprawiało to więcej problemów
    niż pożytku
  - mały update dokumentacji
  - dodany katalog contrib z różnymi dodatkami do LMS
  - dodano lms.spec do contrib/ zgodnego ze specyfikacją PLD
  - łatka usprawniająca odpalenie LMS w PLD
  - support do pustych haseł
  - zrobiony usersearch, nodesearch i parę innych rzeczy ;)
  - sprawdzenie stanu konta przez usera
  - częściowo wydruki
  - dodane ładne cacuśne i słodkie README
  - poprawiony pagelimiter w liście użytkowników
  - opcja włączająca sharing mac-addr
  - automagiczna instalacja domyślnego admina z poziomu pliku lms.mysql
  - pole "Imię" może być puste

version 1.0pre5 (2003-01-26):

  - PLIKI KONFIGURACYJNE PRZENIESIONE DO KATALOGU /etc/lms/ !!!
  - podział listy użytkowników na strony
  - poprawiony bug przy dodawaniu nowego usera
  - Pamiętanie ostatniej wybranej podsieci i ostatniego wpisanego
    komentarza do wpłat
  - przykładowe configi przeniesione do sample
  - utworzony katalog ze skryptami perlowymi - bin - znadjdują się
    tam niektóre skrypty z modułu lms-scripts
  - oddzielny formularz do dodawania nowych operacji finansowych
  - informacje o taryfie i możliwość jej edycji wreszcie.
  - poprawione parsowanie wprowadzanych danych w niektórych miejscach
    poprzez użycie regexpów (dzięki mteg za podsunięcie pomysłu)
  - dodano nowe pola w tablicy z użytkownikami, aby je wykorzystać i
    bezproblemowo móc ich używać należy wykonać następujące komendy z
    poziomu klienta mysql:

    ALTER TABLE `users` ADD `gguin` INT AFTER `phone3`;
    ALTER TABLE `users` ADD `zip` VARCHAR(6) AFTER `address` ,
    ADD `city` VARCHAR(32) AFTER `zip`, ADD `nip` varchar(16) AFTER `city`;
  - dodano opcję do lms-notify:
      -D, --template-file=/etc/lms/another.template.txt
    uruchamia ona alternatywny plik template, przydatne przy wysyłaniu
    upomnienia, etc.
  - Teraz %b we wzorcu wiadomości rozwija się do - (saldo) (czyli jest to
    kwota do zapłaty, księgowi nie znają liczb ujemnych :)
    %date-y %date-m %desc rozwijają się odpowiednio do: aktualnego roku,
    nazwy miesiąca (set LANG=pl ?) i opisu pakietu z tariffs.
    %last_10_in_a_table zmienia się w maksymalnie 10 ostatnich operacji na
    koncie.

version 1.0pre4 (2003-01-21):

  - pełne przeportowanie obsługi SQL'a na ADODB
  - support do MySQL i PostgreSQL
  - pola uprate i downrate w taryfach. upgrade:

    ALTER TABLE tariffs ADD uprate INT DEFAULT '0' NOT NULL AFTER
    value , ADD downrate INT DEFAULT '0' NOT NULL AFTER uprate;

  - poprawka kolumny table na tablename w timestamps. upgrade:

    ALTER TABLE `timestamps` CHANGE `table` `tablename` VARCHAR( 255 )
    NOT NULL

  - lista użytkowników: dodana kwota abonamentu miesięcznego poniżej
    aktualnego salda użytkownika (Goblin)
  - lista użytkowników: użytkownik którego komputery są odłączone
    jest pokazywany na szaro
  - wyszukiwanie użytkowników;
  - oddzielny formularz dodawania użytkowników;
  - wyszukiwanie użytkowników;
  - możliwość zdefiniowania sposobu reloadu (albo via sql, albo exec
    jakiejś komendy);
  - poprawki w dodawaniu taryf;

version 1.0pre3 (2002-12-27):

  - poprawione pobieranie hostname i uptime (Marcoos)
  - zmiana typu kolumny value w tabeli cash z float na double
  - zmiana typu kolumny value w tabeli tariffs z float na double
  - dodane blokowanie dostępu do aplikacji poza określonymi hostami
    lub klasami adresowymi
  - poprawka parsowania ścieżek do katalogów z configa

version 1.0pre2 (2002-12-25):

  - parsowanie configa nie zapisuje odrazu zmiennych odczytanych
    z ini jako globalnych, a do tablicy $_CONFIG (nie można napisać
    niczego poprzez plik ini)
  - dodane sprawdzanie czy istnieją katalogi backups i templates_c
    oraz czy można do nich zapisywać
  - naprawiony moduł od dodawania taryf
  - posprzątane w niektórych plikach
  - poprawiony plik doc/lms.mysql i doc/INSTALL

version 1.0pre1 (2002-12-24):

  - przepisane obiektowo
  - napisane z wykorzystaniem engine'u template'owego Smarty
  - dodana opcja mailingu
  - bardzo fajne sortowanie (tm) :-)
  - wprowadzone cacheowanie wyników (nawala, ale coś tam działa)

version 0.4:

  - napisana od nowa, całkowicie z wykorzystaniem sesji, oraz
    paru ułatwień jeżeli chodzi o SQL'a
  - dodana możliwość definicji podsieci, nie ma już
    konieczności dłubania w źródłach aby zmienić ustawienia
    podsieci
  - serwer jest konfigurowany poprzez demona w perlu, słuchającego
    na sockecie TCP/IP
  - rozbudowane sortowanie
  - dane administratorów są trzymane w bazie danych i nie trzeba
    ręcznie ustawiać haseł w pliku .htpasswd

version 0.3:

  - obsługa finansów i rozliczeń użytkowników

version 0.2:

  - obsługa komputerów, generowanie plików od maskarady na iptables i od
    DHCP
  - pomoc w wyszukiwaniu mac-adresów poprzez listowanie widocznych adresów w
    trakcie dodawania

version 0.1:

  - autoryzacja oparta o .htpasswd w serwerze www
  - prosta baza użytkowników zawierająca dane osobowe oraz status
    użytkowników
